前言
在Linux服务器中,当现有硬盘的分区规划不能满足要求(例如,根分区的剩余空间过少,无法继续安装新的系统程序)时,就需要对硬盘中的分区进行重新规划和调整,有时候还需要添加新的硬盘设备来扩展存储空间
一、管理磁盘及分区
1、MBR分区
MBR分区(小于2TB) |
|
|
|
管理磁盘及分区 |
|
fdisk -l |
查看所有硬盘设备和分区信息 |
fdisk /dev/sdb |
进入sdb磁盘的管理界面 |
|
|
在Command (m for helo):后输入 |
|
m |
查看各种操作指令帮助信息 |
p |
查看分区情况 |
l或L |
查看分区格式及对应序号 |
|
|
n |
新建分区 |
n后输入p |
创建主分区 |
n后输入e |
创建扩展分区 |
n后输入l |
创建扩展分区的逻辑分区 |
设置分区大小时使用+数字M或+数字G |
|
|
|
d |
删除分区 |
先用p查看分区序号,使用d后,输入要删除的分区 |
|
|
|
t |
改分区格式(也可退出后在格式化时设置格式,查看格式用l或L) |
w |
保存并退出分区工具 |
q |
不保存退出分区工具 |
|
|
partprobe /dev/sdb |
刷新分区变化 |
|
|
格式化文件系统 |
|
mkfs -t 系统分区类型{82:swap,83:xfs} 分区{/dev/sdb1} |
|
mkfs -t vfat -F 32 分区{/dev/sdb1} |
将分区格式化为fat32系统 |
|
|
将sdb5设置为交换分区 |
|
fdisk -l /dev/sdb |
|
mkswap /dev/sdb5 |
创建swap分区 |
swapon /dev/sdb5 |
启用交换分区 |
swapoff /dev/sdb5 |
卸载交换分区 |
|
|
cat /proc/meminfo | grep SwapTotal |
查看总交换空间大小 |
swapon /dev/sdb5 |
启用交换分区 |
cat /proc/meminfo | grep SwapTotal |
确认交换分区增加 |
swapoff /dev/sdb5 |
停用交换分区 |
2、GPT分区
GPT分区(大于2TB) |
|
|
|
yum install parted -y |
|
parted /dev/sdb |
|
|
|
(parted))mkpart primary 0 -1 |
划分所有空间为一个分区 |
或 |
|
(parted)unit TB |
设置单位 |
(parted)mkpart primary 0 3 |
设置一个主分区,0~3代表主分区为3T大小 |
|
|
(parted)print |
查看设置的分区大小 |
(parted)quit |
退出parted设置 |
|
|
mkfs.ext4 -F /dev/sdb1 |
格式化 |
二、挂载、卸载文件系统
1、临时挂载
mount 储存设备位置 挂载目录位置 |
挂载 |
mount |
查看已挂载分区 |
|
|
挂载iso镜像文件要使用-o loop参数 |
|
mount -o loop xxxx.iso 挂载目录位置 |
|
|
|
卸载文件系统 |
|
umount 挂载点目录 |
|
umount 被挂载文件目录 |
|
2、永久挂载
cat /etc/fstab |
查看自动挂载的文件和分区 |
vim /etc/fstab后编辑挂载目录 |
配置自动挂载 |
mount -a |
启用fatab配置 |
|
|
查看磁盘文件类型及使用情况和挂载 |
|
df -hT |
|
h{容量单位} |
|
t{文件类型} |
|
|
|
开机出现Control-D,检查/etc/fstab,可能是错误挂载导致的,错误条目前面加#或直接删除 |
|
三、磁盘设置
1、LVM逻辑卷管理
lvm |
|
VG卷组(一个或多个分区或硬盘) |
|
PV物理卷(一个分区或整个硬盘) |
|
LV逻辑卷(物理卷分成多个pe小块空间,逻辑卷就由多个小块空间组成) |
|
|
|
pvscan |
扫描物理卷显示相关信息 |
pvcreate /dev/sdb1 /dev/sdb2 |
创建物理卷 |
pvdisplay /dev/sdb1 |
显示物理卷详细信息 |
pvremove |
移除物理卷 |
|
|
vgscan |
扫描卷组显示相关信息 |
vgcreate 卷组名 /dev/sdb1 /dev/sdb2 |
创建卷组 |
vgdisplay 卷组名 |
显示卷组详细信息 |
vgremove 卷组名 |
删除卷组 |
vgextend 卷组名 /dev/sdb5 |
添加卷到卷组中 |
|
|
lvscan |
扫描逻辑卷显示相关信息 |
lvcreate -L 容量大小 -n 逻辑卷名 卷组名 |
创建逻辑卷 |
lvdisplay /dev/卷组名/逻辑卷名 |
显示逻辑卷详细信息 |
lvextend -L +大小 /dev/卷组名/逻辑卷名 |
扩展逻辑卷大小 |
lvreduce -L -大小 /dev/卷组名/逻辑卷名 |
减少逻辑卷大小 |
|
|
xfs_growfs /dev/卷组名/逻辑卷名 |
重设大小 |
lvremove /dev/卷组名/逻辑卷名 |
删除逻辑卷 |
|
|
mkfs -t 系统分区类型 /dev/卷组名/逻辑卷名 |
格式化(不指定-t分区类型默认ext2,可不带参数) |
resize2fs /dev/vg01/lv01 |
挂载容量刷新(ext格式,挂载后容量扩展可刷新) |
xfs_growfs /dev/vg01/lv01 |
挂载容量刷新(xfs格式) |
2、磁盘配额
rpm -q xfsprogs |
查看磁盘配额软件安装情况 |
rpm -q quota |
查看是否安装磁盘配额管理软件 |
|
|
mount -o usrquota,grpquota /dev/卷组名/逻辑卷名 |
带磁盘配额管理功能的挂载,没该功能要卸载再挂载 |
vim /etc/fstab |
开机自动挂载(在文件etc/fstab中挂载项defaults后加入usrquota,grpquota) |
mount -a 后 df -hT |
启用fstab挂载文件的配置,df -hT查看挂载 |
(1)用户
xfs_quota -x -c 'limit -u bsoft=磁盘容量软限制数值M bhard=磁盘容量硬限制数值M isoft=磁盘文件数软限制数值 ihard=磁盘文件数硬限制数值 用户名' 挂载目录 |
|
查看文件对用户磁盘配额容量限制 |
xfs_quota -c ‘quota -uv 用户名’ 文件夹位置 |
查看文件对用户磁盘配额文件数限制 |
xfs_quota -c ‘quota -i -uv 用户名’ 文件夹位置 |
(2)组
xfs_quota -x -c 'limit -g bsoft=磁盘容量软限制数值M bhard=磁盘容量硬限制数值M isoft=磁盘文件数软限制数值 ihard=磁盘文件数硬限制数值 组名' 挂载目录 |
|
查看文件对组磁盘配额容量限制 |
xfs_quota -c ‘quota -gv 用户名’ 文件夹位置 |
查看文件对组磁盘配额文件数限制 |
xfs_quota -c ‘quota -i -gv 用户名’ 文件夹位置 |
(3)验证
dd if=/dev/zero of=/文件夹1/文件2 bs=数值M count=数值 |
向文件夹1下写入一个名为2的测试文件,大小为bs数值,分count数值次读取 |
|
|
xfs_quota -x -c 'report -abi' |
查看所有可用分区磁盘配额使用情况 |
xfs_quota -x -c 'quota -ubih' 限额文件位置 |
查看文件限额使用情况 |
xfs_quota -x -c 'quota -ubi 用户名' |
查看用户磁盘配额使用情况 |
xfs_quota -x -c 'quota -gbi 组名' |
查看组磁盘配额使用情况 |
结语
在安装CentOS系统的过程中选择自动分区时,就会默认采用LVM分区方案,不需要再进行手动配置,如果有特殊需要,也可以使用安装向导提供的磁盘定制工具调整LVM分区,需要注意的是/boot分区不能基于LVM创建,必须独立出来