我已经安装了k3s在 Debian Bullseye 上(通过 qemu/ 在 M1 Pro 上)UTM)。
k3s 建议禁用交换。阅读以下问题的答案后:
我有 :
- 禁用 systemd 交换服务
sudo systemctl mask "dev-*.swap"
- 删除了 中的交换分区
/etc/fstab
。 - 删除交换分区并扩展主分区以重新获得空间
- 将交换度设置为 0
/etc/sysctl.conf
我现在有:
root@debian:~# systemctl --type swap --all
UNIT LOAD ACTIVE SUB DESCRIPTION
0 loaded units listed.
root@debian:~# sysctl vm.swappiness
vm.swappiness = 0
root@debian:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sr0 11:0 1 1024M 0 rom
vda 254:0 0 10G 0 disk
├─vda1 254:1 0 512M 0 part /boot/efi
└─vda2 254:2 0 9.5G 0 part /
root@debian:~# free
total used free shared buff/cache available
Mem: 1000692 705588 34164 1704 260940 221484
Swap: 0 0 0
root@debian:~# swapon -s
root@debian:~#
但是当我跑步时k3s check-config
,我仍然有:
- swap: should be disabled
我应该怎么做才能完全禁用 k3s 眼中的交换?
答案1
交换激活可能发生在引导过程的早期,而系统仍在 initramfs 上运行,因此在删除交换配置项后,您应该已经完成了update-initramfs -u
.
我也没有在任何地方看到 asystemctl stop "dev-*.swap"
或swapoff -a
:这些命令实际上是禁用已经激活的交换区域的命令。systemctl mask
肯定会阻止交换单元启动,但它对交换已经激活的区域没有任何作用。您应该确保您正在systemctl mask
运行的任何设备都首先停止。