磁盘管理
fdisk -l 查看磁盘分区
fdisk /dev/sdb分区
常用命令
m查看帮助
p 查看分区情况
n 新建分区
q 不保存退出分区
w 保存退出分区
partprobe 刷新分区表
mke2fs -t ext4 /dev/sdb5 格式化分区
mkfs.ext4 /dev/sdb5
mke2fs 不支持将分区格式化为xfs格式,只能用mkfs.xfs
mount /dev/sdb5 /mnt/ 挂载
umount /mnt/ 取消挂载
mount -o
async/sync async表示内存和磁盘不同步,每隔一段时间把内存数据写入磁盘,sync则实时同步内存和磁盘的数据
ro 只读
rw 可读可写
exec/noexec 允许/不允许可执行文件执行。
auto/noauto 开机自动/不自动挂载
default 按照缺省设置挂载 包含了rw,suid,dev,exec,auto,nouser,async
/etc/fstab 挂载的配置文件
df -h 查看挂载的分区
blkid 查看分区的uuid
挂载分区 推荐用uuid来做标识
两个分区同时挂载到一个挂载点,后挂载的分区会把前面挂载的分区覆盖,取消挂载会还原
mount -o loop /1.data /mnt/ 文件直接挂载
dd的应用
dd if=(指定源) of=指定文件 bs=4096(定义块大小) count=(定义块的数量)
lvm配置 yum install-y lvm2(以下内容摘自猿课阿铭老师课件!)
LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上、文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性。支持动态扩充磁盘空间。
首先从空的硬盘sdb上创建两个分区sdb1 1G, sdb22G。
1)创建逻辑卷
pvcreate /dev/sdb1 /dev/sdb2 //创建物理卷
pvdisplay //可以列出已经创建的物理卷
vgcreate vgdata /dev/sdb1 /dev/sdb2 //创建卷组 vgdata ,并将刚才创建好的两个物理卷加入该卷组
vgdisplay //可以列出已经建好的卷组
# 默认PE大小为4MB,PE是卷组的最小存储单元.可以通过 –s参数修改大小。
lvcreate -L 500M -n lvdata1 vgdata //分割500M给新的逻辑卷lvdata1
lvdisplay //列出当前的逻辑卷
mkfs.ext4 /dev/vgdata/lvdata1 //格式化逻辑卷
mount /dev/vgdata/lvdata1 /aming //挂载逻辑卷
2) 扩展逻辑卷
逻辑卷lvdata1不够用了,我们如何给他增加空间呢?
lvextend –L +500M /dev/vgdata/lvdata1 //给lvdata1增加500M空间。
resize2fs /dev/vgdata/lvdata1 //同步文件系统
3)扩展卷组
当卷组不够用的情况下,我们也是可以扩展卷组的。我们再创建一个新的分区叫做/dev/sdb3.
vgextend vgdata /dev/sdb3 //把sdb3加入到卷组vgdata中
4)减少逻辑卷大小
卸载 --> e2fsck 检测剩余空间 -->resize2fs 同步文件系统 --> 使用lvreduce命令将逻辑卷减少
注意:文件系统大小和逻辑卷大小一定要保持一致才行。如果逻辑卷大于文件系统,由于部分区域未格式化成文件系统会造成空间的浪费。
umount /data1
e2fsck -f /dev/mapper/vgdata-lvdata1
resize2fs /dev/mapper/vgdata-lvdata1 700M
lvreduce -L 700M /dev/vgdata/lvdata1
mount /dev/vgdata/lvdata1 /data1
5) 当磁盘或分区损坏时,如何转移数据
pvmove 转移空间数据 --> vgreduce命令将即将坏的磁盘或者分区从卷组vgdata里面移除除去 --> pvremove命令将即将坏的磁盘或者分区从系统中删除掉 --> 拆除或修复磁盘
pvmove /dev/sdb1
vgreduce vgdata /dev/sdb1
pvremove /dev/sdb1
6) 删除整个逻辑卷
umount卸载逻辑卷 --> 修改配置文件/etc/fstab(若是之前更改过) --> lvremove 删除逻辑卷lvdata1 -->vgremove 删除卷组vgdata --> pvremove 将物理卷转化成普通分区
umount /dev/vgdata/lvdata1
lvremove /dev/vgdata/lvdata1
vgremove vgdata
pvremove /dev/sdb2
pvremove /dev/sdb3