磁盘管理操作
磁盘管理操作
虚拟环境centos7.3
fdisk
用法:
fdisk [选项] <磁盘> 更改分区表
fdisk [选项] -l <磁盘> 列出分区表
fdisk -s <分区> 给出分区大小(块数)
选项:
-b <大小> 扇区大小(512、1024、2048或4096)
-c[=<模式>] 兼容模式:“dos”或“nondos”(默认)
-h 打印此帮助文本
-u[=<单位>] 显示单位:“cylinders”(柱面)或“sectors”(扇区,默认)
-v 打印程序版本
-C <数字> 指定柱面数
-H <数字> 指定磁头数
-S <数字> 指定每个磁道的扇区数
一、磁盘分区
1.在做磁盘分区之前关闭虚拟机添加一块20G的磁盘。
添加之后记得点下面的确定可以应用上。
2.添加完成之后开始查看硬盘是否应用成功。sda是虚拟机完成安装的时候自己带的硬盘,sdb是刚刚新安装的20G硬盘。
- [root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─cl-root 253:0 0 17G 0 lvm /
└─cl-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 20G 0 disk
sr0 11:0 1 4.1G 0 rom
3.开始磁盘分区
- [root@localhost ~]# fdisk /dev/sdb
- 欢迎使用 fdisk (util-linux 2.23.2)。
- 更改将停留在内存中,直到您决定将更改写入磁盘。
- 使用写入命令前请三思。
- Device does not contain a recognized partition table
- 使用磁盘标识符 0xccd887dc 创建新的 DOS 磁盘标签。
- 命令(输入 m 获取帮助):m
命令操作- a toggle a bootable flag
- b edit bsd disklabel
- c toggle the dos compatibility flag
- d delete a partition
- g create a new empty GPT partition table
- G create an IRIX (SGI) partition table
- 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)
磁盘的分区使用到的命令有 n、p、e、l、w等。
n:添加一个分区
p:创建新的主分区
e:创建一个扩展分区
l:创建逻辑分区
w:保存磁盘并退出
4.创建一个1G的主分区
- 命令(输入 m 获取帮助):n
- Partition type:
- p primary (0 primary, 0 extended, 4 free)
- e extended
- Select (default p): p
- 分区号 (1-4,默认 1):1
- 起始 扇区 (2048-41943039,默认为 2048):
- 将使用默认值 2048
- Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):+1G
- 分区 1 已设置为 Linux 类型,大小设为 1 GiB
5.继续输入创建一个5G的扩展分区(也可以不设置5G,在+5G的位置输入,默认也可以)
- 命令(输入 m 获取帮助):n
- Partition type:
- p primary (1 primary, 0 extended, 3 free)
- e extended
- Select (default p): e
- 分区号 (2-4,默认 2):2
- 起始 扇区 (2099200-41943039,默认为 2099200):
- 将使用默认值 2099200
- Last 扇区, +扇区 or +size{K,M,G} (2099200-41943039,默认为 41943039):+5G
- 分区 2 已设置为 Extended 类型,大小设为 5 GiB
6.逻辑分区创建在扩展分区空间内才能创建
- 命令(输入 m 获取帮助):n
- Partition type:
- p primary (1 primary, 1 extended, 2 free)
- l logical (numbered from 5)
- Select (default p): l
- 添加逻辑分区 5
- 起始 扇区 (2101248-12584959,默认为 2101248):
- 将使用默认值 2101248
- Last 扇区, +扇区 or +size{K,M,G} (2101248-12584959,默认为 12584959):+4G
- 分区 5 已设置为 Linux 类型,大小设为 4 GiB
7.磁盘分区完成使用w命令保存退出
- 命令(输入 m 获取帮助):w
- The partition table has been altered!
- Calling ioctl() to re-read partition table.
- 正在同步磁盘。
8.让内核识别硬盘分区的变化
- [root@localhost ~]# partprobe /dev/sdb
9.查看分区是否创建成功(查看命令fdisk -l)
- [root@localhost ~]# fdisk -l
- ***sda***
- 磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
- Units = 扇区 of 1 * 512 = 512 bytes
- 扇区大小(逻辑/物理):512 字节 / 512 字节
- I/O 大小(最小/最佳):512 字节 / 512 字节
- 磁盘标签类型:dos
- 磁盘标识符:0xccd887dc
- 设备 Boot Start End Blocks Id System
- /dev/sdb1 2048 2099199 1048576 83 Linux
- /dev/sdb2 2099200 12584959 5242880 5 Extended
- /dev/sdb5 2101248 10489855 4194304 83 Linux
这里的lsblk查看的有 sdb1、sdb2、sdb5创建完成。
磁盘分区中的前四个分区是留给主分区和扩展分区的,所以逻辑分区是从第五个开始的。
10.创建文件系统/格式化
1)将sdb1格式化成ext4格式。
- [root@localhost ~]# mkfs -t ext4 /dev/sdb1
- mke2fs 1.42.9 (28-Dec-2013)
- 文件系统标签=
- OS type: Linux
- 块大小=4096 (log=2)
- 分块大小=4096 (log=2)
- Stride=0 blocks, Stripe width=0 blocks
- 65536 inodes, 262144 blocks
- 13107 blocks (5.00%) reserved for the super user
- 第一个数据块=0
- Maximum filesystem blocks=268435456
- 8 block groups
- 32768 blocks per group, 32768 fragments per group
- 8192 inodes per group
- Superblock backups stored on blocks:
- 32768, 98304, 163840, 229376
- Allocating group tables: 完成
- 正在写入inode表: 完成
- Creating journal (8192 blocks): 完成
- Writing superblocks and filesystem accounting information: 完成
2)将sdb5格式化成xfs格式。
- [oot@localhost ~]# mkfs.xfs /dev/sdb5
- meta-data=/dev/sdb5 isize=512 agcount=4, agsize=262144 blks
- = sectsz=512 attr=2, projid32bit=1
- = crc=1 finobt=0, sparse=0
- data = bsize=4096 blocks=1048576, imaxpct=25
- = sunit=0 swidth=0 blks
- naming =version 2 bsize=4096 ascii-ci=0 ftype=1
- log =internal log bsize=4096 blocks=2560, version=2
- = sectsz=512 sunit=0 blks, lazy-count=1
- realtime =none extsz=4096 blocks=0, rtextents=0
11.将sdb1、sdb5分别临时挂载在新建的/data/web和/data/linux中,关机重启之后自动卸载
- [root@localhost ~]# mkdir -p data/web/
- [root@localhost ~]# mkdir -p data/linux/
- [root@localhost data]# ls
- linux web
- [root@localhost web]# mount /dev/sdb1 /data/web/
- mount:/dev/sdb1 已经挂载到 /data/web 上
[root@localhost ~]# mount /dev/sdb5 /data/linux
mount: /dev/sdb5 已经挂载到 /data/linux 上
12.执行上面第8的语句,查看sdb1和sdb5挂载情况、分区的大小、还有文件系统
- [root@localhost ~]# df -hT |grep sdb
- /dev/sdb1 ext4 976M 2.6M 907M 1% /data/web
- /dev/sdb5 xfs 4.0G 33M 4.0G 1% /data/linux
13.卸载挂载
- [root@localhost ~]# umount /dev/sdb5
14.实现开机自动挂载
- [root@localhost ~]# tail -2 /etc/fstab
- /dev/sdb1 /data/web ext4 defaults 0 0
- /dev/sdb5 /data/linux xfs defaults 0 0
15.挂载/etc/fstab文件上的所有磁盘信息
- [root@localhost ~]# mount -a
16.永久挂载完成关机之后挂载信息任然在
- [root@localhost ~]# df -hT | grep "sdb"
- /dev/sdb1 ext4 976M 2.6M 907M 1% /data/web
- /dev/sdb5 xfs 4.0G 33M 4.0G 1% /data/linux
二、扩展swap分区
1.查看swap分区
- [root@localhost ~]# free -m
- total used free shared buff/cache available
- Mem: 1823 144 1213 8 465 1483
- Swap: 2047 0 2047
2.扩展swap分区
- 命令(输入 m 获取帮助):n
- Partition type:
- p primary (1 primary, 1 extended, 2 free)
- l logical (numbered from 5)
- Select (default p): l
- 添加逻辑分区 6
- 起始 扇区 (10491904-12584959,默认为 10491904):
- 将使用默认值 10491904
- Last 扇区, +扇区 or +size{K,M,G} (10491904-12584959,默认为 12584959):+500M
- 分区 6 已设置为 Linux 类型,大小设为 500 MiB
- 命令(输入 m 获取帮助):t
- 分区号 (1,2,5,6,默认 6):6
- Hex 代码(输入 L 列出所有代码):82
- 已将分区“Linux”的类型更改为“Linux swap / Solaris”
3.扩展swap分区完成
- [root@localhost ~]# free -m
- total used free shared buff/cache available
- Mem: 1823 143 1205 8 474 1484
- Swap: 2047 0 2047
4.挂载swap分区
- [root@localhost ~]# cat /etc/fstab
*** ***
/dev/sdb6 swap swap defaults 0 0
5.挂载/etc/fsta文件中所有的设备
- [root@localhost ~]# mount -a
6.创建swap的文件系统
- [root@localhost ~]# mkswap /dev/sdb6
- 正在设置交换空间版本 1,大小 = 511996 KiB
- 无标签,UUID=eaabc8aa-073c-492f-aa89-1c97d06b8fcd
7.启动swap分区
- [root@localhost ~]# swapon -a
8.查看swap分区
- [root@localhost ~]# free -m
- total used free shared buff/cache availa
- bleMem: 1823 144 1204 8 474 1
- 483Swap: 2547 0 2547
9.关闭swap分区
- [root@localhost ~]# swapoff /dev/sdb6
三、
- [root@localhost ~]# df -i /dev/sdb1
- 文件系统 Inode 已用(I) 可用(I) 已用(I)% 挂载点
- /dev/sdb1 65536 11 65525 1% /data/web
这里的sdb1的inode节点的数量有65525
2.查看inode节点剩余的数量
- [root@localhost ~]# stat /etc/fstab
- 文件:"/etc/fstab"
- 大小:576 块:8 IO 块:4096 普通文件
- 设备:fd00h/64768d Inode:16799607 硬链接:1
- 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)
- 环境:system_u:object_r:etc_t:s0
3.查看/data/web目录下的文件
- [root@localhost ~]# ls /data/web/
***略***
b9999 lost+found