我想增加我的交换大小以便能够有休眠选项。首先,我尝试添加一些交换文件。我跟着
https://bogdancornianu.com/change-swap-size-in-ubuntu/
并在我的终端中输入:
sudo dd if=/dev/zero of=swapfile bs=1G count=16
Run Code Online (Sandbox Code Playgroud)
我得到:
16+0 records in
16+0 records out
17179869184 bytes (17 GB, 16 GiB) copied, 206.949 s, 83.0 MB/s
Run Code Online (Sandbox Code Playgroud)
然后,我按照说明操作:
sudo mkswap /swapfile
Run Code Online (Sandbox Code Playgroud)
但我收到此错误:
mkswap: cannot open /swapfile: No such file or directory
Run Code Online (Sandbox Code Playgroud)
然后,我决定调整交换分区而不是交换文件的大小。所以我想删除它们。(我之前没有创建过,所以我假设我可以将它们全部删除?)我遵循了这个:
https://askubuntu.com/questions/904628/default-17-04-swap-file-location
我试过:
$ cat /proc/swaps
$ grep swap /etc/fstab
Run Code Online (Sandbox Code Playgroud)
但我从第一个中什么也没得到。第二个输出是:
total used free shared buff/cache
available
Mem: 11862 3498 1014 138 7349
7907
Swap: 0 0 0
Run Code Online (Sandbox Code Playgroud)
我也试过(重启后):
swapon -s
Run Code Online (Sandbox Code Playgroud)
并得到
Filename Type Size Used Priority
/dev/sdb3 partition 3905532 0 -2
Run Code Online (Sandbox Code Playgroud)
我想知道我是否成功创建了交换文件?如果我这样做了,我该如何删除它们?
第一个问题是您的第一个命令swapfile
在当前目录中创建了一个文件 ,并且您的后续命令显式引用/swapfile
了swapfile
在根目录中调用的文件。如果执行第一个命令时该目录不是您当前的工作目录,则所有后续命令都将引用一个不可操作的文件。
如果您没有从 中获得输出cat /proc/swaps
,则表明您的系统没有procfs
运行(不太可能),或者您当前没有配置活动的交换空间。
您声称从中获得的输出grep swap /etc/fstab
毫无意义。这看起来像是free -m
(顺便确认您没有配置活动交换)的输出,而不是文件系统表的部分内容。
您的重新启动后swapon -s
(如手册所述提供与 相同的信息cat /proc/swaps
)表明在您重新启动之前的某个时间点,有人执行了swapoff
.