如何将Linux服务器目录分区调整为指定配置
Oracle Linux LVM分区调整操作步骤
操作前必须备份所有重要数据,所有操作需在单用户模式下执行,避免文件系统被占用导致损坏。
一、进入单用户模式
- 重启服务器,在GRUB菜单选中当前使用的内核,按
e进入编辑界面 - 找到以
linux开头的启动行,在末尾添加init=/bin/bash - 按下
Ctrl+X启动,进入单用户模式后执行:mount -o remount,rw /
二、缩小/home分区至40G
- 卸载/home:
umount /home - 检查文件系统完整性:
e2fsck -f /dev/mapper/ol-home - 缩小文件系统到40G:
resize2fs /dev/mapper/ol-home 40G - 缩小逻辑卷到40G:
lvreduce -L 40G /dev/mapper/ol-home - 重新挂载/home验证:
mount /home
三、扩展根分区至≥220G
- 查看卷组剩余空闲空间:
vgs - 扩展根逻辑卷到220G(若想直接用剩余空间除预留的/var、/tmp,可替换为
lvextend -l +100%FREE /dev/mapper/ol-root):lvextend -L 220G /dev/mapper/ol-root - 同步文件系统大小:
resize2fs /dev/mapper/ol-root
四、创建/var(13G)和/tmp(10G)分区
- 创建逻辑卷:
lvcreate -L 13G -n ol-var ol lvcreate -L 10G -n ol-tmp ol - 格式化新分区(与根分区文件系统一致,当前为xfs):
注:若系统用ext4,替换为mkfs.xfs /dev/mapper/ol-var mkfs.xfs /dev/mapper/ol-tmpmkfs.ext4
五、迁移数据并配置自动挂载
- 临时挂载新分区:
mkdir /mnt/var && mount /dev/mapper/ol-var /mnt/var mkdir /mnt/tmp && mount /dev/mapper/ol-tmp /mnt/tmp - 迁移原有数据:
cp -a /var/* /mnt/var/ cp -a /tmp/* /mnt/tmp/ - 替换原分区目录:
mv /var /var_old && mv /tmp /tmp_old mkdir /var && mkdir /tmp umount /mnt/var && mount /dev/mapper/ol-var /var umount /mnt/tmp && mount /dev/mapper/ol-tmp /tmp - 编辑
/etc/fstab添加自动挂载条目:
打开文件:vi /etc/fstab,添加以下两行:
若为ext4,将xfs替换为ext4/dev/mapper/ol-var /var xfs defaults 0 0 /dev/mapper/ol-tmp /tmp xfs defaults 0 0
六、验证与重启
- 检查分区状态:
df -h - 验证fstab配置:
mount -a - 重启服务器进入正常系统,再次确认分区配置:
reboot
内容的提问来源于stack exchange,提问作者Maria628
相关产品推荐
相关产品推荐

