① 如何在linux系統自動mount一個NTFS分區只讀方式掛載
編輯/etc/fstab
比如想在開機的時候將/dev/sda1安裝在/mnt 可以在/etc/fstab中加入一行專
/dev/sda1 /mnt ext3 defaults 0 1
保存了屬就OK了。
② 如何快速解決linux只讀系統 Read-only file system
改文件復:
sudochmod764filename
7文件制filename創建者可寫,可讀,可執行。
6文件filename創建者同組成員可讀,可執行。
4其他人可執行。
改文件系統:
fsck.ext4 -y /dev/sda1(根分區對應的磁碟分區,可通過df -h 命令獲取)
友情提示,磁碟操作涉及數據安全,不要照搬我的命令,否則數據丟失自己面壁去哭去。
③ 如何快速解決linux只讀系統 Read-only file system
解決方法 :使用fsck手動修復,具體操作如下:
使用root進入單用戶模式,運行
fsck.ext3 -y /dev/vda3
說明:ext3的文件系統使用fsck.ext3,ext4文件系統使用fsck.etx4。/dev/vda3是系統/根分區。運行完畢後,reboot重啟系統就恢復正常。20多台出問題的都是這樣修復的,無失敗案例。fsck.ext3開始進入掃描、修正文件系統,這個過程有時很快,有時比較長,中間有數次停頓的過程,只需等待即可,千萬不要以為死機而重啟伺服器。修正完文件系統後,如果沒有提示重啟系統,也需要reboot來重啟系統。
擴展知識: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命令:針對ext3文件系統進行檢測修復
-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顯示版本信息
④ 如何解決linux系統只讀
linux系統重啟或無故變為只讀造成網站無法正常訪問的簡單臨時的做法:
一
1、mount:
用於查看哪個模塊輸入只讀,一般顯示為:
/dev/hda1 on / type ext3 (rw)
none on /proc type proc (rw)
usbdevfs on /proc/bus/usb type usbdevfs (rw)
none on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/hda5 on /home type ext3 (rw)
none on /dev/shm type tmpfs (rw)
/dev/hda2 on /usr/local type ext3 (rw)
/dev/nb1 on /EarthView/RAW type ext3 (ro)(變為只讀了)
2、如果發現有ro,就重新mount,或者umount以後再remount
3、umount /dev/nb1
如果發現有提示「device is busy」,找到是什麼進程使得他busy
fuser -m /mnt/data 將會顯示使用這個模塊的pid
fuser -mk /mnt/data 將會直接kill那個pid
然後重新mount即可。
4、還有一種方法是直接remount,命令為
mount -o rw,remount /mnt/data
二
具體深入的做法,情況不同可以自行選擇:
伺服器/var/log/messages報錯 :
end_request: I/O error, dev sda, sector 122194293 Buffer I/O error on device sda1, logical block 446493 lost page write e to I/O error on sda1
下面是整個處理全過程
[root@php5 ~]# fdisk -lu #第一步 :找出本地扇片所在的分區。
Disk /dev/sda: 73.4 GB, 73407868928 bytes
255 heads, 63 sectors/track, 8924 cylinders, total 143374744 sectors
Units = sectors of 1 * 512 = 512 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 63 4096574 2048256 83 Linux
/dev/sda2 4096575 75778604 35841015 83 Linux
/dev/sda3 75778605 129034079 26627737+ 83 Linux
/dev/sda4 129034080 143364059 7164990 5 Extended
/dev/sda5 129034143 139267484 5116671 83 Linux
/dev/sda6 139267548 143364059 2048256 82 Linux swap
[root@php5 ~]# tune2fs -l /dev/sda3 |grep "Block size" #找到block大小。
Block size: 4096
(122194293-75778605)*512/4096 =528691 利用公式算出邏輯塊地址
b = (int)((L-S)*512/B)
[root@php5 ~]# debugfs
debugfs 1.35 (28-Feb-2004)
debugfs: open /deb/sda3
/deb/sda3: No such file or directory while opening filesystem
debugfs: open /dev/sda3
debugfs: icheck 582391
Block Inode number
582391 277584
debugfs: ncheck 277584
Inode Pathname
277584 /users/inn.net.cn/data/upload/download/innshow004.rar
debugfs: quit
[root@php5 ~]#dd if=/dev/zero of=/dev/sda1 bs=4096 count=1 seek=582391 #找到這個快的文件之後,需要做好備份,我們強制把它設置為0位元組。
[root@php5 ~]# sync
⑤ 如何在linux系統自動mount一個NTFS分區只讀方式掛載
你用的是什麼版本的linux?如果是ubuntu8.04以上的版本,它會自動掛載ntfs分區的,自版動掛載在/media下。當然,權你也可以用mount命令手動掛載,只是在掛載前,你必須先用umount命令卸載,不卸載舊的,你是無法掛載新的。我估計你是沒有先卸載,而試圖直接掛載,所以導致了你掛載不上的。
⑥ Linux報錯只讀文件系統(集群非法關機、斷電)踩坑
出現錯誤的原因是由於我突發奇想寫了一個reboot集群的腳本,導致集群非法關機,然後就炸了。。。
在我使用上述reboot腳本後,發現MobaXterm(遠程工具)ssh死活連不上了。
趕緊檢查集群,發現如下報錯:
由於心急沒有管報錯(第一次見看不懂),直接輸密碼進入界面(我的是無可視化界面的CentOS 6.5)。
進界面後首先嘗試ssh其他節點。報錯。
嘗試從宿主機ping虛擬機,也ping不通。
那麼首先確定網路問題,查看/etc/sysconfig/network-scripts/ifcfg-eth0下的ip配置。
沒有問題。
輸入命令查看ip:
發現只有127.0.0.1,此時基本確定網路服務故障或未自啟動。
輸入命令啟動網路服務:
可以看到ip正常了。
測試宿主機ping虛擬機也正常了。
測試虛擬機ping虛擬機也正常了。
測試ssh本機也正。。。等等!
ssh沒通,報錯如下:
和最開始的報錯是一樣的,有了經驗,大致也猜測的出很有可能sshd服務也沒有自啟動。
輸入sshd啟動命令:
控制台報錯信息:
/var/lock/subsys/sshd not group or world-writable
出現此報錯,整個系統問題已經初現端倪。
雖然啟動sshd服務報錯了,但嘗試ssh本機卻正常了。
此時試著啟動集群的各個進程。
果然,大量報錯。
只讀文件系統 幾個大字摧毀我幼小的心靈
想起解決的網路、ssh問題,明白了罪惡的源頭就在....
就是它!萬惡之源!
首先查看掛載的分區:
又有報錯,不過看不懂。猜測是mount命令相關的文件也被修改成只讀了。
開機報錯的/dev/sda1分區並沒有掛載,而/dev/sda3是正常的rw(讀寫)狀態。
我有點暈。
嘗試修復/dev/sda3分區:
第一次使用fsck命令,看不太明白,不過該命令沒起到什麼作用。
有點絕望,隨手嘗試了修改/dev/sda3分區的狀態:
居然不報錯了!
至此報錯全部消失,網路服務和ssh服務也正常開機自啟了。
留下懵逼的我,具體原理日後學習再補充。
⑦ Linux如何將只讀分區重新mount可讀寫分區
當系統出現故障進入單用戶模式時,通常/分區(根分區)會以只讀方式mount,這時候如果只是對其他磁碟執行fsck當然沒有問題,但是如果想要修改文件,會發現所有文件都是只讀狀態,無法修改。好在Linux下的mount命令支持一個remount選項,只需要執行如下命令: 就可以將根分區重新mount為讀寫狀態,從而可以完成必要的系統配置修改。
⑧ 如何解決linux系統只讀
卸載文件系統——fsck檢查、修復文件系統——重新掛載
如果是系統正在使用的文件系統,無法卸載,重啟修復
⑨ linux 文件系統變為了只讀,這個問題怎麼解決
1、mount:
用於查看哪個模塊輸入只讀,一般顯示為:
/dev/hda1 on / type ext3 (rw)
none on /proc type proc (rw)
usbdevfs on /proc/bus/usb type usbdevfs (rw)
none on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/hda5 on /home type ext3 (rw)
none on /dev/shm type tmpfs (rw)
/dev/hda2 on /usr/local type ext3 (rw)
/dev/nb1 on /EarthView/RAW type ext3 (ro)(變為只讀了)
2、如果發現有ro,就重新mount,或者umount以後再remount
3、umount /dev/nb1
如果發現有提示「device is busy」,找到是什麼進程使得他busy
fuser -m /mnt/data 將會顯示使用這個模塊的pid
fuser -mk /mnt/data 將會直接kill那個pid
然後重新mount即可。
4、還有一種方法是直接remount,命令為
mount -o rw,remount /mnt/data
二
具體深入的做法,情況不同可以自行選擇:
伺服器/var/log/messages報錯 :
end_request: I/O error, dev sda, sector 122194293 Buffer I/O error on device sda1, logical block 446493 lost page write e to I/O error on sda1
下面是整個處理全過程
[root@php5 ~]# fdisk -lu #第一步 :找出本地扇片所在的分區。
Disk /dev/sda: 73.4 GB, 73407868928 bytes
255 heads, 63 sectors/track, 8924 cylinders, total 143374744 sectors
Units = sectors of 1 * 512 = 512 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 63 4096574 2048256 83 Linux
/dev/sda2 4096575 75778604 35841015 83 Linux
/dev/sda3 75778605 129034079 26627737+ 83 Linux
/dev/sda4 129034080 143364059 7164990 5 Extended
/dev/sda5 129034143 139267484 5116671 83 Linux
/dev/sda6 139267548 143364059 2048256 82 Linux swap
[root@php5 ~]# tune2fs -l /dev/sda3 |grep "Block size" #找到block大小。
Block size: 4096
(122194293-75778605)*512/4096 =528691 利用公式算出邏輯塊地址
b = (int)((L-S)*512/B)
[root@php5 ~]# debugfs
debugfs 1.35 (28-Feb-2004)
debugfs: open /deb/sda3
/deb/sda3: No such file or directory while opening filesystem
debugfs: open /dev/sda3
debugfs: icheck 582391
Block Inode number
582391 277584
debugfs: ncheck 277584
Inode Pathname
277584 /users/inn.net.cn/data/upload/download/innshow004.rar
debugfs: quit
[root@php5 ~]#dd if=/dev/zero of=/dev/sda1 bs=4096 count=1 seek=582391 #找到這個快的文件之後,需要做好備份,我們強制把它設置為0位元組。
[root@php5 ~]# sync
⑩ 如何快速解決linux只讀系統 Read-only file system
解決方法 :使用fsck手動修復,具體操作如下: 使用root進入單用戶模式,運行 fsck.ext3 -y /dev/vda3 說明:ext3的文件系統使用fsck.ext3,ext4文件系統使用fsck.etx4。/dev/vda3是系統/根分區。運行完畢後,reboot重啟系統就恢復正常。20多台出問題的都是這樣修復的,無失敗案例。fsck.ext3開始進入掃描、修正文件系統,這個過程有時很快,有時比較長,中間有數次停頓的過程,只需等待即可,千萬不要以為死機而重啟伺服器。修正完文件系統後,如果沒有提示重啟系統,也需要reboot來重啟系統。 擴展知識: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命令:針對ext3文件系統進行檢測修復 -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顯示版本信息