Linux基礎命令---e2fsck

来源:https://www.cnblogs.com/wj78080458/archive/2018/11/01/9890333.html
-Advertisement-
Play Games

ex2fsck 檢查ext2、ext3、ext4文件系統,如果系統已經掛載了,那麼不建議去檢查,因為這樣是不安全的。此命令的適用範圍:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。 1、語法 e2fsck [-pacnyrdfkvtDFV] [-b s ...


ex2fsck

      檢查ext2、ext3、ext4文件系統,如果系統已經掛載了,那麼不建議去檢查,因為這樣是不安全的。此命令的適用範圍:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

 

1、語法

      e2fsck  [-pacnyrdfkvtDFV]  [-b superblock]  [-B  blocksize] [-l|-L bad_blocks_file ]  [-C fd]  [-j external-journal]  [-E extended_options ]  device

      設備是存儲文件系統的設備文件(例如/dev/hdc 1)。

 

2、選項列表

選項

說明

-a | -p

自動修複文件系統

-b superblock

指定塊大小。不要使用普通的超級塊,而是使用由superblock指定的替代超級塊。此選項通常在主超級塊損壞時使用。備份超級塊的位置取決於文件系統的塊大小。對於具有1k塊的文件系統,可以使用備份超級塊。在塊8193處找到;對於具有2k塊的文件系統,在塊16384處找到;對於4k塊在塊32768處找到。

其他備份超級塊可以通過使用mke2fs程式使用-n選項列印出創建超級塊的位置來確定。mke2fs的-b選項必須指定文件系統的塊大小,以便列印出準確的超級塊位置。

如果指定了另一個超級塊,並且文件系統不是只讀的,e2fsck將確保主超級塊在完成文件系統檢查後得到適當更新。

-B blocksize

正常情況下,e2fsck將在不同塊大小下搜索超級塊,以試圖找到適當的塊大小。在某些情況下,此搜索可能會被愚弄。此選項迫使e2fsck只嘗試在特定塊大小上定位超級塊。如果找不到超級塊,e2fsck將以致命錯誤結束。

-c

此選項會導致e2fsck使用badblock(8)程式對設備執行只讀掃描,以查找任何壞塊。如果發現任何壞塊,則將它們添加到壞塊inode中,以防止將它們分配給文件或目錄。如果指定了該選項兩次,則將使用無損讀寫測試完成壞塊掃描。

-C fd

此選項導致e2fsck將完成信息寫入指定的文件描述符,以便監視文件系統檢查的進度。運行e2fsck的程式通常使用此選項。如果文件描述符號為負數,則將使用文件描述符的絕對值,而進度信息最初將被抑制。之後,可以通過向e2fsck進程發送SIGUSR 1信號來啟用它。如果指定的文件描述符為0,e2fsck將在其業務進行時列印一個完成欄。這要求e2fsck在視頻控制台或終端上運行。

-d

顯示調試信息

-D

優化文件系統中的目錄。此選項導致e2fsck嘗試優化所有目錄,如果文件系統支持目錄索引,則通過重新索引這些目錄,或者對較小目錄的目錄進行排序和壓縮,或者使用傳統的線性目錄對文件系統進行排序和壓縮。即使沒有-D選項,e2fsck有時也可能優化幾個方向。例如,如果啟用目錄索引,並且目錄沒有索引,或者索引結構被破壞並需要重建,則會受益。-D選項強制對文件系統中的所有目錄進行優化。它們較小,搜索速度稍快,但實際上,您不需要使用此選項。-D選項將檢測單個目錄中具有重覆名稱的目錄項,由於性能原因,e2fsck通常不強制執行。

-E extended_options

設置e2fsck擴展選項。擴展選項是逗號分隔的,可以使用等於(‘=’)號進行參數設置。

ea_ver=extended_attribute_version,在檢查文件系統時,設置e2fsck所需的擴展屬性塊的版本。版本號可能是1或2。預設的擴展屬性版本格式是2。

fragcheck,在傳遞1期間,為文件系統中的文件列印任何不連續塊的詳細報告。

discard,在進行完整的文件系統檢查後,嘗試丟棄空閑塊和未使用的inode塊。

nodiscard,不要試圖丟棄空閑塊和未使用的inode塊。這個選項與discard選項正好相反。此設置為預設設置。

-f

強制檢查

-F

在開始檢查之前,清空緩衝區

-I file

指定文件中的塊添加在損壞列表

-j file

設置文件系統在日誌文件的路徑

-k

當與-c選項相結合時,壞塊列表中的任何現有壞塊將被保留,而通過運行badblocks (8)發現的任何新壞塊將被添加到現有的壞塊列表中。

-l filename

將文件名指定的文件中所列的塊號添加到壞塊的列表中。此文件的格式與badblocks (8)程式生成的格式相同。請註意,塊號是基於文件系統的塊大小。因此,對e2fsck使用-c選項更簡單、更安全,因為它將確保將正確的參數傳遞給badblock程式。

-L filename

將壞塊列表設置為文件名指定的塊列表。(此選項與-l選項相同,除非在將文件中列出的塊添加到壞塊列表之前清除壞塊列表。)

-n

打開文件系統只讀,並假設對所有問題的答案為“no”。允許非交互地使用e2fsck。此選項不能與-p或-y選項同時指定。

-p

自動修複(“preen”)文件系統。此選項將導致e2fsck自動修複任何不需要人工干預就能安全修複的文件系統問題。如果e2fsck發現可能需要系統管理員採取額外糾正措施的問題,e2fsck將列印問題的描述,然後以代碼4退出。(請參閱退出代碼部分。)此選項通常由系統的引導腳本使用。它不能與-n或-y選項同時指定。

-r

不執行任何操作,提供向後的相容性

-S

交換文件系統的位元組順序

-t

列印e2fsck的時間統計信息。如果使用此選項兩次,則附加的時間統計信息將按傳遞方式列印。

-v

顯示執行的詳細過程

-V

顯示命令版本號,並且退出

-y

所有的交互回話都回答yes,此選項不能與-n或-p選項同時指定。

 

3、說明

      e2fsck用於檢查ext 2/ext 3/ext 4系列文件系統。對於使用日誌的ext 3和ext 4文件系統,如果系統在沒有任何錯誤的情況下被不幹凈地關閉,通常在日誌中重播提交的事務之後,文件系統應該標記為乾凈。因此,對於使用日誌的文件系統,e2fsck通常會重播日誌並退出,除非它的超級塊表明需要進一步檢查。

      請註意,通常在掛載的文件系統上運行e2fsck是不安全的。唯一的例外是指定了-n選項,並且沒有指定-c、-l或-L選項。然而,即使這樣做是安全的,如果掛載了文件系統,e2fsck列印的結果也是無效的。

 

4、返回值

      e2fsck可以返回以下值:

    0,沒有錯誤。

    1,文件系統錯誤更正。

    2,文件系統錯誤更正,系統應該重啟。

    4,文件系統錯誤沒有更正。

    8,操作錯誤。

    16,語法錯誤。

    32,用戶取消了操作。

    128,共用庫錯誤

 

5、信號

  對e2fsck發送以下信號,並產生相應的結果:

    SIGUSR1,此信號導致e2fsck開始顯示完成欄或發出進度信息。(見對-C選項的討論。)

    SIGUSR2,此信號導致e2fsck停止顯示完成欄或發出進度信息。。

 

6、實例

以只讀的方式檢查sda1

[root@localhost ~]# e2fsck  -n /dev/sda1

e2fsck 1.41.12 (17-May-2010)

Warning!  /dev/sda1 is mounted.             //文件系統已經掛載,因此會有警告

Warning: skipping journal recovery because doing a read-only filesystem check.      //以只讀的方式執行,不去修複

/dev/sda1: clean, 39/128016 files, 49152/512000 blocks

     


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • scp命令是什麼 scp是 secure copy的縮寫, scp是linux系統下基於ssh登陸進行安全的遠程文件拷貝命令。 scp命令用法 把本地文件複製到遠端主機 user@xxx:file 用冒號分隔文件 把本地文件夾複製到遠端主機 r表示遞歸 把遠端文件複製到本地 指定埠 ...
  • 虛擬機,linux,網路設置,Destination unreachable(Host administratively prohibited ...
  • 設置防火牆iptables開放3306介面 在/etc/sysconfig下麵有個iptables文件,在控制台輸入命令 iptables -I INPUT -p tcp --dport 3306 -j ACCEPT 然後進行保存:service iptables save 更新防火牆規則:serv ...
  • 機緣巧合下,在快要畢業時找到了一份網路工程師的工作,對於學習通信工程的我來說,也不算是跨專業就業吧。在入職之前也瞭解了一下網路工程師的學習路徑,網路工程師是從事電腦信息系統的設計、建設、運行和維護工作,需掌握網路技術的理論知識和操作技能。然後我就開始了這方面的學習,比如網路的設計、CCNA等。 工 ...
  • 在某些應用場合我們可能需要通過一個設備通過WIFI將圖像傳到其它的機器進行顯示或者圖形分析,那怎麼可以低成本地實現呢?其實很簡單,我們只需要一塊 Raspberry Zero W 和一個RPI 攝像頭就行了,兩個加起來成本也只不過150左右。 這個組合不單單隻是實現一個圖傳,最重要的是Raspber ...
  • 參考博客:Docker CE 鏡像源站 參考博客:docker啟動異常driver not supported 1. 說明 之前部署docker服務的時候都是安裝最新的docker版本,並使用docker swarm部署大數據組件。 但是在近期的一次部署發現 docker 18.06.1 版本,在使 ...
  • ssh是什麼 ssh是一種通信協議,用於與另一臺電腦通信,有多個實現版本,openssh屬於開源實現 中間人攻擊 假設有中間人冒充用戶主機的情況 口令登錄 登錄成功後 登錄失敗的情況 公/私鑰對 公鑰登錄 失敗解決 ...
  • 1 - 在啟動grub菜單,選擇編輯選項啟動 2 - 按鍵盤e鍵,來進入編輯界面 3 - 找到Linux 16的那一行,將ro改為rw init=/sysroot/bin/sh 4 - 現在按下 Control+x ,使用單用戶模式啟動 5 - 現在,可以使用下麵的命令訪問系統 chroot /sy ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...