是否应该使用“丢弃”选项来安装交换文件?

是否应该使用“丢弃”选项来安装交换文件?

拱门维基说可以在交换分区的文件defaults,discard中使用。fstab然而,尚不清楚交换文件,也不清楚手册页

如果交换文件驻留在本身使用该discard选项安装的文件系统中(并且显然位于 SSD 中),那么它应该使用discard自身?如果父文件系统是不是 discard'ing?

直觉说“不”,但我找不到任何相关信息,并认为这值得讨论。

答案1

我会说不。

1:交换空间不使用相同的概念可用空间作为文件系统

2:重要的是你的 SSD 上始终保留至少 25% 的可用空间(这个值是 Sandisk 代表在电话中给我的),以便磨损均衡能够正常工作。

=> 只要磁盘有备用簇可供使用并执行 WL,即使磁盘的 5% 从未被修剪或连续重写也并不重要:即使您重写了相同的逻辑或物理扇区,当您写入足够大的块时,WL 无论如何都会使用不同的簇。

如果您使用整个磁盘进行交换,这个问题仍然没有答案。如果不进行修剪,用于交换的整个磁盘可能会过早老化。

另一个问题是:交换驱动程序是否支持丢弃? ext3/ext4 可以。

也许,如果您的交换占据了磁盘的很大一部分,如果可以的话,您可以在关闭期间丢弃/修剪交换空间:如果可以,在终止所有服务后,执行 swapoff,并找到一种方法来丢弃交换空间(因为我不是专家,为了不让问题得不到解答,我再次建议 mkfs.ext3、fstrim、mkswap - 可能还有其他更好的解决方案(检查关机是否是由于 UPS 造成的)。

答案2

其他答案留下的一些问题/建议可以通过阅读下面的文档来回答。

我不认为discard在文件系统上推荐。建议fstrim定期运行。您可以为此找到一个 cron 作业。

即使是最近,内核开发人员对丢弃操作的性能也不是特别满意。设备之间的差异太大。你应该定期丢弃反正,因为设备在太忙时可以放弃丢弃操作。

正如另一个答案所说,您的文件系统比交换空间大得多,因此除非您可以证明否则最好不要添加该选项discard。虽然discard=once很聪明,但它仍然可能会减慢启动速度(如果交换空间已被使用)。所以我认为它不值得启用。

男人交换

-d, --discard[=策略]

如果交换支持设备支持丢弃或修剪操作,则启用交换丢弃。这可能会提高某些固态设备的性能,但是通常它不会。该选项允许在两个可用的交换丢弃策略之间进行选择: --discard=once 在 swapon 时对整个交换区域执行单次丢弃操作;或 --discard=pages 在释放的交换页可供重用之前异步丢弃它们。如果未选择任何策略,则默认行为是启用两种丢弃类型。 /etc/fstab 挂载选项discard、discard=once 或discard=pages 也可用于启用丢弃标志。

相关内容