我正在使用 native-zfs 并且想知道是否有一种方法可以将 ZFS 分区用于 SWAP。我正在使用拇指驱动器运行我的服务器,并认为这是加快速度的好方法。
这是从zfsonlinux wiki复制的更详细的指南:
zfs create -V 4G -b $(getconf PAGESIZE) -o compression=zle \
-o logbias=throughput -o sync=always \
-o primarycache=metadata -o secondarycache=none \
-o com.sun:auto-snapshot=false rpool/swap
Run Code Online (Sandbox Code Playgroud)
您可以根据需要调整尺寸(4G
零件)。
压缩算法设置为 ,zle
因为它是最便宜的可用算法。对于ashift=12
(磁盘上有4 kiB 块),4 kiB 页面大小的常见情况意味着没有压缩算法可以减少 I/O。例外是全零页,它们被 ZFS 删除;但是必须启用某种形式的压缩才能获得此行为。如果您的池使用ashift=9
,则可以使用compression=lz4
.
mkswap -f /dev/zvol/rpool/swap
Run Code Online (Sandbox Code Playgroud)
/etc/fstab
echo /dev/zvol/rpool/swap none swap defaults 0 0 >> /etc/fstab
Run Code Online (Sandbox Code Playgroud)
警告:始终/dev/zvol
在配置文件中使用长别名。切勿使用简短的/dev/zdX
设备名称。
swapon -av
Run Code Online (Sandbox Code Playgroud)
使用 ZFS 进行交换应该可以正常工作,就像在 Solaris 和 FreeBSD 下一样。
zfs create pool/swap -V 1G -b 4K
mkswap -f /dev/pool/swap
swapon /dev/pool/swap
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3721 次 |
最近记录: |