我尝试在 Ubuntu 22.04 上创建 1GB 交换文件,但没有成功。
我使用以下命令:
sudo rm /swapfile1
sudo dd if=/dev/zero of=/swapfile1 bs=1KB count=1MB status=progress
sudo chmod 0600 /swapfile1
sudo mkswap /swapfile1
sudo swapon /swapfile1
我得到的输出:
905663000 bytes (906 MB, 864 MiB) copied, 5 s, 181 MB/s
1000000+0 records in
1000000+0 records out
1000000000 bytes (1.0 GB, 954 MiB) copied, 5.46825 s, 183 MB/s
Setting up swapspace version 1, size = 953.7 MiB (999993344 bytes)
no label, UUID=4c4c204b-57ff-484d-848b-d719e0260156
swapon: /swapfile1: skipping - it appears to have holes.
语境
当查看我的可用空间时,我看到:
$ df /
Filesystem 1K-blocks Used Available Use% Mounted on
rpool/ROOT/ubuntu_emx73f 879401216 225886848 653514368 26% /
请注意,我使用 Ubuntu 的全盘加密(不确定这是否相关)
此外,替换dd
为也fallocate
无法解决问题
答案1
感谢 FedKad 向我指出了 Stratus 的答案。
解决问题的办法是:
sudo zfs create -V 1G -b 8192 -o logbias=throughput -o sync=always -o primarycache=metadata -o com.sun:auto-snapshot=false rpool/swap
sudo mkswap -f /dev/zvol/rpool/swap
sudo swapon /dev/zvol/rpool/swap