[討論] SSD上分割表被破壞後的「真實空間」

看板Storage_Zone作者 (玻璃做的大叔)時間8年前 (2016/01/20 23:35), 編輯推噓3(3021)
留言24則, 4人參與, 最新討論串1/1
傳統硬碟沒有TRIM的問題,刪除資料後,只要沒寫入,資料就還在那裡, 如果我直接寫0破壞分割表,只要能重建分割表的位置,東西也都還在。 現在問題來了,SSD目前都知道資料不要擺太滿,那我的疑問是,如果我把一個 塞滿資料的分割區給直接刪除,這樣假設我沒再繼續對那個分割區LBA位址內寫入, 幾星期後我再恢復分割區位置,資料還會在嗎? 如果說還在,那是不是對SSD來說那個空間根本無法拿來當成來回讀寫的調度空間? 我會這樣問是之前不小心把一個分割區的備份還原到錯誤分割區,所以我直接把 錯誤的還原分割前面用dd寫入10MB的0,不過如果要讓SSD把空間拿回來,是否用 格式化或是用支援trim的OS先把檔案執行刪除比較好? -- 起初,他們追殺共產主義者,我沒有說話,因為我不是共產主義者; 接著,他們追殺猶太人,我沒有說話,因為我不是猶太人; 後來,他們追殺工會成員,我沒有說話,因為我不是工會成員; 此後,他們追殺天主教徒,我沒有說話,因為我是新教教徒; 最後,他們奔我而來,卻再也沒有人站起來為我說話了。 《First They Came(他們首次來時)》,Martin Niemoller牧師(1892-1984) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.176.35.57 ※ 文章網址: https://www.ptt.cc/bbs/Storage_Zone/M.1453304120.A.034.html

01/21 00:00, , 1F
你trim掉之後那些block就會漸漸得被挑去做gc了
01/21 00:00, 1F

01/21 00:01, , 2F
資料還會在. 如果要對SSD進行TRIM(快速消除資料),
01/21 00:01, 2F

01/21 00:01, , 3F
可以用blkdiscard指令.
01/21 00:01, 3F

01/21 00:04, , 4F
我意思是我破壞了檔案系統,那應該沒人trim了吧??
01/21 00:04, 4F

01/21 00:05, , 5F
所以假設我發現我的SSD全部塞滿了,我把其中一半的
01/21 00:05, 5F

01/21 00:06, , 6F
分割區直接刪掉或把分割表寫0,其實對SSD不要塞太滿
01/21 00:06, 6F

01/21 00:06, , 7F
的要求來說沒有任何幫助囉?
01/21 00:06, 7F

01/21 00:20, , 8F
對. 單純dd少部份or刪除分割不會釋放空間.
01/21 00:20, 8F

01/21 00:21, , 9F
要釋放的話要下TRIM指令. 刪除檔案時會下.
01/21 00:21, 9F

01/21 00:21, , 10F
或是手動blkdiscard也是整個下TRIM.
01/21 00:21, 10F

01/21 00:26, , 11F
我GOOGLE看blkdiscard指令,搞不懂他的用法,fstrim
01/21 00:26, 11F

01/21 00:27, , 12F
對檔案系統,hdparm則是安全刪除,但blkdiscard,
01/21 00:27, 12F

01/21 00:27, , 13F
是對已有檔案系統的分割才有作用嗎?
01/21 00:27, 13F

01/21 00:29, , 14F
應該說blkdiscard和hdparm --security-erase差在哪?
01/21 00:29, 14F

01/21 00:29, , 15F
fstrim透過檔案系統下, 所有檔案的不會被TRIM掉.
01/21 00:29, 15F

01/21 00:30, , 16F
blkdiscard直接對分割下, 下下去等同於整個分割洗掉
01/21 00:30, 16F

01/21 00:30, , 17F
secure erase對整個裝置下, 整個裝置都清空.
01/21 00:30, 17F

01/21 00:57, , 18F
secure erase會整顆多一次寫入,blkdiscard只有
01/21 00:57, 18F

01/21 00:58, , 19F
分割區的範圍內的block多一次寫入,這樣對嗎?Y
01/21 00:58, 19F

01/21 02:12, , 20F
trim 完等於目錄表丟了, 應該是很難救的回來
01/21 02:12, 20F

01/21 02:12, , 21F
你中間不管寫哪裡都有可能拿這個block來用啊
01/21 02:12, 21F

01/21 02:31, , 22F
基本上對. 只是不是"多一次寫入", 是多一次執行TRIM
01/21 02:31, 22F

01/23 11:55, , 23F
blkdiscard /sda和 hdparm --security-erase /sda
01/23 11:55, 23F

01/23 11:55, , 24F
是一樣的嗎?
01/23 11:55, 24F
文章代碼(AID): #1Mdwau0q (Storage_Zone)