用到的命令
fdisk #分区工具
mkfs #格式化分区
mount #挂载分区
umunt #取消挂载分区
df -h #能看到已经挂载的磁盘信息(容量,挂载点,使用量等)
dumpe2fs /dev/sdc5 | grep UUID #获得设备UUID
blkid /dev/sdc5 #获得设备UUID
e2label /dev/sdc1 #查看设备的标签(该命令只对ext系列有用)
e2label /dev/sdc1 mysql #设置设备标签 (格式化后消失该命令只对ext系列有用)
RHEL-7
MBR 磁盘主引导记录占用空间(512B)
446B:存放引导程序 grub grub2
64B:存放分区表信息
2B :存放结束标志
分区表(64B)
每一条分区对应信息要16B空间
sdb1 2048 --- 1022982
所以分区表最多存放4个主分区信息,要划分更多的分区就需要使用扩展分区,扩展分区不能存数据,在创建了扩展分区情况下创建逻辑分区就能实现多个分区
创建分区和格式化步骤
- 创建分区
fdisk帮助
p print the partition table 打印分区表
n add a new partition 新增分区表
d delete a partition 删除分区表
l list known partition types 列出已知的 分区类型
w write table to disk and exit 将分区表写入磁盘
t change a partition's system id 修改磁盘 ID 标识符号
fdisk /dev/sdb
命令(输入 m 获取帮助):n #创建新分区
#选择创建主分区p或者扩展分区e
Partition type:
p primary (3 primary, 0 extended, 1 free)
e extended
Select (default e):p
#依次设置分区号、起始位置、磁盘分区大小,直接回车使用默认值
#注意:创建扩展分区时大小默认为剩下的空间,选默认大小,比如还剩7G空间,你扩展分区只设置2G,你在创建逻辑分区时总大小就不能超过2G,会造成空间浪费,所以设置7G
分区号 (1-4,默认 1):自定义
起始 扇区 (2048-20971519,默认为 2048):自定义
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-20971519,默认为 20971519):+1G
- 格式化分区
mkfs -t ext4 /dev/sdb1 #格式化sdb1分区为ext4 也可以是xfs或其他格式
- 挂载分区使用
mount /dev/sdb1 /d1 #挂载sdb1到d1目录
毁掉mbr分区表
dd if=/dev/zero of=/dev/sdb bs=512 count=1
备份mbr分区表
只要磁盘没有被格式化,恢复磁盘使用只需要改分区表就可以,格式化后的磁盘就不在讨论范围
方法:
1、fdisk -l >> /sdb.bak #将分区表信息保存/到sdb.bak
2、dd if=/dev/sdb of=/sdb.mbr bs=512 count=1 #将引导记录512内容备份
恢复分区表
前后分区是连续的,前一个分区改变end参数,会改变后一个分区的start参数
方法:
1、重复创建分区的步骤,在设置分区大小时按你备份的参数设置,比如备份内容为
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 2099199 1048576 83 Linux
/dev/sdb2 2099200 4196351 1048576 83 Linux
/dev/sdb3 4196352 6293503 1048576 83 Linux
设置第一个分区信息如下:
分区号 (1-4,默认 1):1
起始 扇区 (2048-20971519,默认为 2048):2048
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-20971519,默认为 20971519):2099199 ##其余分区一样设置
2、使用第二种分区表备份,就使用本方法
#红帽6.5需要执行partprobe /dev/sdb 装载分区才行
dd if=/sdb.mbr of=/dev/sdb1 bs=512 count=1
总结:如果分区参数设置不匹配,会造成无法恢复
开机自动挂载分区
方法一(推荐):
将挂载命令写入到 /etc/rc.d/rc.local 文件中。
mount /dev/sdb1 /d1
RHEL-6 可以直接使用 /etc/rc.d/rc.local
RHEL-7 必须先手动给 /etc/rc.d/rc.local 添加执行权限
方法二:
/etc/fstab 文件
设置设备的自动挂载,并且能够设置设备的检测动作,以及其他的挂载参数
添加的形式3种:
1、UUID方式:
UUID=74161e50-5a59-4c6c-acf6-13b1f560b103 /data xfs defaults 0 0
2、绝对路径方式:
/dev/sdb1 /data xfs defaults 0 0
3、标签方式(前提是用e2label设置标签)
mysql /data xfs defaults 0 0