相信許多人都有對於 SSD 都有以下問題:
1. 什麼是 Trim,如何設定 Trim?
2. 我的 SSD 支援哪些功能?
3. 該如何檢視 SSD 的健康狀態?
4. 我的 SSD 速度不如以往,該怎辦?
5. 什麼是 4K 對齊,如何確認 4K 對齊呢?
首先我們先比較 SSD 與硬碟特性上的差異:
SSD | HDD | |
---|---|---|
效能 | 高 | 低 |
功耗 | 低 | 高 |
耐振動特性 | 耐振動 | 不耐振動 |
單位容量成本 | 高 | 低 |
資料儲存方式 | NAND Flash | 磁盤/讀寫頭 |
抹寫次數限制 | 低 | 高 |
從以上比較表中可以理解 SSD 是個快、省電、不怕振動的資料儲存方案,這些特性剛好符合行動應用的需求也因此 SSD 在行動裝置上有迅速的成長。然而 SSD 同樣存在一些缺陷,例如抹除寫入次數受限於 NAND Flash 顆粒(怕寫),因此我們可以透過微調系統設使 SSD 能發揮長處與避免缺點,讓我們開始吧!
修改 mount 設定開啟 Trim 以及 noatime。Trim 指令是針對 SSD 新增的指令,以往磁盤式的儲存設備對資料的操作僅有寫入與讀取,然而 NAND Flash 除了寫入、讀取之外還需要抹除的操作,假設需對一個已經存放舊資料的 Flash 區塊寫入新資料,並不能直接將資料寫入該區塊,而是需先將該區塊抹除才能在寫入資料:以往作業系統刪除檔案時,只會覆寫檔案的連結/配置資訊抹除檔案的完整資訊(刪除才會快),因次新增 Trim 指令使系統可在空閒時透過 Trim 指令告知 SSD 哪些資料不須再使用,因此 SSD 可將對應的 Flash 區塊進行抹除,一般而言 Trim 對於 SSD 長時間使用下的效能表現以及壽命有正面幫助,mount 對應的參數設定為 discard。由於 SSD 對於寫入次數有所限制,一般 Linux 系統掛載設定預設開啟 access time,當系統開啟檔案時就會更新(寫入)該檔案的 access time 資訊,如果應用上不需要紀錄 access time 即可關閉 atime 設定以減少寫入的資料,說了那多該如何修改 mount 參數套用以上設定呢?
編輯 /etc/fstab:
# 原始設定:
# <file system> <mount point> <type> <options> <dump> <pass>
UUID=XXXX / ext4 errors=remount-ro 0 1
# 加入 Trim 與關閉 access time 設定:
# <file system> <mount point> <type> <options> <dump> <pass>
UUID=XXXX / ext4 errors=remount-ro,noatime,discard 0 1
修改完 /etc/fstab 之後重新開機即可生效。
此外還可以透過 fstrim 指令對特定檔案系統執行 Trim 指令,例如我們可以對根目錄未使用位址進行 Trim 操作:
fstrim -v /
沒有留言:
張貼留言