减少交换以扩展/boot分区

减少交换以扩展/boot分区

我正在尝试升级 Linux 系统(Buster 到 Bullseye),但启动分区上的空间不足。有没有一种简单的方法可以减少交换区的大小(500MB),以便我可以扩展启动分区?这可以在不重新启动的情况下实现吗?我无法物理访问该服务器,只能访问ssh.

Disk /dev/sda: 80 GiB, 85899345920 bytes, 167772160 sectors
Disk model: Virtual disk    
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x000adc37

Device     Boot   Start       End   Sectors  Size Id Type
/dev/sda1            63    192779    192717 94.1M 83 Linux
/dev/sda2        192780   8000369   7807590  3.7G 82 Linux swap / Solaris
/dev/sda3       8000370 167766794 159766425 76.2G 83 Linux
              total        used        free      shared  buff/cache   available
Mem:        8294768      413896      974208       93464     6906664     7040816
Swap:       3903788        1068     3902720

答案1

是的,只需禁用交换(目前用得不多):

swapoff

然后删除交换分区并扩展启动分区;您可以使用growpart它,甚至不需要卸载它。在空闲空间中创建新的交换分区,创建新的交换空间:

mkswap -F /dev/sda2

并更新/etc/fstab新的交换信息。您很可能需要使用mkswap打印的内容更新 UUID;您还可以通过运行再次查找它blkid

然后激活新的交换:

swapon -a

相关内容