1. 程式人生 > >/dev被異常刪除的問題

/dev被異常刪除的問題

kit boot span 沒有 sync dbus pos 通過 rec

今天遇到一個問題,在執行某些操作後,發現經常報“read_urandom: /dev/urandom: open failed: No such file or directory”這個錯誤。後來查看/dev,發現/dev下的設備都不見了,查看日記記錄發現。我誤操作在沒有解掛臨時dev時,就刪除了臨時目錄。我做了如下操作:

mkdir /home/tmp/dev

mount --bind /dev /home/tmp/dev

rm -rf /home/tmp

在沒有解掛臨時dev時,我就刪除了tmp目錄,因為/dev和/home/tmp/dev已經綁定,刪除dev目錄實際就刪除了系統/dev目錄,由於系統/dev目錄下有幾個設備正在被使用,不能刪除,所以/dev目錄被保留下來,但是/dev目錄下的大多數設備都已經被刪除了。

上網搜索下,dev設備被誤刪應該如何解決,很多網友說重啟就可以了,/dev下的設備是可以重建的。於是我reboot重啟了,結果報出如下錯誤,重啟都不行。

linux-UMLhEm:/tmp/tmp.UuZ8TIdxwa # reboot
Error getting authority: Error initializing authority: Error calling StartServiceByName for org.freedesktop.PolicyKit1: GDBus.Error:org.freedesktop.DBus.Error.TimedOut: Activation of org.freedesktop.PolicyKit1 timed out (g-dbus-error-quark, 20)
Could not

watch jobs: Connection timed out
Failed to talk to init daemon.

查看messages記錄如下:

2018-02-09T14:19:34.919559+08:00|crit|systemd[-]|Assertion ‘sd_id128_randomize(&id) >= 0‘ failed at src/core/dbus.c:685, function bus_on_connection(). Aborting.
2018-02-09T14:19:34.935271+08:00|emerg|systemd[-]|Caught <ABRT>, dumped core as pid 5496.
2018-02-09T14:19:34.935506+08:00|emerg|systemd[-]|Freezing execution.
2018-02-09T14:20:00.045113+08:00|info|dbus-daemon[-]|dbus[931]: [system] Failed to activate service ‘org.freedesktop.systemd1‘: timed out

原來是dev下的random urandom被刪除後,影響到systemd,導致systemd掛了。這種情況下,只能強制重啟,通過運行 reboot -nf 命令,這樣重啟時可以指定跳過 init 的處理和 sync 操作,重啟後問題解決,系統恢復正常。

/dev被異常刪除的問題