镁光ssd管理工具 linux,在 SSD 上使用 Btrfs 文件系统的相关优化
優(yōu)化掛載參數(shù)
在 Linux 中掛載 SSD 上的 btrfs,可以采用各種參數(shù)進(jìn)行優(yōu)化:
#
UUID=/btrfs defaults,ssd,discard,noatime,compress=lzo,subvol=@01
這些參數(shù)各有優(yōu)缺點,酌情添加。
ssd
btrfs 文件系統(tǒng)有對 SSD 進(jìn)行優(yōu)化,在掛載參數(shù)中加入 ssd 即可。該參數(shù)不會自動啟用 TRIM/discard。
discard
可以通過以下命令確認(rèn) SSD 是否支持 TRIM:
sudohdparm-I/dev/sdX|grepTRIM
*DataSetManagementTRIM supported(limit8blocks)
若 SSD 支持 TRIM 命令,可以在 /etc/fstab 中啟用 discard 參數(shù)。建議將 discard 掛載參數(shù)作為首選。據(jù) debian wiki 所述,包括三星,鎂光,英睿達(dá)在內(nèi)的一些 SSD 在 discard/TRIM 上有問題,不能合適地處理 TRIM 命令。以下是 linux 內(nèi)核相關(guān)處源代碼 (2015/10/15):
/* devices that don't properly handle queued TRIM commands */
{"Micron_M500_*",NULL,ATA_HORKAGE_NO_NCQ_TRIM|
ATA_HORKAGE_ZERO_AFTER_TRIM,},
{"Crucial_CT*M500*",NULL,ATA_HORKAGE_NO_NCQ_TRIM|
ATA_HORKAGE_ZERO_AFTER_TRIM,},
{"Micron_M5[15]0_*"," MU01",ATA_HORKAGE_NO_NCQ_TRIM|
ATA_HORKAGE_ZERO_AFTER_TRIM,},
{"Crucial_CT*M550*","MU01",ATA_HORKAGE_NO_NCQ_TRIM|
ATA_HORKAGE_ZERO_AFTER_TRIM,},
{"Crucial_CT*MX100*","MU01",ATA_HORKAGE_NO_NCQ_TRIM|
ATA_HORKAGE_ZERO_AFTER_TRIM,},
{"Samsung SSD 8*",NULL,ATA_HORKAGE_NO_NCQ_TRIM|
ATA_HORKAGE_ZERO_AFTER_TRIM,},
{"FCCT*M500*",NULL,ATA_HORKAGE_NO_NCQ_TRIM|
ATA_HORKAGE_ZERO_AFTER_TRIM,},
/* devices that don't properly handle TRIM commands */
{"SuperSSpeed S238*",NULL,ATA_HORKAGE_NOTRIM,},
該參數(shù)不是必需的,也可以自定義周期性運行 fstrim 命令來取代該參數(shù),使用該命令前要確認(rèn) SSD 支持 TRIM,否則可能造成數(shù)據(jù)丟失。當(dāng) SSD 有足夠的空余空間或(未分配的)可用空間時不需要該參數(shù)。
noatime
掛載參數(shù)可以加入 noatime,通過禁止更新訪問記錄來減少不必要的寫操作以提高性能。該選項對 HDD 同樣有性能提升。btrfs 的默認(rèn)配置為 relatime。
compress
打開壓縮功能在通常情況下有利于提高傳輸性能(并非絕對),也可以節(jié)省存儲空間。加入以下掛載參數(shù):
compress=lzo
或
compress=zlib
lzo 速度更快,zlib 壓縮率更高。注意確認(rèn) SSD 主控是否是非壓縮主控,若為壓縮主控不建議加入該參數(shù)。
寫緩存
若 SSD 帶有緩存,啟用 Write Cache 可以提高性能:Disks -> Drive Setting -> Enable Write Cache,但在突然斷電的情況下可能造成數(shù)據(jù)丟失。
I/O 調(diào)度
SSD 結(jié)構(gòu)不同于傳統(tǒng)硬盤,尋址時間短,I/O 調(diào)度算法可選擇 noop 以降低延遲。以下命令可查看與修改調(diào)度器:
cat/sys/block/sdX/queue/scheduler#sdX指你的設(shè)備
sudotee/sys/block/sdX/queue/scheduler<<
注意以上方法并不持久,重啟后會重置。如果 SSD 是系統(tǒng)唯一的存儲設(shè)備,可考慮通過 elevator=noop 內(nèi)核參數(shù)設(shè)置 I/O 調(diào)度器。也可使用 udev 規(guī)則來修改調(diào)度器,對多存儲設(shè)備同樣有效:
/etc/udev/rules.d/60-ssd-scheduler.rules#創(chuàng)建該文件
文件內(nèi)容如下:
# set deadline scheduler for non-rotating disks
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="noop"
Btrfs 的詳細(xì)介紹:請點這里
Btrfs 的下載地址:請點這里
總結(jié)
以上是生活随笔為你收集整理的镁光ssd管理工具 linux,在 SSD 上使用 Btrfs 文件系统的相关优化的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 个性签名情侣的秀恩爱
- 下一篇: 木地板多少钱一平方 木地板的类别