1 为什么要挂载
CentOS 6.5 Linux将所有的硬件设备都当做文件来处理,因此当使用光驱等硬件设备时,必须将其挂载到系统中,只有这样Linux才能识别。最基本的也是最上层的就是根目录(/),下面可以有很多目录,根目录里可以加载成一个硬盘分区,下面的任意目录,也可以加载另一个硬盘分区,正是因为这种组织方式,挂载必须挂载到某个特定的目录中。
2 新建分区
2.1 添加硬盘
在服务器上新添加一块硬盘,重新启动,按F5进入开始做RAID,在此不做介绍。系统启动后通过fdisk查看所有分区信息。
print?
- <span style=”font-size:12px;”>[root@localhost ~]# fdisk -l
- <span style=”color:#ff0000;”>Disk /dev/sdb: 599.9 GB, 599932844032 bytes</span>
- 255 heads, 63 sectors/track, 72937 cylinders
- Units = cylinders of 16065 * 512 = 8225280 bytes
- Sector size (logical/physical): 512 bytes / 512 bytes
- I/O size (minimum/optimal): 262144 bytes / 524288 bytes
- Disk identifier: 0xa70f5417
- Disk /dev/sda: 300.0 GB, 299966445568 bytes
- 255 heads, 63 sectors/track, 36468 cylinders
- Units = cylinders of 16065 * 512 = 8225280 bytes
- Sector size (logical/physical): 512 bytes / 512 bytes
- I/O size (minimum/optimal): 262144 bytes / 262144 bytes
- Disk identifier: 0x00002b09
- Device Boot Start End Blocks Id System
- /dev/sda1 * 1 64 512000 83 Linux
- Partition 1 does not end on cylinder boundary.
- /dev/sda2 64 36469 292422656 8e Linux LVM
- Disk /dev/mapper/VolGroup-lv_root: 53.7 GB, 53687091200 bytes
- 255 heads, 63 sectors/track, 6527 cylinders
- Units = cylinders of 16065 * 512 = 8225280 bytes
- Sector size (logical/physical): 512 bytes / 512 bytes
- I/O size (minimum/optimal): 262144 bytes / 262144 bytes
- Disk identifier: 0×00000000
- Disk /dev/mapper/VolGroup-lv_swap: 30.0 GB, 29993467904 bytes
- 255 heads, 63 sectors/track, 3646 cylinders
- Units = cylinders of 16065 * 512 = 8225280 bytes
- Sector size (logical/physical): 512 bytes / 512 bytes
- I/O size (minimum/optimal): 262144 bytes / 262144 bytes
- Disk identifier: 0×00000000
- Disk /dev/mapper/VolGroup-lv_home: 215.8 GB, 215759192064 bytes
- 255 heads, 63 sectors/track, 26231 cylinders
- Units = cylinders of 16065 * 512 = 8225280 bytes
- Sector size (logical/physical): 512 bytes / 512 bytes
- I/O size (minimum/optimal): 262144 bytes / 262144 bytes
- Disk identifier: 0×00000000
- </span>
通过查看,一块600GB的硬盘已添加成功。
2.2 分区操作
(1)显示帮助菜单,通过fdisk命令来为新的硬盘分区,通过fdisk命令查看,新的硬盘为/dev/sdb
print?
- <span style=”font-size:12px;”>[root@localhost ~]# fdisk /dev/sdb
- Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
- Building a new DOS disklabel with disk identifier 0x14c853e7.
- Changes will remain in memory only, until you decide to write them.
- After that, of course, the previous content won’t be recoverable.
- Warning: invalid flag 0×0000 of partition table 4 will be corrected by w(rite)
- 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):
- </span>
输入m后会查看这些命令的介绍
print?
- <span style=”font-size:12px;”>Command (m for help): m
- Command action
- a toggle a bootable flag // 设置可引导标记
- b edit bsd disklabel // 编辑bsd磁盘标签
- c toggle the dos compatibility flag // 设置DOS操作系统兼容标记
- 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 // 建立空白DOS分区表
- p print the partition table // 显示分区列表
- q quit without saving changes // 不保存退出
- s create a new empty Sun disklabel // 新建空白SUN磁盘标签
- t change a partition’s system id // 改变一个分区的系统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):
- </span>
(2)新建主分区,输入n开始新建分区
print?
- <span style=”font-size:12px;”>Command (m for help): n
- Command action
- e extended // 扩展分区
- p primary partition (1-4) // 主分区
- p // 先新建一个主分区
- Partition number (1-4): 1 // 输入主分区的分区号
- First cylinder (1-72937, default 1): // 默认从第一个磁柱开始
- Using default value 1
- Last cylinder, +cylinders or +size{K,M,G} (1-72937, default 72937): +300G
- // 在此输入最后一个磁柱,表示此分区的大小,这里需要大家自己换算一个空间大小,但Linux提供了更加人性化的表示方式,可以直接输入空间大小+300G
- </span>
(3)新建扩展分区,再次输入n新建
print?
- <span style=”font-size:12px;”>Command (m for help): n
- Command action
- e extended
- p primary partition (1-4)
- e // 新建扩展分区
- Partition number (1-4): 2 // 分区号
- First cylinder (39164-72937, default 39164): // 默认即可
- Using default value 39164
- Last cylinder, +cylinders or +size{K,M,G} (39164-72937, default 72937):
- // 若把剩余的空间全部分给扩展分区,默认即可,若只利用其一部分,按上述的步骤操作
- Using default value 72937
- </span>
(4)查看分区情况,输入p
print?
- <span style=”font-size:12px;”>Command (m for help): p
- Disk /dev/sdb: 599.9 GB, 599932844032 bytes
- 255 heads, 63 sectors/track, 72937 cylinders
- Units = cylinders of 16065 * 512 = 8225280 bytes
- Sector size (logical/physical): 512 bytes / 512 bytes
- I/O size (minimum/optimal): 262144 bytes / 524288 bytes
- Disk identifier: 0x14c853e7
- Device Boot Start End Blocks Id System
- /dev/sdb1 1 39164 314584544+ 83 Linux
- Partition 1 does not start on physical sector boundary.
- /dev/sdb2 39164 72937 271281876+ 5 Extended
- </span>
(5)新建逻辑分区
print?
- <span style=”font-size:12px;”>Command (m for help): n
- Command action
- l logical (5 or over) // 逻辑分区
- p primary partition (1-4)
- l // 新建逻辑分区
- First cylinder (39164-72937, default 39165): // 从扩展分区中划分逻辑分区
- Using default value 39165
- Last cylinder, +cylinders or +size{K,M,G} (39165-72937, default 72937):
- Using default value 72937
- </span>
再次查看可知:
print?
- <span style=”font-size:12px;”>Command (m for help): p
- Disk /dev/sdb: 599.9 GB, 599932844032 bytes
- 255 heads, 63 sectors/track, 72937 cylinders
- Units = cylinders of 16065 * 512 = 8225280 bytes
- Sector size (logical/physical): 512 bytes / 512 bytes
- I/O size (minimum/optimal): 262144 bytes / 524288 bytes
- Disk identifier: 0x14c853e7
- Device Boot Start End Blocks Id System
- /dev/sdb1 1 39164 314584544+ 83 Linux
- Partition 1 does not start on physical sector boundary.
- /dev/sdb2 39164 72937 271281876+ 5 Extended
- /dev/sdb5 39165 72937 271281622+ 83 Linux
- Partition 5 does not start on physical sector boundary.
- </span>
由上述信息可知,逻辑分区的分区号是从5开始的,这是因为主分区+扩展分区最多只能分4个,而逻辑分区可以分若干个,SCSI最多可分16个逻辑分区,IDE最多分63个分区。
输入w保存退出
print?
- <span style=”font-size:12px;”>Command (m for help): w
- The partition table has been altered!
- Calling ioctl() to re-read partition table.
- Syncing disks.</span>
3 格式化
3.1 格式化主分区
建立好分区之后,要对其进行格式化操作。
print?
- <span style=”font-size:12px;”>[root@localhost ~]# mkfs -t ext4 /dev/sdb1
- mke2fs 1.41.12 (17-May-2010)
- /dev/sdb1 alignment is offset by 229888 bytes.
- This may result in very poor performance, (re)-partitioning suggested.
- Filesystem label=
- OS type: Linux
- Block size=4096 (log=2)
- Fragment size=4096 (log=2)
- Stride=64 blocks, Stripe width=128 blocks
- 19668992 inodes, 78646136 blocks
- 3932306 blocks (5.00%) reserved for the super user
- First data block=0
- Maximum filesystem blocks=4294967296
- 2401 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, 71663616
- Writing inode tables: done
- Creating journal (32768 blocks): done
- Writing superblocks and filesystem accounting information:
- done
- This filesystem will be automatically checked every 23 mounts or
- 180 days, whichever comes first. Use tune2fs -c or -i to override.</span>
3.2 格式化扩展分区
主分区已格式化完成,接下来格式化扩展分区
print?
- [root@localhost ~]# mkfs -t ext4 /dev/sdb2
- 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).
结果显示出现错误,这是因为直接格式化扩展分区是不允许的,只能格式化主分区和逻辑分区。
3.3 格式化逻辑分区
print?
- [root@localhost ~]# mkfs -t ext4 /dev/sdb5
- mke2fs 1.41.12 (17-May-2010)
- /dev/sdb5 alignment is offset by 2048 bytes.
- This may result in very poor performance, (re)-partitioning suggested.
- Filesystem label=
- OS type: Linux
- Block size=4096 (log=2)
- Fragment size=4096 (log=2)
- Stride=64 blocks, Stripe width=128 blocks
- 16957440 inodes, 67820405 blocks
- 3391020 blocks (5.00%) reserved for the super user
- First data block=0
- Maximum filesystem blocks=4294967296
- 2070 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 23 mounts or
- 180 days, whichever comes first. Use tune2fs -c or -i to override.
4 挂载
4.1 临时挂载
先建立两个空目录,作为挂载点
print?
- [root@localhost ~]# mkdir /disk1
- [root@localhost ~]# mkdir /home/disk5
挂载
print?
- [root@localhost ~]# mount /dev/sdb1 /disk1
- [root@localhost ~]# mount /dev/sdb5 /home/disk5
查看
print?
- [root@localhost ~]# mount
- /dev/mapper/VolGroup-lv_root on / type ext4 (rw)
- proc on /proc type proc (rw)
- sysfs on /sys type sysfs (rw)
- devpts on /dev/pts type devpts (rw,gid=5,mode=620)
- tmpfs on /dev/shm type tmpfs (rw,rootcontext=”system_u:object_r:tmpfs_t:s0″)
- /dev/sda1 on /boot type ext4 (rw)
- /dev/mapper/VolGroup-lv_home on /home type ext4 (rw)
- none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
- <span style=”color:#ff0000;”>/dev/sdb1 on /disk1 type ext4 (rw)
- /dev/sdb5 on /home/disk5 type ext4 (rw)</span>
挂载成功!
4.2 永久挂载
查看分区的UUID
print?
- [root@localhost ~]# blkid
- /dev/sda1: UUID=”c52896c1-468e-49a1-a57a-5c4dd643230c” TYPE=”ext4″
- /dev/sda2: UUID=”t8tBtG-4gaK-8OQH-lHdO-qUUt-OHE8-rrJb8B” TYPE=”LVM2_member”
- /dev/mapper/VolGroup-lv_root: UUID=”0ea03348-489d-4e85-a6c9-dba25dc9bfa4″ TYPE=”ext4″
- /dev/mapper/VolGroup-lv_swap: UUID=”06dcde24-f621-4e07-9846-1a2be5d3025d” TYPE=”swap”
- /dev/mapper/VolGroup-lv_home: UUID=”507c118a-e085-4d05-b349-d8a9f10b861c” TYPE=”ext4″
- <span style=”color:#ff0000;”>/dev/sdb1: UUID=”de95793a-c343-464b-a799-373ab1d9eb18″ TYPE=”ext4″
- /dev/sdb5: UUID=”548429b6-d343-4049-8775-0fb46c71945d” TYPE=”ext4″
- </span>
修改/etc/fstab文件
print?
- [root@localhost ~]# vi /etc/fstab
- #
- # /etc/fstab
- # Created by anaconda on Thu Apr 14 05:59:56 2016
- #
- # Accessible filesystems, by reference, are maintained under ’/dev/disk’
- # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
- #
- /dev/mapper/VolGroup-lv_root / ext4 defaults 1 1
- UUID=c52896c1-468e-49a1-a57a-5c4dd643230c /boot ext4 defaults 1 2
- /dev/mapper/VolGroup-lv_home /home ext4 defaults 1 2
- /dev/mapper/VolGroup-lv_swap swap swap defaults 0 0
- 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
- <span style=”color:#ff0000;”>UUID=de95793a-c343-464b-a799-373ab1d9eb18 /disk1 ext4 defaults 1 2
- UUID=548429b6-d343-4049-8775-0fb46c71945d /home/disk5 ext4 defaults 1 2</span>
因为fstab是系统启动的一个重要文件,所以我们要用mount -a来查看,若没有报错,则说明配置正确。
print?
- [root@localhost ~]# mount -a
再次查看确认
print?
- [root@localhost ~]# df -Th
- Filesystem Type Size Used Avail Use% Mounted on
- /dev/mapper/VolGroup-lv_root ext4 50G 769M 46G 2% /
- tmpfs tmpfs 32G 0 32G 0% /dev/shm
- /dev/sda1 ext4 485M 33M 427M 8% /boot
- /dev/mapper/VolGroup-lv_home ext4 198G 188M 188G 1% /home
- <span style=”color:#ff0000;”>/dev/sdb1 ext4 296G 191M 281G 1% /disk1
- /dev/sdb5 ext4 255G 188M 242G 1% /home/disk5</span>
5 注意事项
若fstab文件写错,则在开机启动时会报错,这时就不能远程对其进行操作,需要在本机上对fstab文件进行修改,但用vi/vim是编辑不了文件,这时候需要输入
[root@localhost~]# mount -o remount,rw /
此时就可以再次修改fstab这个文件了。