Linux文件系統只讀Read-only file system
問題描述:
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