磁盤檢查清理修復命令


怎么使用chkdsk命令修復磁盤

fsck|xfs_repair 磁盤修復

 

fsck

使用權限 : 超級使用者
  
  使用方式 : fsck [-sACVRP] [-t fstype] [--] [fsck-options] filesys [...]
  
  說明 : 在Linux系統中,為了增加系統性能,通常系統默認一些數據寫在內存中,並不會直接將數據寫入硬盤,這是因為內存速度要比硬盤快若干倍。但是有個問題,萬一由於“斷電”或者其他未知原因,造成系統死機,怎么辦?系統就崩潰了。所以,我們需要在特定的時候讓數據直接回存到硬盤中。這里提供幾個常用的命令,其中,fsck命令最重要. 當文件系統發生錯誤時,可用fsck命令嘗試加以修復.直接采用分區編號(如/dev/had3),或使用掛載點(Mount Point,如/、/usr等)指定文件系統皆可。假設一次指定多個文件系統,而這些系統分別位於不同的物理磁盤上,則fsck將會嘗試同步的方式去檢查他們,以節省操作時間。  
  
  參數 :
  
  filesys : device 名稱(eg./dev/sda1),mount 點 (eg. / 或 /usr)
  -t : 給定檔案系統的型式,若在 /etc/fstab 中已有定義或 kernel 本身已支援的則不需加上此參數
  -s : 依序一個一個地執行 fsck 的指令來檢查
  -A : 對/etc/fstab 中所有列出來的 partition 做檢查
  -C : 顯示完整的檢查進度
  -d : 列印 e2fsck 的 debug 結果
  -p : 同時有 -A 條件時,同時有多個 fsck 的檢查一起執行
  -R : 同時有 -A 條件時,省略 / 不檢查
  -V : 詳細顯示模式
  
  -a : 如果檢查有錯則自動修復
  -r : 如果檢查有錯則由使用者回答是否修復

        補充說明:
  
  例子 :
  檢查 msdos 檔案系統的 /dev/hda5 是否正常,如果有異常便自動修復 :
   fsck -t msdos -a /dev/hda5
  
  注意 :
  
  此指令可與 /etc/fstab 相互參考操作來加以了解。

        范例:檢查/dev/sda3
[root@localhost ~]# fsck -C -t ext3 /dev/sda3fsck 1.39 (29-May-2006)e2fsck 1.39 (29-May-2006)/dev/sda3 is mounted.
WARNING!!! Running e2fsck on a mounted filesystem may causeSEVERE filesystem damage.
Do you really want to continue (y/n)? yes
/home: recovering journal/home: clean, 11/524288 files, 25399/524120 blocks#一切正常就會出現上述信息
#主意通常只有ROOT且系統有問題的時候才用這個命令,否則在正常狀態下使用此命令可能會損壞文件。

       相關知識:
 

    Linux FSCK數據出錯的災難應急方案介紹

[適用於]

1、文件系統:ext2 ext3 reiserfs xfs等

2、范圍:提示文件系統需要FSCK時,未執行或FSCK執行完成

 

[症狀]

1、無法MOUNT分區;

2、大量文件、目錄丟失,根目錄下生成/LOST+FOUND文件夾,里面有大量#XXXXXX類的文件和目錄;

3、FSCK很快報錯完成;

4、FSCK執行時,有大量提示,如修改節點、清0節點等操作

 

[應急方案]

1、如遇提示FSCK時,請小心。如果可能,請盡快斷開系統,UMOUNT所有分區。

2、必需執行FSCK時,先做准備工作,方法一:可事先用dd命令將所涉及到的分區輸出到另外的存儲體上(最好不要在出錯的存儲體本身上做dd) 命令大致結構可如: dd if=/dev/sda0 of=/dev/sdb0 .....

3、必需執行FSCK時,先做准備工作,方法二:將整個LINUX存儲體掛載到虛擬機環境,將LINUX存儲體設為Nonpersisten模式,再執行,執行過后,如果數據完好,應盡快通過FTP等方式拷貝出來。

4、必需執行FSCK時,先做准備工作,方法三:將整個LINUX存儲體掛載到其他系統上(如WINDOWS),做好鏡像后再做FSCK。

5、如上面幾種方式均因條件等原因無法實施,必須執行時,可小心觀察FSCK的執行提示(關掉-a)如果發現有提示節點錯誤需更正或清0、節點描述文件大小不正確等信息,應停止執行FSCK。

