要装个Matlab到/usr/local,发现容量不够了,/home下倒是还剩很多。 用gparted看了下能不能把挂到/home的分区缩小一些,从头部空出点空间来,然而并没有这种操作。 解决方法倒是有很多,要么换个安装位置,要么从/home后面给/usr/local单独划个分区,要么就备份数据重新分区。

分清“硬盘分区”和“文件系统”

维基百科:
https://zh.wikipedia.org/wiki/硬盘分区
https://zh.wikipedia.org/wiki/文件系统

备份数据

https://wiki.archlinux.org/index.php/System_backup_(简体中文)

使用Live环境

https://wiki.archlinux.org/index.php/USB_flash_installation_media_(简体中文)

修改分区

假设原来//home的分区分别是/dev/sda1/dev/sda2

  • parted /dev/sda
  • rm 2删除挂到/home的分区
  • mkpart primary btrfs <START> <END>创建一个小一些的/home分区,头部留出空间
  • resizepart 1 <END>修改根分区的大小
  • quit退出parted
  • mkfs.btrfs /dev/sda2为/home分区重新创建btrfs文件系统
  • 分别挂载//home/mnt/mnt/home
  • btrfs filesystem resize max /mnt修改根分区文件系统的大小
  • 恢复/home中的文件
  • 修改/mnt/etc/fstab文件,参见https://wiki.archlinux.org/index.php/Fstab_(简体中文)
  • 重启

参考

https://www.tuicool.com/articles/zuai2q