1. 程式人生 > >Linux文件系統只讀Read-only file system

Linux文件系統只讀Read-only file system

linux 文件系統 只讀


技術分享

問題描述:

1、系統無法進行磁盤的讀寫操作(touch,cp,chmod)等等

2、服務器無法啟動(也是因為無法創建文件)

3、只有涉及到系統磁盤的寫操作,都會報錯"Read-only file system"

問題原因:

1、系統沒有正常關機,導致虛擬磁盤出現文件系統錯誤;

2、機器硬盤故障導致硬盤只讀


一般情況是由於系統發現磁盤硬件(Riad卡,硬盤)故障或文件系統中文件被損壞後而采取的保護機制導致的。為了保護數據不破壞分區中已有內容,Linux在掛載文件系統是就只用read-only只讀方式加載。


問題解決:

1、將系統重要的文件備份到遠程主機中

scp -r dirname/filename [email protected]_hostIP:/backupdir

通過scp -r 可以避免對系統有寫操作

2、然後重啟系統,切換單用戶模式。

init 1

3、使用fsck手動修復,具體操作如下:

fsck.ext4 -y /dev/vda1(根分區對應的磁盤分區,可通過df -h 命令獲取)

友情提示:根據不同的文件系統試用不同的fsck版本,如果是ext3文件系統,應該使用fsck.ext3對文件系統進行修復。在修復的過程中可能花費時間較長,請耐心等待,不要輕易手動重啟服務器。修復完成之後可以通過命令“shutdown -r now" reboot重啟服務器

4、在實驗的過程中,還可常識使用如下命令進行修復

mount -o remount rw /




擴展知識:fsck簡介
fsck不僅可以對文件系統進行掃描,還能修正文件系統的一些問題。註意的是fsck掃描文件系統時一定要在單用戶模式、修復模式或把設備umount後進行。建議在單用戶模式下運行。如果掃描正常運行中的系統,會造成系統文件損壞。
文件系統掃描工具有fsck、fsck.ext2、fsck.ext3、fsck.ext4、fsck.msdos、fsck.cramfs、fsck.ext4dev、fsck.vfat。最好是根據不同的文件系統來調用不同的掃描工具,比如ext3的文件系統使用fsck.ext3,ext4文件系統使用fsck.ext4等。 /dev/vda3是ext3的文件系統,這裏介紹fsck.ext3的參數

fsck.ext3

[語法]
fsck.ext3[必要參數][選擇參數][設備代號]

[功能]
fsck.ext3命令:針對ext3文件系統進行檢測修復

[執行權限] root

[參數]

必要參數
-a非互交模式,自動修復 -

c檢查是否存在有損壞的區塊。
-C fsck.ext3命令會把全部的執行過程,都交由其逆向敘述,便於監控程序

-d詳細顯示命令執行過程

-f強制進行檢查
-F檢查文件系統之前,先清理該保存設備塊區內的數據

-l把文件中所列出的損壞區塊,加入標記

-L清除所有損壞標誌,重新標記
-n非交互模式,把欲檢查的文件系統設成只讀

-P 設置fsck.ext2命令所能處理的inode大小為多少

-r交互模式

-R忽略目錄

-s順序檢查
-S效果和指定“-s”參數類似

-t 顯示fsck.ext2命令的時序信息。

-v顯示詳細的處理過程 -y關閉互動模式 選擇參數
-b指定分區的第一個磁區的起始地址/Super Block

-B 設置該分區每個區塊的大小
-I設置欲檢查的文件系統,其inode緩沖區的區塊數目

-V顯示版本信息


本文出自 “傻子太多,騙子不夠用了” 博客,請務必保留此出處http://dadonggg.blog.51cto.com/12672150/1947687

Linux文件系統只讀Read-only file system