parted、fdisk、df、、fsck、mkfs、mke2fs
還有LVM的一套命令,比如pvcreate、vgcreate、lvcreate等等
B. Linux磁碟管理的Linux管理命令
磁碟空間管理
系統軟體和應用軟體,都要以文件的形式存儲在計算機的磁碟空間中。因此,應該隨時監視磁碟空間的使用情況。Linux系統提供了一組有關磁碟空間管理的命令。
df命令
功能:檢查文件系統的磁碟空間佔用情況。可以利用該命令來獲取硬碟被佔用了多少空間,目前還剩下多少空間等信息。
語法:df [選項]
說明:df命令可顯示所有文件系統對i節點和磁碟塊的使用情況。
該命令各個選項的含義如下:
-a 顯示所有文件系統的磁碟使用情況,包括0塊(block)的文件系統,如/proc文件系統。
-k 以k位元組為單位顯示。
-i 顯示i節點信息,而不是磁碟塊。
-t 顯示各指定類型的文件系統的磁碟空間使用情況。
-x 列出不是某一指定類型文件系統的磁碟空間使用情況(與t選項相反)。
-T 顯示文件系統類型。
例1:列出各文件系統的磁碟空間使用情況。
$ df
Filesystem 1 K-blocks Used Available Use% Mounted on
/dev/hda2 1361587 1246406 44823 97% /
df命令的輸出清單的第1列是代表文件系統對應的設備文件的路徑名(一般是硬碟上的分區);第2列給出分區包含的數據塊(1024位元組)的數目;第3,4列分別表示已用的和可用的數據塊數目。用戶也許會感到奇怪的是,第3,4列塊數之和不等於第2列中的塊數。這是因為預設的每個分區都留了少量空間供系統管理員使用。即使遇到普通用戶空間已滿的情況,管理員仍能登錄和留有解決問題所需的工作空間。清單中Use% 列表示普通用戶空間使用的百分比,即使這一數字達到100%,分區仍然留有系統管理員使用的空間。最後,Mounted on列表示文件系統的安裝點。
例2:列出各文件系統的i節點使用情況。
$ df -ia
Filesystem Inodes IUsed IFree Iused% Mounted on
/dev/ hda2 352256 75043 277213 21% /
none 0 0 0 0% /proc localhost:(pid221) 0 0 0 0% /net
例3:列出文件系統的類型。
$ df -T
Filesystem Type 1K-blocks Used Available use% Mounted on
/dev/hda2 ext2 1361587 1246405 44824 97% /
本例中的文件系統是ext2類型的。
命令
的英文原義為「disk usage」,含義為顯示磁碟空間的使用情況。
功能:統計目錄(或文件)所佔磁碟空間的大小。
語法: [選項] [Names…]
說明:該命令逐級進入指定目錄的每一個子目錄並顯示該目錄佔用文件系統數據塊(1024位元組)的情況。若沒有給出Names,則對當前目錄進行統計。
該命令的各個選項含義如下:
-s 對每個Names參數只給出佔用的數據塊總數。
-a 遞歸地顯示指定目錄中各文件及子孫目錄中各文件佔用的數據塊數。若既不指定-s,也不指定-a,則只顯示Names中的每一個目錄及其中的各子目錄所佔的磁碟塊數。
-b 以位元組為單位列出磁碟空間使用情況(系統預設以k位元組為單位)。
-k 以1024位元組為單位列出磁碟空間使用情況。
-c 最後再加上一個總計(系統預設設置)。
-l 計算所有的文件大小,對硬鏈接文件,則計算多次。
-x 跳過在不同文件系統上的目錄不予統計。
下面舉例說明命令的使用:
例1:查看/mnt目錄佔用磁碟空間的情況。
$ cd /mnt $ ls -lFR total 10 -rwxrwxrwx 2 root root ll0 Ju1 3l 00:33 aa*
drwxr-xr-x 2 root root l024 Ju1 20 14:16 dev/
-rw-r--r-- 1 root root 6229 Aug 2 0l:39 s1ack
drwxrwxrwx 2 root root 1024 Aug 2 02:09 var/
1rwxrwxrwx 1 root root l0 Aug 2 0l:51 wei->/home/wei/
dev:
tota1 0
lrwxrwxrwx 1 root root 8 Ju1 20 l4:l6 cdrom->/dev/hdb
var:
tata1 37
-r-xr-xr-x l root root 36064 Aug 2 02:09 rawrite. exe*
例2:列出各目錄所佔的磁碟空間,但不詳細列出每個文件所佔的空間。
$
l . /dev
38 . /var
48 .
輸出清單中的第一列是以塊為單位計的磁碟空間容量,第二列列出目錄中使用這些空間的目錄名稱。 注意不帶選項的命令將從當前目錄開始沿著目錄結構向下工作直到列出所有目錄的容量為止。這可能是一個很長的清單,有時只需要一個總數。這時可在命令中加-s選項來取得總數:
$ –s /mnt
/mnt
例3:列出所有文件和目錄所佔的空間(使用a選項),而且以位元組為單位(使用b選項)來計算大小。
$ -ab
8 ./dev/cdrom
l032 ./dev
36064 ./var/rawrite. exe
37088 ./var
6229 ./s1ack
1l0 ./aa
l0 ./wei
45493 .
磁 盤 操 作
dd命令
功能:把指定的輸入文件拷貝到指定的輸出文件中,並且在拷貝過程中可以進行格式轉換。可以用該命令實現DOS下的disk命令的作用。先用dd命令把軟盤上的數據寫成硬碟的一個寄存文件,再把這個寄存文件寫入第二張軟盤上,完成disk的功能。需要注意的是,應該將硬碟上的寄存文件用rm命令刪除掉。系統默認使用標准輸入文件和標准輸出文件。
語法:dd [選項]
if =輸入文件(或設備名稱)。
of =輸出文件(或設備名稱)。
ibs = bytes 一次讀取bytes位元組,即讀入緩沖區的位元組數。
skip = blocks 跳過讀入緩沖區開頭的ibs*blocks塊。
obs = bytes 一次寫入bytes位元組,即寫入緩沖區的位元組數。
bs = bytes 同時設置讀/寫緩沖區的位元組數(等於設置ibs和obs)。
cbs = byte 一次轉換bytes位元組。
count=blocks 只拷貝輸入的blocks塊。
conv = ASCII 把EBCDIC碼轉換為ASCIl碼。
conv = ebcdic 把ASCIl碼轉換為EBCDIC碼。
conv = ibm 把ASCIl碼轉換為alternate EBCDIC碼。
conv = block 把變動位轉換成固定字元。
conv = ublock 把固定位轉換成變動位。
conv = ucase 把字母由小寫轉換為大寫。
conv = lcase 把字母由大寫轉換為小寫。
conv = notrunc 不截短輸出文件。
conv = swab 交換每一對輸入位元組。
conv = noerror 出錯時不停止處理。
conv = sync 把每個輸入記錄的大小都調到ibs的大小(用NUL填充)。
例1:要把一張軟盤的內容拷貝到另一張軟盤上,利用/tmp作為臨時存儲區。把源盤插入驅動器中,輸入下述命令:
$ dd if =/dev/fd0 of = /tmp/tmpfile
拷貝完成後,將源盤從驅動器中取出,把目標盤插入,輸入命令:
$ dd if = /tmp/tmpfile of =/dev/fd0
軟盤拷貝完成後,應該將臨時文件刪除:
$ rm /tmp/tmpfile
例2:把net.i這個文件寫入軟盤中,並設定讀/寫緩沖區的數目。 (注意:軟盤中的內容會被完全覆蓋掉)
$ dd if = net.i of = /dev/fd0 bs = 16384
例3:將文件sfile拷貝到文件 dfile中。
$ dd if=sfile of=dfile
fdformat 命令
軟盤是用戶常用的存儲介質之一。軟盤在使用之前必須先作格式化操作,然後可以用tar、dd、cpio等命令存儲數據,也可以在軟盤上建立可安裝的文件系統。
功能:低級格式化軟盤
語法:format [-n] device
說明:該命令的作用是對軟盤進行格式化。
-n 軟盤格式化後不作檢驗。
device 指定要進行格式化的設備,通常是下述設備之一:
/dev/fd0d360
/dev/fd0h1200
/dev/fd0D360
/dev/fd0H360
/dev/fd0D720
/dev/fd0H720
/dev/fd0h360
/dev/fd0h720
/dev/fd0H1440
C. Linux系統中進行磁碟管理的常用命令有哪些分別有什麼功能
Linux磁碟管理常用三個命令為df、、fdisk。
df,全稱:disk full,列出文件系統的整體磁碟使用量
,全稱:disk used,檢查磁碟空間使用量
fdisk,用於磁碟分區。
1、df命令
檢查文件系統的磁碟空間佔用情況,可以利用該命令獲取磁碟被佔用了多少空間,目前還剩下多少空間等信息。
語法:df[-ahikHTm][目錄或文件名]
參數:
-a 列出所有文件系統,包括系統特有的/proc等文件系統;
-k 以KBytes的容量顯示各文件系統;
-m 以MBytes的容量顯示各文件系統;
-h 以較易閱讀的格式自行顯示,比如:GBytes、MBytes、KBytes;
-H 以M=1000K取代M=1024K的進位方式;
-T 顯示文件系統類型;
-i 不用磁碟容量,以inode的數量來顯示。
2、命令
也是查看使用空間的,但是與df命令不同的是,Linux 命令是對文件和目錄磁碟使用的空間進行查看,和df命令有一定的區別。
語法:[-ahskm]文件或目錄名稱
參數:
-a 列出所有的文件與目錄容量;
-h 以較易閱讀的格式顯示;
-s 列出總量而已,而不列出每個各別的目錄佔用容量;
-S 不包括子目錄下的統計,與-s存在差別;
-k 以KBytes列出容量顯示;
-m 以MBytes列出容量顯示。
3、fdisk命令
fdisk是Linux的磁碟分區表操作工具。
語法:fdisk[-l]裝置名稱
參數:
-l 輸出後面接的裝置所有的分區內容。若僅有fdisk -l時,則系統將會把整個系統內能夠搜尋到的裝置的分區均列出來。
D. 【Linux命令】磁碟管理(邏輯卷與物理卷)
Linux和Windows都採用了MBR的磁碟管理方法,也就是先對一個硬碟進行分區,在對這個一般光碟進行格式化的方法;他們的區別是: Linux系統,是先進行磁碟分區,如果需要使用該分區,將其掛載到對應目錄即可;而Windows則是自動將所有分區掛載好 傳統的磁碟管理的缺點:不方便進行分區擴充、容易導致文件系統崩潰、不適用於作為生產環境的伺服器、拷貝分區的時候要求強制卸載磁碟分區,分區轉移時耗費的時間長;
LVM磁碟管理技術 是Linux環境下對磁碟管理的一種技術,是通過一個建立在硬碟和分區之上的邏輯層來提高磁碟分區的靈活性
物理卷(PV):就是真正的物理硬碟或物理分區
卷組(VG):是將多個物理硬碟整合到一起形成的邏輯卷組;也可以視作一塊邏輯硬碟
邏輯卷(LV):卷組是一塊邏輯硬碟,邏輯硬碟必須分區之後才能使用;邏輯卷可以視作是卷組的邏輯分區
物理擴展(PE):物理擴展是用來保存數據的最小單元
系統首先把物理硬碟合並為卷組;再通過卷組分區;將卷組(邏輯硬碟)分成邏輯分區(邏輯卷)進行使用;
把物理硬碟分成分區,也可以使用一整塊的物理硬碟;把物理硬碟分區建立為物理卷(PV)也可以把整塊物理硬碟都建立為物理卷;把剛剛劃分的物理卷合為卷組(VG)卷組就已經可以動態的調整大小了,最後把卷組劃分成邏輯卷,其中邏輯卷也是可以隨時劃分大小的
pvcreate命令在系統中一般用於創建物理卷;
語法結構
在使用這個命令的時候不要對存放Linux系統的盤符進行進行使用;我們在創建物理卷的時候都是對邏輯分區進行創建的;擴展分區(Extend)不能進行創建物理卷
pvdisplay 命令用於查看當前的分區情況
語法格式以及常用參數:
查看我們剛剛創建的物理卷
pvremove命令常用於刪除對應的物理卷
語法結構:
刪除我們剛剛創建的物理卷
vgcreate 命令的作用是將一個或多個物理卷整合成一個卷組;在創建卷組之前我們需要保證系統中有足夠的除系統存放卷本身的物理卷(使用pvscan查看)需要注意的是,存放Linux的系統物理卷不能被劃分到自定義卷組中、 常用參數:-s:設定PE(最小物理存儲單元)的大小、-l:最大邏輯卷數量、-p:允許存在的最大物理卷數量
語法結構:
將我們剛剛創建物理卷添加到卷組之中
vgdisplay 這個命令可以用來查看我們創建的卷組; 常見的參數 -s 卷組信息以短格式輸出 ;vgdisplay可以查看對應卷組的簡簡訊息,所以相對於pvdisplay用處又大了那麼一點
語法格式:
查看剛剛創建的卷組和某一個卷組的信息
同樣:vgscan 命令也可以查看當前卷組使用情況的簡簡訊息
vgremove 命令的作用是刪除指定的卷組
語法結構:
刪除我們剛剛創建的卷組
注意:當刪除含有邏輯卷的卷組的時候系統會提示是否刪除對應卷組和對應邏輯卷,只有在兩個都輸入:y之後系統才會刪除對應的卷組
lvcreate 命令作用是在一個指定的卷組中創建一塊邏輯卷,前提是要求有指定的卷組; 常用參數:-L:規定創建的邏輯卷大小(直接寫大小就可以)、-l:通過PE劃分邏輯卷的大小(後面接的數字是PE的個數)
語法結構:
在指定的卷組里創建邏輯卷
lvdisplay 命令可用於查看邏輯卷的詳細信息,也可以用來查看指定邏輯卷的詳細信息 參數:-m:查看對應邏輯卷的掛載信息
語法結構:
檢查指定的邏輯卷,並查看指定邏輯卷的掛載信息:
管理邏輯卷大小的常用命令是lvextend 命令和 lvrece 命令分別表示邏輯卷大小的擴充和減少, 其中lvextend命令表示邏輯卷大小擴充,常用參數 -L(指的是擴充的具體大小)、-l(指的是擴充的LE塊數量);lvextend命令表示邏輯卷大小的減小,常用參數-L(指的是減小的具體大小)、-l(指的是減小的LE塊數量)
語法結構:
對我們指定的兩個邏輯卷分別進行容量的增加和減少,並掛載對應的邏輯卷
E. Linux 下磁碟管理--邏輯卷--LV
在Linux磁碟操作中,如果磁碟寫滿,那麼就需要對磁碟進行擴容。把數據寫入到更大的磁碟中,這個工作量是非常大的,而且非常容易出現錯誤,危險性很高,那麼我們就可以使用邏輯卷管理器(LVM)來對磁碟進行管理擴容。這樣就可以很輕松的,沒有危險的對數據進行移動。
我們來看看LVM比傳統硬碟管理的優點:
1.靈活性容量:允許多個磁碟或分區作為一個邏輯卷。
2.可以伸縮的存儲池:不必格式化,用命令可以直接修改邏輯卷。
3.在線數據的分配:可以在線移動數據,可以熱插拔硬碟更換磁碟。
4.設備命名方便。
5.鏡像卷:很方便的做數據鏡像。
6.卷快照:快照會把邏輯卷的全部內容保存。
那麼邏輯卷要怎麼來創建呢,我們做如下步驟:
1.在創建邏輯卷前,必須要有一塊物理磁碟做物理卷(PV)。
2.由一個或多個物理卷組成一個存儲池,我們叫他卷組(VG)。
3.根據卷組中的空閑物理空間,建立邏輯卷(LV)。
上面3步時創建邏輯卷的具體思路。下面我們具體操作:
創建邏輯卷步驟:
1.使用fdisk創建一個物理分區,t 選項設置類型為:linuxLVM
2.使用partprobe向內核注冊新的分區。
3.創建物理卷pvcreate /dev/sdb1(需要創建的硬碟分區名,根據自己伺服器查找)
4.創建卷組 vgcreate 卷組名 /dev/sdb1
5.創建邏輯卷 lvcreate -n 邏輯卷名 -L 卷組大小 卷組名
lvcreate -n abc -L 10G myvg
6.創建文件系統 mkfs.ext4 /dev/卷組名/邏輯卷名
mkfs.ext4 /dev/myvg/abc
7.創建永久掛載點(寫入文件/etc/fstab),這一步就不在贅述,可以查閱我前一文章,有詳細記載。
這樣,我們的邏輯卷就創建成功了。
那我們怎麼查看物理卷,卷組,邏輯卷呢
查看物理卷信息:pvdisplay /dev/sdb1
查看卷組信息:vgdisplay myvg
查看邏輯卷信息:lvdisplay /dev/myvg/abc
邏輯卷的擴容
如果在建立的卷組還有空間,就可以給邏輯卷擴容。那怎麼做呢。
1.lvextend -L +10G /dev/myvg/abc
給邏輯卷 abc 擴容10G。減少容量直接把 + 變為 - 即可。
2.resize2fs /dev/myvg/abc 針對ext4文件
xfs_growfs /dev/myvg/abc 針對xfs文件
使擴容生效。
如果卷組空間不夠,需先增加卷組空間,在對邏輯卷擴容。
1.准備物理磁碟 fdisk ,partprobe ,mkfs.ext4
2.創建物理卷
3.給原來的卷組增加物理卷 vgextend myvg /dev/sdc1,然後vgdiaplay
創建完成,那麼我們需要刪除邏輯卷,怎麼做呢。
1.取消掛載,同時刪除 /etc/fstab 文件下的掛載內容。
2.刪除邏輯卷 lvremove /dev/myvg/abc
3.刪除卷組 vgremove myvg
4.刪除物理卷 pvremove /dev/sdb1
步驟和創建相反。
Linux下磁碟管理的邏輯卷就總結完畢。