6、因恢復需要參考很多信息,因盡可能保持系統不工作狀態,至少不得再次MOUNT分區(即便不做任何讀寫操作,也會因系統的工作原理不斷降低數據恢復的可能性,增加數據恢復的難度)

7、尋求專業數據恢復公司幫助。

 

 

對磁盤進行鏡像的方案:

1、可用相同或大於源盤容量的硬盤做為目標盤,將源盤全部扇區方式CLONE到目標盤。

2、可將源盤完全以扇區方式輸出文件到某大容量存儲空間(如大容量硬盤、NAS、SAN、DAS等)

 

輸入Root密碼登錄后采用:fsck -t ext3 -r /usr/local 修復

 

xfs_repair

1.現狀 
目前網上出現大量的主機輸入輸出錯誤,原因是由於主機文件系統損壞。一線人員大部分采用的是umont 和 mount的方式恢復,這種恢復方式不能真正修復已經損壞的文件系統,在后續使用過程中,仍然會再次出現主機端輸入輸出錯誤。 
2.需要修復的場景 
<1>.主機側發現存在文件系統不可讀寫的情況,也可以通過查看主機端日志來確認是否有文件系統異常發生: xfs_force_shutdown 、I/O error  
<2>.出現異常停電,供電恢復正常,主機和陣列系統重起之后 
<3>.存儲介質故障:出現LUN失效、RAID失效、以及IO超時或者出現慢盤,對慢盤進行更換,系統恢復正常之后 
<4>.傳輸介質故障:如光纖、網線等損壞等,數據傳輸鏈路斷開后又恢復正常之后

3.檢查文件系統 
注:檢查文件系統必須保證將文件系統umount成功。 
在根目錄下輸入“xfs_check /dev/sdd(盤符);echo $?”(注意:在執行 此命令之前,必須將文件系統umount,否則會出現警告信 “xfs_check: /dev/sdd contains a mounted and writable filesystem ”)敲回車鍵,查看命令執行返回值:0表示正常,其他為不正常,說明文件系統 損壞,需要修復。

4.修復過程

注:修復時需要暫停主機側的業務,umount 和 mount 無法修復文件系統 。 
1) 先umount要修復的文件系統的分區 
3) 然后輸入 “xfs_repair /dev/sdd(盤符)”執行修復命令。 
xfs_check /dev/sdd; echo $? 
A)如果為0===》成功修復。 
B) 如果不為0===》沒有成功:請執行xfs_repair –L /dev/sdd命令,再執 行xfs_repair(反復多修復幾次)

5.xfs常用命令 
xfs_admin: 調整 xfs 文件系統的各種參數 
xfs_copy: 拷貝 xfs 文件系統的內容到一個或多個目標系統(並行方式) 
xfs_db: 調試或檢測 xfs 文件系統(查看文件系統碎片等) 
xfs_check: 檢測 xfs 文件系統的完整性 
xfs_bmap: 查看一個文件的塊映射 
xfs_repair: 嘗試修復受損的 xfs 文件系統 
xfs_fsr: 碎片整理 
xfs_quota: 管理 xfs 文件系統的磁盤配額 
xfs_metadump: 將 xfs 文件系統的元數據 (metadata) 拷貝到一個文件中 
xfs_mdrestore: 從一個文件中將元數據 (metadata) 恢復到 xfs 文件系統 
xfs_growfs: 調整一個 xfs 文件系統大小(只能擴展) 
xfs_logprint: print the log of an XFS filesystem 
xfs_mkfile: create an XFS file 
xfs_info: expand an XFS filesystem 
xfs_ncheck: generate pathnames from i-numbers for XFS 
xfs_rtcp: XFS realtime copy command 
xfs_freeze: suspend access to an XFS filesystem 
xfs_io: debug the I/O path of an XFS filesystem

6.具體應用:

查看文件塊狀況: xfs_bmap -v sarubackup.tar.bz2 查看磁盤碎片狀況: xfs_db -c frag -r /dev/sda1 文件碎片整理: xfs_fsr sarubackup.tar.bz2 磁盤碎片整理: xfs_fsr /dev/sda1


