Linux硬盘分区(一):添加
*********************************************************
过程简述
*************************
--添加磁盘
# fdisk -l --查看磁盘情况
# fdisk /dev/sdb --为/dev/sdb设备分区
n --添加分区
p/e --主分区/逻辑分区
w --保存退出
# mkdir /data --创建挂载目录
# mkfs.ext3 /dev/sdb --格式化磁盘为ext3文件系统
# fdisk -l --再次查看磁盘情况
# mount /dev/sdb /data --挂载磁盘到创建的挂载目录下
# vi /etc/fstab --修改启动自动挂载项
/dev/sdb /data ext3 defaults 0 0
*************************
说明
*************************
1、以上操作为精炼总结,若如可以看懂,下面内容无需浏览;
2、以下简单列举两例,细化操作过程。*****************************************************************************************************
举例1:添加1块90G磁盘,将其分为1个分区
******************************************************************************************************************************
查看磁盘情况
*************************
[root@hyldb /]# fdisk -l
Disk /dev/sda: 128.8 GB, 128849018880 bytes
255 heads, 63 sectors/track, 15665 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 64 514048+ 83 Linux
/dev/sda2 65 586 4192965 82 Linux swap / Solaris
/dev/sda3 587 15665 121122067+ 83 Linux
Disk /dev/sdb: 96.6 GB, 96636764160 bytes
255 heads, 63 sectors/track, 11748 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdb doesn't contain a valid partition table
*************************磁盘分区*************************
[root@hyldb /]# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.
The number of cylinders for this disk is set to 11748.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
Command (m for help): m
--输入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
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help): n
--添加新分区
Command action
e extended
p primary partition (1-4)
p
--输入p添加主分区
Partition number (1-4): 1
--填写分区号
First cylinder (1-11748, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-11748, default 11748):
Using default value 11748
Command (m for help): p
--打印分区列表
Disk /dev/sdb: 96.6 GB, 96636764160 bytes
255 heads, 63 sectors/track, 11748 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 11748 94365778+ 83 Linux
Command (m for help): w
--保存退出
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
*************************创建挂载目录*************************
[root@hyldb /]# mkdir /data
*************************格式化磁盘*************************
[root@hyldb /]# mkfs.ext3 /dev/sdb
--格式化sdb1,格式成ext3格式文件系统
mke2fs 1.39 (29-May-2006)
/dev/sdb is entire device, not just one partition!
Proceed anyway? (y,n) y
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
11796480 inodes, 23592960 blocks
1179648 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
720 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 33 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@hyldb /]# fdisk -l
Disk /dev/sda: 128.8 GB, 128849018880 bytes
255 heads, 63 sectors/track, 15665 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 64 514048+ 83 Linux
/dev/sda2 65 586 4192965 82 Linux swap / Solaris
/dev/sda3 587 15665 121122067+ 83 Linux
Disk /dev/sdb: 96.6 GB, 96636764160 bytes
255 heads, 63 sectors/track, 11748 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdb doesn't contain a valid partition table
*************************挂载磁盘到指定路径下*************************
[root@hyldb /]# mount /dev/sdb /data
[root@hyldb /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 112G 4.3G 102G 5% /
/dev/sda1 487M 17M 445M 4% /boot
tmpfs 1006M 0 1006M 0% /dev/shm
/dev/sdb 89G 184M 84G 1% /data
*************************修改启动磁盘自动挂载*************************
[root@xckydb ~]# vi /etc/fstab
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
LABEL=SWAP-sda2 swap swap defaults 0 0
/dev/sdb /data ext3 defaults 0 0
~
~
"/etc/fstab" 8L, 608C written
--格式说明
/dev/sdb1 /u01 ext3 defaults 0 0
要挂载的对象 挂载的目录 系统类型 文件系统访问权限 开机后是否检测 出问题后是否转储
*****************************************************************************************************
举例2:
1、添加1块10G磁盘;
2、将其分为六个分区;
3、三个主分区分别为2G;
4、剩余空间分为扩展分区,具体分为两个逻辑分区分别为1G,剩余空间单独分为一个逻辑分区。
******************************************************************************************************************************
查看磁盘情况
*************************
[root@hyl ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 9.7G 5.4G 3.9G 59% /
/dev/sda3 35G 17G 17G 50% /home
tmpfs 1006M 0 1006M 0% /dev/shm
[root@hyl ~]# fdisk -l
Disk /dev/sda: 53.6 GB, 53687091200 bytes
255 heads, 63 sectors/track, 6527 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 1305 10482381 83 Linux
/dev/sda2 1306 1827 4192965 82 Linux swap / Solaris
/dev/sda3 1828 6527 37752750 83 Linux
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdb doesn't contain a valid partition table
*************************为/dev/sdb设备分区*************************
[root@hyl ~]# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.
The number of cylinders for this disk is set to 1305.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
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
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
*************************创建第一个主分区:大小2G*************************
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-1305, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-1305, default 1305): +2048M
*************************创建第二个主分区:大小2G*************************
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-1305, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-1305, default 1305): +2048M
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (251-1305, default 251):
Using default value 251
Last cylinder or +size or +sizeM or +sizeK (251-1305, default 1305): +2048M
*************************创建第三个主分区:大小2G*************************
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 3
First cylinder (501-1305, default 501):
Using default value 501
Last cylinder or +size or +sizeM or +sizeK (501-1305, default 1305): +2048M
*************************先打印分区列表看一下*************************
Command (m for help): p
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 250 2008093+ 83 Linux
/dev/sdb2 251 500 2008125 83 Linux
/dev/sdb3 501 750 2008125 83 Linux
*************************创建扩展分区*************************
Command (m for help): n
Command action
e extended
p primary partition (1-4)
e
Selected partition 4
First cylinder (751-1305, default 751):
Using default value 751
Last cylinder or +size or +sizeM or +sizeK (751-1305, default 1305):
Using default value 1305
*************************创建第一个逻辑分区:大小1G*************************
Command (m for help): n
First cylinder (751-1305, default 751):
Using default value 751
Last cylinder or +size or +sizeM or +sizeK (751-1305, default 1305): +1024M
*************************创建第二个逻辑分区:大小1G*************************
Command (m for help): n
First cylinder (876-1305, default 876):
Using default value 876
Last cylinder or +size or +sizeM or +sizeK (876-1305, default 1305): +1024M
*************************剩余容量创建最后一个逻辑分区*************************
Command (m for help): n
First cylinder (1001-1305, default 1001):
Using default value 1001
Last cylinder or +size or +sizeM or +sizeK (1001-1305, default 1305):
Using default value 1305
*************************打印分区列表*************************
Command (m for help): p
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 250 2008093+ 83 Linux
/dev/sdb2 251 500 2008125 83 Linux
/dev/sdb3 501 750 2008125 83 Linux
/dev/sdb4 751 1305 4458037+ 5 Extended
/dev/sdb5 751 875 1004031 83 Linux
/dev/sdb6 876 1000 1004031 83 Linux
/dev/sdb7 1001 1305 2449881 83 Linux
*************************保存退出*************************
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
*************************查看磁盘划分*************************
[root@hyl ~]# fdisk -l
Disk /dev/sda: 53.6 GB, 53687091200 bytes
255 heads, 63 sectors/track, 6527 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 1305 10482381 83 Linux
/dev/sda2 1306 1827 4192965 82 Linux swap / Solaris
/dev/sda3 1828 6527 37752750 83 Linux
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 250 2008093+ 83 Linux
/dev/sdb2 251 500 2008125 83 Linux
/dev/sdb3 501 750 2008125 83 Linux
/dev/sdb4 751 1305 4458037+ 5 Extended
/dev/sdb5 751 875 1004031 83 Linux
/dev/sdb6 876 1000 1004031 83 Linux
/dev/sdb7 1001 1305 2449881 83 Linux
--由此可以看出,sdb1、sdb2、sdb3为主分区,sdb5、sdb6、sdb7为逻辑分区
*************************举例:将sdb1格式化为ext3文件系统*************************
[root@hyl ~]# cd /
[root@hyl /]# mkdir data1
[root@hyl /]# mkfs.ext3 /dev/sdb1
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
251392 inodes, 502023 blocks
25101 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=515899392
16 block groups
32768 blocks per group, 32768 fragments per group
15712 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Writing inode tables: done
Creating journal (8192 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.
*************************
举例:为sdb1设置开机自动挂载
*************************
[root@hyl /]# vi /etc/fstab
--设置开机自动挂载
LABEL=/ / ext3 defaults 1 1
LABEL=/home /home ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
LABEL=SWAP-sda2 swap swap defaults 0 0
/dev/sdb1 /data1 ext3 defaults 0 0
~
~
~
"/etc/fstab" 8L, 608C written
[root@hyl /]# mount /dev/sdb1 /data1
[root@hyl /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 9.7G 5.4G 3.9G 59% /
/dev/sda3 35G 17G 17G 50% /home
tmpfs 1006M 0 1006M 0% /dev/shm
/dev/sdb1 1.9G 35M 1.8G 2% /data1
*****************************************************************************************************
Linux硬盘分区(二):删除
*****************************************************************************************************
*************************
举例:对sdb1进行umount
*************************
[root@hyl /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 9.7G 5.4G 3.9G 59% /
/dev/sda3 35G 17G 17G 50% /home
tmpfs 1006M 0 1006M 0% /dev/shm
/dev/sdb1 1.9G 35M 1.8G 2% /data1
[root@hyl /]# umount /data1
[root@hyl /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 9.7G 5.4G 3.9G 59% /
/dev/sda3 35G 17G 17G 50% /home
tmpfs 1006M 0 1006M 0% /dev/shm
[root@hyl /]# fdisk -l
Disk /dev/sda: 53.6 GB, 53687091200 bytes
255 heads, 63 sectors/track, 6527 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 1305 10482381 83 Linux
/dev/sda2 1306 1827 4192965 82 Linux swap / Solaris
/dev/sda3 1828 6527 37752750 83 Linux
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 250 2008093+ 83 Linux
/dev/sdb2 251 500 2008125 83 Linux
/dev/sdb3 501 750 2008125 83 Linux
/dev/sdb4 751 1305 4458037+ 5 Extended
/dev/sdb5 751 875 1004031 83 Linux
/dev/sdb6 876 1000 1004031 83 Linux
/dev/sdb7 1001 1305 2449881 83 Linux
*************************对第二块磁盘操作(即/dev/sdb)*************************
[root@hyl /]# fdisk /dev/sdb
The number of cylinders for this disk is set to 1305.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
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
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help): p
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 250 2008093+ 83 Linux
/dev/sdb2 251 500 2008125 83 Linux
/dev/sdb3 501 750 2008125 83 Linux
/dev/sdb4 751 1305 4458037+ 5 Extended
/dev/sdb5 751 875 1004031 83 Linux
/dev/sdb6 876 1000 1004031 83 Linux
/dev/sdb7 1001 1305 2449881 83 Linux
*************************删除分区:sdb1及其它*************************
Command (m for help): d
--输入删除指令
Partition number (1-7): 1
--输入删除的分区号
Command (m for help): p
--打印分区表
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb2 251 500 2008125 83 Linux
/dev/sdb3 501 750 2008125 83 Linux
/dev/sdb4 751 1305 4458037+ 5 Extended
/dev/sdb5 751 875 1004031 83 Linux
/dev/sdb6 876 1000 1004031 83 Linux
/dev/sdb7 1001 1305 2449881 83 Linux
--可以看到sdb1已经被删除了
--接下来同理,删除其它分区
Command (m for help): d
Partition number (1-7): 2
Command (m for help): d
Partition number (1-7): 3
Command (m for help): d
Partition number (1-7): 4
Command (m for help): p
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
Command (m for help): w
--保存退出
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
--现在可以移除磁盘了