linux磁盘分区、逻辑卷
1、查看磁盘分区
lsblk
2、查看分区情况
fdisk -l
3、创建分区
Syncing disks.
使用lsblk查看,分区sdb1建立成功
4、挂载分区
在挂载前要先将分区进行格式化,格式化相当于安装文件系统,文件系统有xfs和ext4等,一般格式化成ext4格式的
mkfs.ext4 /dev/sdb1
临时挂载
挂载分区:
mount /dev/sdb1 /opt/disk1/
分区名称 挂载目录
永久挂载
在/etc/fstab中添加:
/dev/sdb1 /opt/disk1 ext4 defaults 0 0
分区名称 挂载目录 文件系统 不启用检查
也可以使用UUID的形式挂载
查看方式:blkid
42474f64-e185-46f6-be91-d010055ce6b5(uuid号) opt/disk1 ext4 defaults 0 0
挂载生效:
mount -a
5、取消挂载
临时取消:
umount /opt/disk1
挂载目录
永久取消:
将/etc/fstab中的挂载信息删除
6、删除分区
fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): d 选择d,删除分区
Partition number (1-3, default 3): 3 选择要删除的分区编号
Partition 3 is deleted
Command (m for help): w 保存退出
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
7、逻辑卷
创建
先创建pv(物理卷)
再创建vg(卷组):将pv加进vg中,
最后创建lv(逻辑卷):lv要根据vg窗口,即lv从vg中获取空间
创建pv
一般一块硬盘创建一个pv
pvcreate /dev/sdb
硬盘名称
创建vg
vgcreate vg1 /dev/sdb
卷组名称 物理卷名称
挂载后查看
扩缩容
扩容:
扩容vg:
vgextend vg1 /dev/sdb pv名称
扩容lv:
1)lvextend -L +2G /dev/vg1/lv1
扩容多少 lv名称
2)lvresize -L 7G /dev/vg1/lv1
重新设定lv大小
3)lvextend -l +100%FREE /dev/vg1/lv1
表示将卷组剩余空间全部扩给逻辑卷lv1,百分之几就表示将卷组剩余空间的百分之多少分配给逻辑卷
扩容后发现用df -h查看还是原来的大小
原因:lvextend是扩充逻辑卷空间,此时还必须要扩展文件系统
ext4:resize2fs -p -F /dev/vg1/lv1
xfs:xfs_growfs /dev/centos/root
缩容:
注意:缩容vg,需先删除lv,否则会失败
缩容vg:
vgreduce vg1 /dev/sdb 相当于将pv从vg中去掉
vg名称 pv路径
缩容lv:
lvreduce -L -2G /dev/vg1/lv1
缩容多少 lv路径
或:
lvresize -L 10G /dev/vg1/lv1
重新设定lv大小
注意:xfs格式的逻辑卷不能缩容,如果要缩容需先格式化成ext4格式的,缩容时要查看当前逻辑卷已使用空间大小,缩容后的大小不能低于当前已使用空间
挂载后逻辑卷缩容方法:
先卸载逻辑卷
检查逻辑卷:
e2fsck -f /dev/vg1/lv1
更新逻辑卷信息大小:
resize2fs /dev/vg1/lv1 10G
重新设定逻辑卷大小:
lvresize -L 10G /dev/vg1/lv1
挂载
删除
原则:先卸载、删除lv,再将vg删除,最后将pv删除
删除pv:
pvremove /dev/sdb pv路径
删除vg:
vgremove vg1 vg名称
删除lv:
lvremove /dev/vg1/lv3 lv 路径
注意
数据迁移是不可以跨越vg卷组
应用实例:逻辑卷扩容
本次是将sdb的剩余空间10G全部扩展到逻辑卷lv_mysql下
查看容量是否足够:
lsblk
建立物理卷:
fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): n Partition type: p primary (1 primary, 0 extended, 3 free) e extended Select (default p): p Partition number (2-4, default 2): First sector (41943040-62914559, default 41943040): Using default value 41943040 Last sector, +sectors or +size{K,M,G} (41943040-62914559, default 62914559): Using default value 62914559 Partition 2 of type Linux and of size 10 GiB is set Command (m for help): wq The partition table has been altered! Calling ioctl() to re-read partition table. WARNING: Re-reading the partition table failed with error 16: Device or resource busy. The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8) Syncing disks.
partprobe
将sdb2添加到卷组vg_data中:
vgextend vg_data /dev/sdb2
扩容逻辑卷lv_mysql
lvextend -l +100%FREE /dev/vg_data/lv_mysql
xfs_growfs /dev/vg_data/lv_mysql
查看是否扩容成功:
8、磁盘raid
raid0
raid1
raid5
raid6
raid10
服务器物理磁盘状态
9、文件inode
查看索引节点:ls -i
查看分区inode使用情况:df -i
IUse%:分区inode使用率
脚本内容:
确定逻辑卷建立信息
建立物理卷(首次进行逻辑划分)
建立卷组
建立逻辑卷
挂载逻辑卷
执行:sh lvm_create
按照提示分别输入逻辑卷名称,逻辑卷大小,挂载目录,文件系统格式
逻辑卷名称以lv开头