如何调整虚拟机操作系统根分区

# 先增加实例文件大小,可以使用dd命令
dd if=/dev/zero of=/tmp/temp_expand bs=1M count=4096(增加4G)
cat /tmp/temp_expand >>/var/lib/libvirt/images/my_vm.img

# 挂载文件至系统,以便找出是否有swap device
kpartx -a -p p /var/lib/libvirt/images/my_vm.img

# If has swap device, del the swap device
swapDevice=`sfdisk -s -l /dev/loop1 | grep -e 'Linux swap' |awk '{print $1}'`
# Del swap
parted -s ${loop} rm ${swap_part_num}


# If does't have, add the new swap device
parted -s /dev/loop1 "unit mb mkpart primary linux-swap -2048MB -0"
或者先只划分空间,再用mkswap进行操作
可选的:mkswap -v1 /dev/mapper/loop1p3

# 重新刷新新增加的swap设备
kpartx -d -p p /var/lib/libvirt/images/my_vm.img
kpartx -a -p p /var/lib/libvirt/images/my_vm.img

# 将新的lo设备分区进行打印
sfdisk -d $dev_name >/tmp/sfdisk_dump

# 如果有swap分区,则root分区为(root start), (swap start - root start);如果没有,则为(root start),
new_root=401625,14227239(例子)
converted_root_device=`echo "/dev/loop1p2" | sed -e 's/\//\\\\\//g'`
sed -e "s/^${converted_root_device}.*$/$new_root/" /tmp/sfdisk_dump | sfdisk --no-reread --force /dev/loop1

# 重新刷新新变更的分区
kpartx -d -p p /var/lib/libvirt/images/my_vm.img
kpartx -a -p p /var/lib/libvirt/images/my_vm.img

# fs resize
e2fsck -pv /dev/mapper/loop1p2
resize2fs -f /dev/mapper/loop1p2

转载于:https://my.oschina.net/dongcj/blog/135411

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值