阿里云的云服务器,40G的硬盘,20G分给了系统,20G分给了数据。那么,如果不加调整,只能用上20G的空间,其余系统占用的20G就不怎么好用了。
那么,有没有办法能够将系统的20G分区分出来呢?有。resize2fs不支持挂在的分区的调整,我们需要将整个root转移到data盘,然后调整fstab和grub,让/挂在到/dev/xvdb1分区中,然后再对/dev/xvda进行调整,然后再将数据恢复回去。
1、备份数据
给data盘
fdisk /dev/xvdb
格式化
mkfs.ext4 /dev/xvdb1
挂载data盘到/mnt
mount /dev/xvdb1 /mnt
搬移整个root
rsync -aAXv /* /mnt –exclude={/dev/*,/proc/*,/sys/*,/tmp/*,/run/*,/mnt/*,/media/*,/lost found,/home/*/.gvfs}
2、修改fstab和grub.cfg
首先查看GUID编号:
ls -l /dev/disk/by-uuid/
total 0
lrwxrwxrwx 1 root root 11 Nov 10 11:41 56a7fe0d-1d1c-4aa5-82ad-59dedb0177b3 -> ../../xvda1
lrwxrwxrwx 1 root root 11 Nov 10 11:42 cd6331ee-47db-4338-9288-82d66e7e1572 -> ../../xvdb1
看到xvda1的号和xvdb1的号,将在fstab中的56a7fe0d-1d1c-4aa5-82ad-59dedb0177b3替换成cd6331ee-47db-4338-9288-82d66e7e1572即可(每个空间的号不一样哈,不要乱替换)
替换好后,reboot
如果一切顺利,1分钟之内则可以重新连上。否则只有重置阿里云了……
登录上去,则可以看到:
# mount
/dev/xvdb1 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
xvdb1分区被挂载了。
好了。这下可以分区了。
3、重新分区
重新分区要把以前的xvda1分区删除了。如果想无损分区,似乎可以用resize2fs来做。但我采用的方法是将以前的分区删除了,然后重新将现有的系统拷贝过去。
fdisk /dev/xvda
删除第一个分区,然后新建一个分区,分区大小自己定。
记得按a添加一个boot flag,否则启动不了。然后p以下,应该可以看到有一个*
Device Boot Start End Blocks Id System
/dev/xvda1 * 2048 10487807 5242880 83 Linux
然后mkfs.ext4 /dev/xvda1格式化
完成后,mount /dev/xvda1 /mnt
然后,我们又要将现有系统同步过去:
rsync -aAXv /* /mnt –exclude={/dev/*,/proc/*,/sys/*,/tmp/*,/run/*,/mnt/*,/media/*,/lost found,/home/*/.gvfs}
4、修改分区挂载。
由于重新启动后的分区将是/mnt下面的分区,那么,我们需要修改/mnt/etc/fstab和/mnt/boot/grub/grub.cfg内的挂在点。
修改方法和之前的一样,先ls /dev/disk/by-uuid看一下GUID,然后再修改即可。
5、重启后,看一下分区信息,搞定。
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 5.0G 1.2G 3.7G 24% /
udev 237M 4.0K 237M 1% /dev
tmpfs 99M 264K 98M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 246M 0 246M 0% /run/shm
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。