Linux下的兩種磁盤分區工具的使用

今天我們來說一下如何使用fdisk和parted分區工具來進行硬盤分區,、下面我來說一下在Linux系統中這兩種硬盤分區工具的使用方法:

 


----------fdisk分區工具----------

 


   在我的另一篇文章裏已經說過了在Linux系統中硬盤分區的概念了(http://blog.chinaunix.net/u3/112561/showart_2230401.html),所以在這裏我就不多說了,有不懂的可以看看那篇
一、.下面來介紹fdisk分區工具的命令格式:
    fdisk是傳統的Linux硬盤分區工具,也是Linux系統中最常用的一種硬盤分區工具之一,它的命令格式如下:

 

其中常用命令選項的說明如下:
-b sectorsize: 定義磁盤扇區的大小,有效值包括512、1024和2048,這個選項只對老版本的Linux操作系統有效。
-C cyls: 定義磁盤的柱面數,一般情況不需要對它進行定義,使用默認的就好。
-H heads: 定義分區表所使用的磁盤的碰頭數,一般爲255或16。
-S sects: 定義每條磁道的扇區數,一般爲63。
-l :這是最常用到的一個命令選項,它是顯示指定磁盤設備的分區表信息,例如查看/dev/sdb1這個磁盤設備的分區表信息就是:fdisk -l /dev/sdb1
-u :在顯示分區表時,以扇區代替柱面作爲顯示的單位
-s partition: 在標準輸出中以block爲單位顯示分區的大小。
-v :顯示fdisk的版本信息。
device:就是磁盤的設備名稱,IDE類型的磁盤設備名爲[dev/hd[a-h]];而SCSI或SATA類型的磁盤設備名爲[dev/sd[a-p]]。
    假如我要查看我電腦上的第一塊磁盤的分區表信息(呵呵,我就一塊硬盤)可以使用如下命令:fdisk -l /dev/sda(我的硬盤是SATA類型的)顯示信息如圖:


然後我們可以看一下它們各自對應磁盤設備文件:
使用命令:ll /dev/sda*  來查看如圖:

朋友們可以自己嘗試一下別的命令的作用,由於時間問題我在這裏就不一一說了~!下面我們來看看如何使用fdisk工具來對硬盤分區吧。
二、fdisk交互模式:
    當我們使用了命令“fdisk+設備名”後,就可以進入fdisk程序的交互模式了,在交互模式中可以通過輸入fdisk程序所提供的指令來完成相應的操作,其結果如圖:

進入到這種模式時候,我們就可以通過輸入fdisk的指令來執行相應的磁盤分區管理操作了,輸入m可以獲取fdisk的指令幫助信息:如圖:

下面我們來看看各個指令的使用說明:
a :設置可引導標記
b :修改bsd的磁盤標籤
c :設置DOS操作系統兼容標記
d :刪除一個分區
l :顯示已知的分區類型,其中82爲Linux swap分區,83爲Linux分區
m :顯示幫助信息
n :增加一個新的分區
o :創建一個新的空白的DOS分區表
p :顯示磁盤當前的分區表
q :退出fdisk程序,不保存任何修改
s :創建一個新的空白的Sun磁盤標籤
t :改變一個分區的系統號碼(比如把Linux Swap分區改爲Linux分區)
u :改變顯示記錄單位
v :對磁盤分區表進行驗證
w :保存修改結果並退出fdisk程序
x :特殊功能,不建議初學者使用
知道了上面這些命令的意義,可以說就會對一塊硬盤進行分區了。下面我來舉個例子來說明一下:
首先我拿虛擬機添加一塊硬盤,大小爲170G,然後對其進行分區:
1.首先輸入“fdisk -l“命令來查看一下添加上硬盤沒有,然後輸入命令“fdisk /dev/sdb"來進入fdisk程序交互模式,如下圖:


2.輸入指令“n"來新建一個分區,這個時候系統會讓你輸入是新建主分區還是擴展分區,我選擇主分區(p),然後輸入分區號(因爲我這是新的硬盤,還沒有分過區,所以輸入1代表第一個主分區),然後又是起始柱面,直接選擇默認即可。最後輸入你這塊分區的大小,我這裏是分的差不多50G吧!這樣一個分區就分好了,然後你可以輸入p指令來查看一下,如下圖:


3.這次我再建立一個擴展分區,首先輸入指令n來新建一個分區,然後輸入e來選擇擴展分區,再輸入分區號(2),然後下面的都選擇默認就OK了!建立好後使用指令 p來查看一下,如圖:


4.下面我再在擴展分區裏面建立兩個邏輯分區,首先輸入指令n,然後選擇分區類型爲l(邏輯分區)起始柱面選擇默認,然後輸入此邏輯分區的大小,我就分40G了。最後輸入指令p來查看一下是否建立成功,如圖:


5.同樣的步驟建立另一個邏輯分區,這裏就不多說了。下面來看一下如何修改一個分區的類型。
6.輸入指令t來修改分區的類型(只需要輸入分區類型對應的ID號即可),然後輸入要修改的分區號,我這裏是修改的sdb5(也就是說輸入5就OK了)。最後輸入分區的類型的ID號,如果不知道分區的類型對應的ID號,你可以輸入“l"指令來查看分區類型所對應的ID號。如圖:

7.查到分區類型的ID號後,你就可以輸入對應的ID號來修改分區類型了,我這裏把Linux分區改爲Linux swap類型,從上圖可知Linux swap類型所對應的ID爲82,輸入82後回車就完成 了修改,可以使用指令p來查看一下,如圖:


8.上面這些就是整個使用fdisk分區工具對硬盤進行分區的過程,哦,別忘記最後一步了,你得輸入指令w來對你所做的操作進行保存,保存後你可以使用fdisk -l /dev/sdb來查看是否分區成功。如圖:


9.上面我們對硬盤進行了分區,硬盤分完區之後是不能直接使用的,得格式化後才能使用,下面我們就對硬盤進行格式化。輸入“mkfs.ext3"來把硬盤格式化成ext3類型的文件系統。具體mkfs命令的使用方法,可以自己使用man mkfs命令來查看,這裏就不詳細說明了。如圖:


10.輸入mkfs.ext3 /dev/sdb1命令來對硬盤格式化,一個一個分區都要格式化完成纔可以,有一個特殊的分區就是swap,可以使用命令mkswap /dev/sdb5來對swap類型的分區進行格式化。如下圖:


11.格式化完文件系統後,你需要對磁盤進行掛載後才能夠正常使用,掛載命令爲mount,使用格式如下:
mount [-t  文件系統類型 ] 存儲設備   掛載點(通常文件系統類型通常可以省略,系統會自動識別)
12.在掛載之前你需要新建一個掛載點,就是你想要把這塊磁盤掛載到哪,然後你就把掛載點建立在哪就OK了。例如,上面例子中,我要對/dev/sdb1分區掛載,那麼我先給它新建一個掛載點:mkdir /media/sdb1,然後執行:mount /dev/sdb1 /media/sdb1掛載點的名字可以隨便起,掛載後你就可以往磁盤裏寫東西了,如圖:


13.爲了方便起見,我們還可以修改相關的配置文件,使得系統對某一個分區進行自動掛載,具體就是修改/etc/fstab配置文件來實現,我以上面例子把/dev/sdb1分區配置成每次系統啓動時自動掛載到/media/sdb1下面,可以如下修改配置文件,如圖:


14.按照上面所做當系統每次啓動時,就會自動把/dev/sdb1分區掛載到/media/sdb1裏,而不用我們每次進行手動掛載。
15.如果我們不想使用某一分區時,需要對它進行卸載,可以使用“umount + 設備掛載點”命令來進行卸載。如上例:umount /media/sdb1命令來進行卸載。
注意:有時候會遇到無法卸載的情況,遇到這種情況的原因是因爲有其他用戶或進程正在訪問該文件系統導致的,在Linux系統中,是不允許對正在被訪問的文件系統進行卸載操作的,只有當該文件系統上所有訪問的用戶或進程完成操作並退出後,這個文件系統才能被正常卸載。我們有兩種方法來處理這種情況,一是用命令“lsof +掛載點”來查看到底是哪些進程正在訪問該文件系統,查找出來後,使用kill命令將進程殺死來進行卸載。二是使用命令“fuser -k +掛載點”。加-k選項是使用命令fuser找出正在訪問該文件系統的進程,加上-k選項就是找出來並殺死。通過以上兩種方法就可以對一些無法卸載的文件系統進行卸載了。

 

 


----------parted分區工具----------

 


    parted是RHEL5下自帶的另外一種分區軟件,相對於fdisk,它的使用更加方便,同時它還提供了動態調整分區大小的功能。下面我來如何通過parted創建、刪除磁盤分區、查看分區表、更改分區大小、創建文件系統以及如何使用parted交互模式。
一、parted簡介:
    parted是另一款在linux下常用的分區軟件,它支持的分區類型範圍非常廣,包括ext2、ext3、linux-swap、FAT、FAT32、reiserfs、HFS、jsf、ntfs、ufs和xfs等。它的命令格式如下:
parted [options] [device  [command [options...]...]]
其中的命令選項說明如下:
-h :顯示幫助信息。
-i :交互模式。
-s :腳本模式。
-v :顯示parted的版本信息。
device :磁盤設備名稱,如/dev/sda.
command :parted指令,如果沒有設置指令,則parted將會進入交互模式。
二、parted交互模式:
    與fdisk類似,parted可以使用命令“parted+設備名”進入交互模式。進入交互模式後,可以通過parted的各種指令來對磁盤分區進行管理,跟fdisk非常相似。我還以我電腦上的那塊硬盤爲例,如圖是進入parted交互模式後又輸入“help“命令幫助的界面:

-_-!汗,這裏少了一張圖,可能沒複製上吧。。。你只要終端下輸入“parted /dev/某個設備”就可以進入parted交互模式。
parted的各種操作指令和詳細說明如下:


check NUMBER                                檢查文件系統
cp [FROM-DEVICE]FROM-NUMBER TO-NUMBER      複製文件系統到另外一個分區
help[COMMAND]                             顯示全部幫助信息或者指定命令的幫助信息
mklabel,mktable LABEL-TYPE                  在分區表中創建一個新的磁盤標籤
mkfs NUMBER FS-TYPE                         在分區上創建一個指定類型的文件系統
mkpart PART-TYPE[FS-TYPE]START END          創建一個分區
mkparts PART-TYPE[FS-TYPE]START END         創建一個分區,並在分區上創建指定的文件系統
move NUMBER START END                       移動分區
name NUMBER NAME                            以指定的名字命名分區號
print [free|NUMBER|all]                     顯示分區表、指定的分區或者所有設備
quit                                        退出parted程序
rescue START END                            修復丟失的分區
resize NUMBER START END                     更改分區的大小
rm NUMBER                                   刪除分區
select DEVICE                               選擇需要更改的設備
set NUMBER FLAG STATE                       更改分區的標記
toggle [NUMBER[FLAG]]                       設置或取消分區的標記
unit UNIT                                   設置默認單位
version                                     顯示parted的版本信息
三、分區管理
1.查看分區
    在parted交互模式下輸入print指令來查看分區(相當於fdisk的p指令),如圖:

2.創建分區
    在parted交互模式下輸入mkpart指令來創建磁盤分區,假如要創建一個開始位置爲50G、結束位置爲100G、文件系統類型爲ext3的邏輯分區,可以使用如下指令來創建:
mkpart logical ext3 50G 100G  如圖:


當然也可以只輸入mkpart指令而不帶任何參數,parted會一步步提示用戶輸入相關信息並最終完成分區創建,如圖:

3.創建文件系統
    創建分區後,可以使用mkfs指令在分區上創建文件系統(也就是格式化),parted目前只支持ext2文件系統,還不支持ext3,如圖:


4.更改分區大小
    使用resize指令可以更改指定分區的大小。需要更改大小的分區上面必須是已經創建了文件系統,否則會提示:Error:Could not detect file system.下面我以dev/sdb6爲例來縮小22G,因爲我現在磁盤已經用完了,所以不能加了!就減少吧!如圖:


5.刪除分區
    使用rm指令可以刪除指定的磁盤分區,在進行刪除操作前必須先把分區卸載,例如我要刪除/dev/sdb6就是在parted交互模式下輸入“rm“指令,然後輸入要刪除的分區號。如圖:

 

    。。。。。。Shit!終於寫完了,不容易啊,累死我了。都快1點多了-_-!趕緊睡覺去了!朋友們有什麼不明白的給我留言,我閃。。。。。。

 

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章