Ubuntu Server分区调整:无数据丢失缩小sda3并创建新分区sda4的方法
Ubuntu Server分区调整:无数据丢失缩小sda3并创建新分区sda4的方法
兄弟,先给你敲个警钟:分区和LVM调整操作有一定风险,第一步必须备份所有重要数据——比如用rsync -a / /path/to/external-drive把系统数据同步到外接存储,或者用dd做个磁盘快照,别省这一步,真出问题后悔都没用!
接下来咱们一步步来,每一步都要仔细操作:
1. 检查并修复文件系统错误
首先得确保你的逻辑卷文件系统没有损坏,不然缩小的时候容易出问题:
sudo e2fsck -f /dev/mapper/ubuntu--vg-ubuntu--lv
执行这个命令前,最好先把逻辑卷挂载为只读模式(远程服务器更稳妥):
sudo mount -o remount,ro /dev/mapper/ubuntu--vg-ubuntu--lv
2. 确认逻辑卷空间并适配文件系统
当前逻辑卷是100G,先确认文件系统实际使用空间远小于100G:
df -h /dev/mapper/ubuntu--vg-ubuntu--lv
确认没问题后,执行命令确保文件系统和逻辑卷大小匹配:
sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv 100G
3. 缩小物理卷sda3的容量
现在把包含逻辑卷的物理卷sda3缩小到500G:
sudo pvresize --setphysicalvolumesize 500G /dev/sda3
执行完用pvs命令确认物理卷大小已变成500G:
pvs
4. 重新调整sda3分区大小
用fdisk工具修改分区表,这一步一定要注意起始扇区和原sda3完全一致:
- 启动fdisk:
sudo fdisk /dev/sda
- 输入
p查看当前分区表,记下sda3的起始扇区数值 - 输入
d删除原有sda3分区 - 输入
n创建新的sda3分区:- 选择分区类型为
primary - 起始扇区输入刚才记下的数值(必须完全一致!)
- 结束扇区输入
+500G,指定新分区大小
- 选择分区类型为
- 输入
t修改分区类型,输入8e(LVM分区标识) - 输入
w保存分区表并退出
5. 刷新LVM识别新分区
重启系统(或用partprobe刷新分区表)后,执行命令让LVM同步新的sda3信息:
sudo pvresize /dev/sda3
再用pvs确认物理卷大小为500G,此时磁盘会多出约1.1T的空闲空间。
6. 创建新分区sda4
再次启动fdisk创建sda4:
sudo fdisk /dev/sda
- 输入
n创建新分区:- 选择分区类型为
primary - 起始扇区按回车用默认空闲位置
- 结束扇区按回车用最大空间(自动分配全部空闲1.1T)
- 选择分区类型为
- 输入
t修改分区类型,若做普通存储选83(Linux文件系统标识),若要做LVM选8e - 输入
w保存分区表并退出
7. 格式化并挂载sda4(可选)
如果要使用新分区,先格式化(以ext4为例):
sudo mkfs.ext4 /dev/sda4
创建挂载点并挂载:
sudo mkdir /mnt/new-storage sudo mount /dev/sda4 /mnt/new-storage
要开机自动挂载的话,编辑/etc/fstab添加一行:
/dev/sda4 /mnt/new-storage ext4 defaults 0 2
添加后用sudo mount -a测试挂载是否正常。
最后用lsblk就能看到你想要的分区结构啦!
备注:内容来源于stack exchange,提问作者dreamxps
相关产品推荐
相关产品推荐

