ter*_*don 137
我可以建议一个更安全的方法吗?你永远不知道什么时候交换可以让你免于崩溃。虽然交换确实会减慢您的计算机速度,但如果您使用的程序会占用您所有的 RAM,那么具有交换功能可以使您免于硬重启。当计算机开始交换时,您会注意到并能够杀死有问题的应用程序。
因此,而不是完全禁用掉,只需确保您的操作系统互换非常罕见。这由 中的vm.swappiness设置控制/etc/sysctl.conf。Ubuntu 的默认设置是60如果我没记错的话,这在大多数情况下太多了,即使 RAM 仍然可用,也会导致您开始交换。如果您降低此值,您将能够保持交换的安全线,同时仅将其用于紧急情况。所以,打开文件:
sudo nano /etc/sysctl.conf
Run Code Online (Sandbox Code Playgroud)
并将这一行添加到其中:
vm.swappiness=10
Run Code Online (Sandbox Code Playgroud)
如果这仍然太多,请将 10 更改为 1。现在,重新启动后,您只会在绝对必要时进行交换,您可以简单地忘记它。
ani*_*uia 53
在 /etc/fstab 中找到与交换相关的行,并对其进行注释。我的是这样的:
UUID=6880a28d-a9dc-4bfb-ba47-0876b50e96b3 / ext4 errors=remount-ro 0 1
UUID=7350e6f2-e3a7-4d80-9a95-8741c7db118f /home ext4 defaults 0 2
UUID=E2E26AD1E26AAA0D /media/windows ntfs defaults,umask=007,gid=46 0 0
# Swap a usb extern (3.7 GB):
#/dev/sdb1 none swap sw 0 0
Run Code Online (Sandbox Code Playgroud)
您可以使用 gedit 编辑此文件。先备份一下,以防万一:
sudo cp /etc/fstab /etc/fstab_backup
gksu gedit /etc/fstab
Run Code Online (Sandbox Code Playgroud)
只需在swap所在行的开头添加#,然后重新启动计算机。
或者
尝试在/etc/fstab文件中注释掉交换条目的命令行方式,
sudo sed -i.bak '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
Run Code Online (Sandbox Code Playgroud)
Zib*_*bri 28
错误.. 如果 systemd 在任何驱动器上找到一个 SWAP 分区,它无论如何都会自动挂载它。奇怪的是没有人提到 systemd。无论如何,解决方案非常简单;要永久禁用交换,您必须:
swapoff -a/etc/fstab和评论任何存在的交换条目(您可以跳过此步骤 2,没有步骤 2 的步骤 3 可能对您有用)。sudo systemctl mask "dev-sdXX.swap" 其中 XX 是交换分区。注意,您应该在单元名称周围使用引号,以防名称有转义字符/反斜杠。对所有可能的分区执行此操作也很有用,以便如果任何其他分区上有交换分区驱动器它不会被安装。)和平出来。
mda*_*acu 17
只需从 fstab 中删除条目(或在行前使用 # 对其进行注释)并重新启动。查找其中包含“swap”一词的行。
sudo nano /etc/fstab
Run Code Online (Sandbox Code Playgroud)
小智 6
补充Zibri 的答案:
\nswapoff -a将暂时禁用所有交换。/etc/fstab,只需将它们注释掉并重新启动即可。systemctl --type swap.例子:
\n# systemctl --type swap\n\nUNIT LOAD ACTIVE SUB DESCRIPTION \ndev-zram1.swap loaded active active /dev/zram1 \n\nLOAD = Reflects whether the unit definition was properly loaded.\nACTIVE = The high-level unit activation state, i.e. generalization of SUB.\nSUB = The low-level unit activation state, values depend on unit type.\n\n1 loaded units listed. Pass --all to see loaded but inactive units, too.\nTo show all installed unit files use \'systemctl list-unit-files\'.\nRun Code Online (Sandbox Code Playgroud)\nmask它sysctl:# systemctl mask dev-zram1.swap\n\nCreated symlink /etc/systemd/system/dev-zram1.swap \xe2\x86\x92 /dev/null.\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
116463 次 |
| 最近记录: |