/dev/null文件設備的權限不對,會造成諸如pop3中的:Starting POP3d: ll_daemon_resetio: Permission denied的錯誤,或者是啟動時候出現如下錯誤:
/etc/rc.d/rc.sysinit:line 88: /dev/null: Read-only file system
/etc/rc.d/rc.sysinit:line 99: /dev/null: Read-only file system
解決的方法首先是通過linux的救援模式或者是單用戶模式進入系統,或是進入只讀模式,通過下面命令解決文件只讀進行修改:
mount -n -o remount,rw /
然後:
rm -f /dev/null
mknod -m 666 /dev/null c 1 3
標志
b 表示特殊文件是面向塊的設備(磁盤、軟盤或磁帶)。
c 表示特殊文件是面向字符的設備(其他設備)。
p 創建 FIFO(已命名的管道)。
————————————————————————
c.創建虛擬設備(dev),日志記錄的時候有的選項可能用到它們。在默認情況下,是使用/dev目錄下的文件,但是由於我們需要把DNS限制到一個目錄,所以必須完全把/dev下用到的文件(或者說設備)模擬過來才可以。
ls -lL /dev/zero /dev/null /dev/random
看到類似
crw-rw-rw- 1 root root 1, 3 2003-09-15 /dev/null
crw-r–r– 1 root root 1, 8 2003-09-15 /dev/random
crw-rw-rw- 1 root root 1, 5 2003-09-15 /dev/zero
這樣的,將其中的1,3這樣的數字記錄下來,這表示主設備號和次設備號(一般來說主設備號用來區分設備的種類;次設備號則是為了作唯一性區分,標明不同屬性——注意,在unix系統中是把設備也當作文件來對待的),在redhat 9下,ls加不加-L參數都無所謂,但是在Solaris下則一定要加上才可以顯示。
mknod dev/null c 1 3
mknod dev/zero c 1 5
mknod dev/random c 1 8