Linux下fdisk命令操作磁碟詳解--新增、刪除、轉換分割槽等
linux下fdisk命令操作磁碟詳解--新增、刪除、轉換分割槽等
fdisk 操作硬碟的命令格式如下:
[[email protected] beinan]# fdisk 裝置
比如我們通過 fdisk -l 得知 /dev/hda 或者 /dev/sda 裝置;我們如果想再新增或者刪除
一些分割槽,可以用
[[email protected] beinan]# fdisk /dev/hda
或
[[email protected] beinan]# fdisk /dev/sda
注 在以後的例子中,我們要以 /dev/sda 裝置為例,來講解如何用 fdisk 來操作新增、刪
除分割槽等動作;
1、fdisk 的說明;
當我們通過 fdisk 裝置,進入相應裝置的操作時,會發現有如下的提示;以 fdisk /dev/sda
裝置為例,以下同;
[[email protected] beinan]# fdisk /dev/sda
Command (m for help): 在這裡按 m ,就會輸出幫助;
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition 注:這是刪除一個分割槽的動作;
l list known partition types 注:l 是列出分割槽型別,以供我們設定相應分割槽的型別;
m print this menu 注:m 是列出幫助資訊;
n add a new partition 注:新增一個分割槽;
o create a new empty DOS partition table
p print the partition table 注:p 列出分割槽表;
q quit without saving changes 注:不儲存退出;
s create a new empty Sun disklabel
t change a partition's system id 注:t 改變分割槽型別;
u change display/entry units
v verify the partition table
w write table to disk and exit 注:把分割槽表寫入硬碟並退出;
x extra functionality (experts only) 注:擴充套件應用,專家功能;
其實我們常用的只有注有中文的,其它的功能我們不常用(呵,主要是我不會用,否則早會
賣弄一下了);x 擴充套件功能,也不是常用的;一般的情況下只要懂得 d l m p q t w 就行
了;
下面以例項操作來詳述,沒有例子沒有辦法就,新手也看不懂;
2、列出當前操作硬碟的分割槽情況,用 p;
Command (m for help): p
Disk /dev/sda: 1035 MB, 1035730944 bytes
256 heads, 63 sectors/track, 125 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 25 201568+ c W95 FAT32 (LBA)
/dev/sda2 26 125 806400 5 Extended
/dev/sda5 26 50 201568+ 83 Linux
/dev/sda6 51 76 200781 83 Linux
3、通過 fdisk 的 d 指令來刪除一個分割槽;
Command (m for help): p 注:列出分割槽情況;
Disk /dev/sda: 1035 MB, 1035730944 bytes
256 heads, 63 sectors/track, 125 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 25 201568+ c W95 FAT32 (LBA)
/dev/sda2 26 125 806400 5 Extended
/dev/sda5 26 50 201568+ 83 Linux
/dev/sda6 51 76 200781 83 Linux
Command (m for help): d 注:執行刪除分割槽指定;
Partition number (1-6): 6 注:我想刪除 sda6 ,就在這裡輸入 6 ;
Command (m for help): p 注:再檢視一下硬碟分割槽情況,看是否刪除了?
Disk /dev/sda: 1035 MB, 1035730944 bytes
256 heads, 63 sectors/track, 125 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 25 201568+ c W95 FAT32 (LBA)
/dev/sda2 26 125 806400 5 Extended
/dev/sda5 26 50 201568+ 83 Linux
Command (m for help):
警告:刪除分割槽時要小心,請看好分割槽的序號,如果您刪除了擴充套件分割槽,擴充套件分割槽之下的邏
輯分割槽都會刪除;所以操作時一定要小心;如果知道自己操作錯了,請不要驚慌,用 q 不保
存退出;切記切記!!!!在分割槽操作錯了之時,千萬不要輸入 w 儲存退出!!!
4、通過 fdisk 的 n 指令增加一個分割槽;
Command (m for help): p
Disk /dev/sda: 1035 MB, 1035730944 bytes
256 heads, 63 sectors/track, 125 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 25 201568+ c W95 FAT32 (LBA)
/dev/sda2 26 125 806400 5 Extended
/dev/sda5 26 50 201568+ 83 Linux
Command (m for help): n 注:增加一個分割槽;
Linux磁碟概念及其管理工具fdisk http://www.linuxidc.com/Linux/2016-08/134664.htm
l logical (5 or over) 注:增加邏輯分割槽,分割槽編號要大於 5;為什麼要大於 5,因為
已經有 sda5 了;
p primary partition (1-4) 注:增加一個主分割槽;編號從 1-4 ;但 sda1 和 sda2 都
被佔用,所以只能從 3 開始;
p
Partition number (1-4): 3
No free sectors available 注:失敗中,為什麼失敗?
注:我試圖增加一個主分割槽,看來是失敗了,為什麼失敗?因為我們看到主分割槽+擴充套件分割槽
把整個磁碟都用光了,看擴充套件分割槽的 End 的值,再看一下 p 輸出資訊中有 125 cylinders;
最好還是看前面部份;那裡有提到;
所以我們只能增加邏輯分割槽了;
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l 注:在這裡輸入 l,就進入劃分邏輯分割槽階段了;
First cylinder (51-125, default 51): 注:這個就是分割槽的 Start 值;這裡最好直接按
回車,如果您輸入了一個非預設的數字,會造成空間浪費;
Using default value 51
Last cylinder or +size or +sizeM or +sizeK (51-125, default 125): +200M 注:這個
是定義分割槽大小的,+200M 就是大小為 200M ;當然您也可以根據 p 提示的單位 cylinder
的大小來算,然後來指定 End 的數值。回頭看看是怎麼算的;還是用+200M 這個辦法來新增,
這樣能直觀一點。如果您想新增一個 10G 左右大小的分割槽,請輸入 +10000M ;
Command (m for help):
5、通過 fdisk 的 t 指令指定分割槽型別;
Command (m for help): t 注:通過 t 來指定分割槽型別;
Partition number (1-6): 6 注:要改變哪個分割槽型別呢?我指定了 6,其實也就是 sda6
Hex code (type L to list codes):L 注:在這裡輸入 L,就可以檢視分割槽型別的 id 了;
Hex code (type L to list codes): b 注:如果我想讓這個分割槽是 W95 FAT32 型別的,通
過 L 檢視得知 b 是表示的是,所以輸入了 b;
Changed system type of partition 6 to b (W95 FAT32) 注:系統資訊,改變成功;是否
是改變了,請用 p 檢視;
Command (m for help): p
Disk /dev/sda: 1035 MB, 1035730944 bytes
256 heads, 63 sectors/track, 125 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 25 201568+ c W95 FAT32 (LBA)
/dev/sda2 26 125 806400 5 Extended
/dev/sda5 26 50 201568+ 83 Linux
/dev/sda6 51 75 201568+ b W95 FAT32
6、fdisk 的退出,用 q 或者 w;
其中 q 是 不儲存退出,w 是儲存退出;
Command (m for help): w
或
Command (m for help): q
7、一個新增分割槽的例子;
本例中我們會新增兩個 200M 的主分割槽,其它為擴充套件分割槽,在擴充套件分割槽中我們新增兩個 200M
大小的邏輯分割槽;
Command (m for help): p 注:列出分割槽表;
Disk /dev/sda: 1035 MB, 1035730944 bytes
256 heads, 63 sectors/track, 125 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes
Device Boot Start End Blocks Id System
Command (m for help): n 注:新增分割槽;
Command action
e extended
p primary partition (1-4)
p 注:新增主分割槽;
Partition number (1-4): 1 注:新增主分割槽 1;
First cylinder (1-125, default 1): 注:直接回車,主分割槽 1 的起始位置;預設為 1,默
認就好;
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-125, default 125): +200M 注:指定
分割槽大小,用+200M 來指定大小為 200M
Command (m for help): n 注:新增新分割槽;
Command action
e extended
p primary partition (1-4)
p 注:新增主分割槽
Partition number (1-4): 2 注:新增主分割槽 2;
First cylinder (26-125, default 26):
Using default value 26
Last cylinder or +size or +sizeM or +sizeK (26-125, default 125): +200M 注:指定
分割槽大小,用+200M 來指定大小為 200M
Command (m for help): n
Command action
e extended
p primary partition (1-4)
e 注:新增擴充套件分割槽;
Partition number (1-4): 3 注:指定為 3 ,因為主分割槽已經分了兩個了,這個也算主分
區,從 3 開始;
First cylinder (51-125, default 51): 注:直接回車;
Using default value 51
Last cylinder or +size or +sizeM or +sizeK (51-125, default 125): 注:直接回車,
把其餘的所有空間都給擴充套件分割槽;
Using default value 125
Command (m for help): p
Disk /dev/sda: 1035 MB, 1035730944 bytes
256 heads, 63 sectors/track, 125 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 25 201568+ 83 Linux
/dev/sda2 26 50 201600 83 Linux
/dev/sda3 51 125 604800 5 Extended
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l 注:新增邏輯分割槽;
First cylinder (51-125, default 51):
Using default value 51
Last cylinder or +size or +sizeM or +sizeK (51-125, default 125): +200M 注:新增
一個大小為 200M 大小的分割槽;
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l 注:新增一個邏輯分割槽;
First cylinder (76-125, default 76):
Using default value 76
Last cylinder or +size or +sizeM or +sizeK (76-125, default 125): +200M 注:新增
一個大小為 200M 大小的分割槽;
Command (m for help): p 列出分割槽表;
Disk /dev/sda: 1035 MB, 1035730944 bytes
256 heads, 63 sectors/track, 125 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 25 201568+ 83 Linux
/dev/sda2 26 50 201600 83 Linux
/dev/sda3 51 125 604800 5 Extended
/dev/sda5 51 75 201568+ 83 Linux
/dev/sda6 76 100 201568+ 83 Linux
然後我們根據前面所說通過 t 指令來改變分割槽型別;
最後不要忘記 w 儲存退出;
五、對分割槽進行格式化,以及載入;
先提示一下;用 mkfs.bfs mkfs.ext2 mkfs.jfs mkfs.msdos mkfs.vfatmkfs.cramfs
mkfs.ext3 mkfs.minix mkfs.reiserfs mkfs.xfs 等命令來格式化分割槽,比如我想格式化
sda6 為 ext3 檔案系統,則輸入;
[[email protected] beinan]# mkfs.ext3 /dev/sda6
如果我想載入 sda6 到目前系統來存取檔案,應該有 mount 命令,但首先您得建一個掛載目
錄;比如 /mnt/sda6 ;
[[email protected] beinan]# mkdir /mnt/sda6
[[email protected] beinan]# mount /dev/sda6 /mnt/sda6
[[email protected] beinan]# df -lh
Filesystem 容量 已用 可用 已用% 掛載點
/dev/hda8 11G 8.4G 2.0G 81% /
/dev/shm 236M 0 236M 0% /dev/shm
/dev/hda10 16G 6.9G 8.3G 46% /mnt/hda10
/dev/sda6 191M 5.6M 176M 4% /mnt/sda6
這樣我們就能進入 /mnt/sda6 目錄,然後存取檔案了