磁盤容量與主分區(qū)、擴展分區(qū)、邏輯分區(qū)的關(guān)系:
硬盤的容量=主分區(qū)的容量+擴展分區(qū)的容量
擴展分區(qū)的容量=各個邏輯分區(qū)的容量之和
一塊物理硬盤只能有: 一到四個主分區(qū)(但其中只能有一個是活動的主分區(qū)),或一到三個主分區(qū),和一個擴展分區(qū)。分別對應(yīng)hda1,hda2,hda3,hda4.
Linux 中規(guī)定,每一個硬盤設(shè)備最多能有 4 個主分區(qū)(其中包含擴展分區(qū))構(gòu)成,任何一個擴展分區(qū)都要占用一個主分區(qū)號碼,也就是在一個硬盤中,主分區(qū)和擴展分區(qū)一共最多是 4 個。
我曾經(jīng)的困惑點是:不知道擴展分區(qū)要占用主分區(qū)(最多可以有4個)一個分區(qū)號碼。
我的總結(jié):一塊硬盤可以只設(shè)主分區(qū),這時主分區(qū)可設(shè)置4個分區(qū)號。也可以設(shè)置成主分區(qū)+邏輯分區(qū),這時也是最多4個分區(qū)號碼,但是變成了4 = 3 + 1.其中4是主分區(qū)和擴展分區(qū)加起來最多4個; 3是主分區(qū),可以小于或等于3; 1是擴展分區(qū)號,占用了一個主分區(qū)號。從5開始到16,都是邏輯分區(qū)。如果只有一個5,則擴展分區(qū)不再進行分區(qū)了,那么擴展分區(qū)就是邏輯分區(qū)了(擴展分區(qū)的磁盤總量等于一個邏輯分區(qū)的磁盤總量)。常見的是擴展分區(qū)被分成幾個邏輯分區(qū),用5,6,7,8等號碼標(biāo)識。
如果你在Linux系統(tǒng)中格式化磁盤時遇到如下錯誤,那么表示你正在格式化一個擴展分區(qū)。
[root@GETTestLNX06 ~]# mkfs.ext4 /dev/sdb1
mke2fs 1.41.12 (17-May-2010)
mkfs.ext4: inode_size (128) * inodes_count (0) too big for a
filesystem with 0 blocks, specify higher inode_ratio (-i)
or lower inode count (-N).
直接格式化擴展分區(qū)是不允許的,只能格式化主分區(qū)和邏輯分區(qū)。那么那么應(yīng)該如何格式化一個擴展分區(qū)呢,我們要么刪除該擴展分區(qū),創(chuàng)建一個主分區(qū);要么在擴展分區(qū)上創(chuàng)建邏輯分區(qū),如下操作所示
1: 創(chuàng)建邏輯分區(qū)
[root@GETTestLNX06 ~]# fdisk /dev/sdb
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): p
Disk /dev/sdb: 107.4 GB, 107374182400 bytes
255 heads, 63 sectors/track, 13054 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd61351c9
Device Boot Start End Blocks Id System
/dev/sdb1 1 13054 104856223+ 5 Extended
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (1-13054, default 1): 1
Last cylinder, +cylinders or +size{K,M,G} (1-13054, default 13054):
Using default value 13054
Command (m for help): p
Disk /dev/sdb: 107.4 GB, 107374182400 bytes
255 heads, 63 sectors/track, 13054 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd61351c9
Device Boot Start End Blocks Id System
/dev/sdb1 1 13054 104856223+ 5 Extended
/dev/sdb5 1 13054 104856192 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
2:格式化邏輯分區(qū)
[root@GETTestLNX06 ~]# mkfs.ext4 /dev/sdb5
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
6553600 inodes, 26214048 blocks
1310702 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
800 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 28 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
3:將掛載信息寫入配置文件
編輯
[root@GETTestLNX06 ~]# vi /etc/fstab
4:掛載新建的分區(qū)
[root@GETTestLNX06 ~]# cd /
[root@GETTestLNX06 /]# mkdir u01
[root@GETTestLNX06 /]# mount -a
[root@GETTestLNX06 /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_gettestlnx06-lv_root
44G 2.3G 40G 6% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
/dev/sda1 477M 33M 419M 8% /boot
/dev/sdb5 99G 60M 94G 1% /u01
[root@GETTestLNX06 /]#