向負責縮小的 resize2fs 發送 SIGINT 到底有多危險?

向負責縮小的 resize2fs 發送 SIGINT 到底有多危險?

我繼承了一台舊的 PC 伺服器(四核心 Pentium 4),它只有//bootswap(帶有 2 個 1T SATA 磁碟的 RAID1)分割區,但需要更新發行版(從 CentOS 6.9 開始)。我決定建立一個新分割區,以便/可以格式化包含的分割區。

但我忘了添加-p標誌,resize2fs現在它默默地盯著我,我不知道它還需要多長時間(它已經呆了 50 多個小時)。現在,我知道縮小檔案系統可能需要很長時間,但雖然我可以等待100小時, 就像是800小時是不可能的

這就是我現在的想法:

  • 繼續使用Ctrl+ C&& e2fsck
  • 掛載分割區並手動刪除 100G+ 的數據,這對我們沒有任何用處。
  • 從頂部開始resize2fs -p ...

但我一直沒能找到共識關於如何危險的就是發送SIGINT到resize2fs.

我確實有重要資訊的額外備份,但仍然希望在不損壞檔案系統的情況下執行此操作。是的,我知道從頭開始安裝發行版並恢復備份可能會更快。

更新: 我決定打斷它。一切似乎都很好,但問題仍然存在。我還是很好奇。

答案1

這絕對是一個有趣的問題,雖然你的結果非常好(正如我所希望的那樣,因為捕獲SIGINT並不完全是火箭科學,並且中途暫停僅僅重新定位一些數據塊似乎也不難),但也有足夠多的不成功的故事,例如 10yo Debian bughttps://bugs.debian.org/cgi-bin/bugreport.cgi?bug=574292

但即使這個錯誤已經有 10 年了,我剛剛運行了一個模擬e2fsckresize2fs通過strace,雖然前者安裝了一大堆信號處理程序,包括SIGINTSIGTERM,但resize2fs仍然沒有。

所以如果有人發現這個問題:以上述為軼事證據,繼續保持警覺。 :-) 請注意,手冊頁確實提到了一個用於在出現錯誤時創建撤消文件的標誌。

(而我,我只是希望我在螢幕會話中運行此調整大小操作......但好吧,至少我確實有-p

編輯

等等,我剛剛意識到,為什麼不透過 SSH 登錄,製作 LVM 快照,然後e2fsck在調整大小仍在運行時呢?我在“重新定位區塊”階段連續執行了 5 次,儘管每次檢查時都得到“包含錯誤的檔案系統,強制檢查”,但從未發現任何錯誤。現在當然不要問我資料完整性的問題。

編輯

順便說一句,來自 tytso@ 本人的非常有趣的回應https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=574292#30

相關內容