發現系統並沒有正常開啟,有重啟動作,並報如圖錯誤,錯誤很明顯提示文件系統有損壞現象!在windows因非法重啟需要需要運行chkdsk命令進行修復,在linux下只有fsck來修復.linnux對於文件系統的錯誤非常敏感,由於意外斷電或者其它原因導致linux系統意外關機或者重啟,都可能對linux的文件系統造成嚴重的損壞,從而導致不能正常地進入系統。fsck在linux下就變成一個不可或缺的命令.但是fsck命令卻有一個致命的軟肋,就是對於已經掛載了的分區運行具有極大的危險性,修復不好就徹底把系統崩潰掉了。所以在修復前建立一個快照是一個最安全的方法。
    需要確認這個分區的文件系統是什么,這個可以用fdisk -l查看一下相關磁盤及盤符,輸入 fsck -c顯示完整的檢查進度;輸入y,如果有多個損壞的文件就會提示多次輸入y,進行修復.輸入完后 fsck -t ext4 /dev/sda1或fsck.ext4 .此命令只確定磁盤類型.第四步進行fsck -y /dev/sda1只對損壞的文件進行修復,修復OK后進行reboot
    總結
1:輸入 fsck -c
2: 輸入 Yes 
3: 輸入 fsck -t ext4 /dev/sda1
4: 輸入fsck -y /dev/sda1; 
5. reboot

filesys : 磁盤設備名稱(eg./dev/sda1),掛載(mount)點 (eg. / 或 /usr)
-t : 給定檔案系統的型式,若在 /etc/fstab 中已有定義或 kernel 本身已支援的則不需加上此參數
-s : 依序一個一個地執行 fsck 的指令來檢查
-A : 對/etc/fstab 中所有列出來的 分區(partition)做檢查
-C : 顯示完整的檢查進度
-d : 打印出  e2fsck 的 debug 結果
-p : 同時有 -A 條件時,同時有多個 fsck 的檢查一起執行
-R : 同時有 -A 條件時,省略 / 不檢查
-V : 詳細顯示模式
-a : 如果檢查有錯則自動修復
-r : 如果檢查有錯則由使用者回答是否修復
-y : 選項指定檢測每個文件是自動輸入yes,在不確定那些是不正常的時候,可以執行 # fsck -y 全部檢查修復。

 

 

https://www.cnblogs.com/zafu/p/11406525.html     

testdisk修復磁盤文件

https://blog.csdn.net/WannaHaha/article/details/89710113

Cmd命令在桌面版windowsPC和大多數windows server下都是通用的,所以掌握命令對於使用者非常重要;

經常會遇到檢查硬盤、清理磁盤的時候,但是使用360、金山等殺毒軟件會有一些安全隱患,尤其是大企業有自己的殺毒軟件不允許使用其他的帶有插件或廣告的殺毒軟件的情況下,掌握cleanmgr、chkdsk、sfc等命令顯得特別重要。

 

cleanmgr.exe是微軟系統內置的一個小程序,利用它,用戶可以以“比較安全的狀態清理系統垃圾”。事實上,它也就是磁盤清理。

 

Chkdsk:chkdsk簡單的說就是用來檢查磁盤的,也是一種簡單的修復命令;

 chkdsk i: /f  ,這里的i為磁盤的盤符,也就是你所要修復的盤符號,比如你想修復 c 盤,就將 i 替換成 c,后邊的/f就是修復命令,如圖所示:

 

 

Sfc.exe:系統文件檢查器(System file checker)是一個集成在windows系統中的一款工具軟件。該軟件可以掃描所有受保護的系統文件並驗證系統文件完整性,並用正確的Microsoft程序版本替換不正確的版本。

在Windows XP、win7、8、10中,它的功能更為強大,不僅可以掃描所有受保護的系統文件以驗證其版本,還可以設置文件緩存大小、清除文件緩存及重新填充“%SystemRoot%\System32\Dllcache”文件夾。

以管理員身份登錄Windows XP、win7、8、10,將Windows XP的安裝光盤放入光驅,在“命令提示符”窗口中鍵入“SFC/SCANNOW”命令后回車,“系統文件檢查器”開始自動掃描系統文件,而且不需要你的任何干預。

其實我們平時會經常用的應該還是下面兩個命令:

sfc /scannow 立即掃描所有受保護的系統文件,有些莫名其妙的問題就可以用它來解決喲,比重裝系統快一點.

sfc /purgecache清除文件緩存,用於系統精簡,磁盤空間的釋放(當你的系統盤磁盤空間不足的時候可以試一下)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM