给 RaspberryPi 分配 Swap

这里 提到,需要给 RaspberryPi 分配一个 Swap 区。32G 的 SD 卡,并且把 /home 外挂到了移动硬盘上,看着不到 10G 的占用,确实感觉浪费。

那么就想办法划出 4G 给 Swap 吧。

重要说明

先做个全盘镜像!

最终版解决办法

  1. 下载 UbuntuMate,恢复到 SD 卡上
  2. 使用 GParted,在尾部创建一个 4G 的 Swap,最好起个名字(PI_SWAP
  3. 继续用 GParted,将 PI_ROOT 分区调整到合适的大小。(即,把所有未分配空间都划分给它)
  4. SD 卡插到 RaspberryPi 上,开始装系统
  5. 装好后,编辑 /etc/fstab,加入

  1. 重启,完成

最终版解决办法2

  1. 在一个8G的SD卡上面直接装系统
  2. 对8G SD卡打镜像,恢复到一个更大的SD卡上(例如,32G)
  3. 创建Swap分区,扩大PI_ROOT分区
  4. /etc/fstab,挂载Swap
  5. 重启

方法比较

第一种方法适合于只有一张SD卡的情况。32G卡做镜像时间很长,只能恢复到32G卡上,不是特别灵活

第二种方法适合有多张SD卡的情况。做镜像时间短,镜像小,可以 恢复到任意大于等于原SD卡大小的新SD卡上,然后再各种搞,十分灵活。

亲测执行顺序

  1. Ubuntu Mate
    1. 烧卡
    2. /分区
    3. 加Swap分区
    4. 执行
    5. 上Pi,安系统
    6. 编辑fstab
  2. Raspbian
    1. 烧卡
    2. 上Pi,进入系统后关机
    3. /分区,执行
    4. 加Swap,执行
    5. 编辑fstab

失败过法办法

直接使用GParted调整大小

本来想直接使用GParted调整大小和新建Swap分区的,多~方~便~但是一点击“执行”,一番检查过后就闪退了。

使用resize2fs调整大小

resize2fs也是一个蛮方便的东西。不过也是失败了。和网上的预期结果不同,我发现它会从磁盘后面占用一块大小,而不是收缩空间。感觉可以用在扩容盘的保护上。

先删除分区,后新建分区,但是不覆盖文件块

利用的是“删除文件只是删除索引”的原理。删除分区再新建,等于说只改变了分区表中记录的分区大小,其他所有东西(包括文件索引块)都没有变。不过我这里一直报“超级块有错误”,各种失败。

使用EasyUS分区魔术师调整大小

哦,这东西不支持对EXT4分区进行调整。

发表评论

电子邮件地址不会被公开。 必填项已用*标注