linux啓動時候libc.so.6等庫無權訪問(Permission denied)問題解決

      這是一次慘痛的教訓。前兩天剛在網上看了人們因爲一個空格引發的血案(哈哈,沒介個誇張了),說的是一個開源程序的安裝腳本里面因爲多了一個空格導致程序誤刪除了系統usr目錄。呼呼,介個,太有殺傷力了。可是介個今天盡然發生在了我自己身上。BS一下。

 

問題起因:

       昨天寫了個程序發佈腳本,因爲多了一個空格,從而導致把系統lib目錄刪除了。直接導致系統無法正常啓動。

 

 

解決方式:

       通過相同版本的系統盤引導,進入救援模式(linux rescue)。選擇好語言,配置網絡特別重要,因爲呆會要通過scp命令從另外一個機器上拷貝一個lib目錄過來。(注,如果機器無法恢復,可以通過這種方式把文件從機器裏面恢復備份出來)。

 

操作:

1、在光驅插入系統盤,從光驅啓動。

2、在boot命令行輸入: linux rescue

3、根據提示選擇語言,配置網絡,選擇操作權限,如果要修復一定要選擇可寫。

4、這樣程序會把之前安裝的系統鏡像到/mnt/sysimage 目錄底下。

5、這個時候通過shell命令可以操作和查看這個目錄下的文件。(chroot /mnt/sysimage)

6、這個時候通過scp命令從另外一個相同系統版本的機器上把lib目錄拷貝過來。再重新啓動系統。

7、注,這裏面沒有ll命令,只能用ls。這前不知道用了ll還以爲有問題。

 

這樣,第一階段算告一個段落了。呼呼,出來呼吸一下新鮮空氣,機房空氣真差,而且好吵。有木有,相信各位同胞們都有體會。

 

機器是起來了,可是新的問題又來了。什麼情況

 

在系統開機的時候直接提示:

libc.so.6 共享庫打開失敗,原因無權訪問(Permission denied)

libm.so.6等一系列在lib目錄下存在鏈接的庫都找不到了(No such file or directory),糾結了,爲什麼捏?

 

通過各種渠道,問部門linux高手,在網上找資料,可是結果只有一個沒辦法。高手都建議我重裝了。

可是我就不相信這個問題解決不了,於是我去找了一些用戶相關及linux權限控制的資料。終於讓我看到了希望

selinux高安全性內核。如果通過這個guest用戶登錄系統即使是否777權限的文件也不能正常訪問,好了,希望來了。

於是在網上找了一下關閉這個用戶組的方式,方式如下:

 

vim /etc/sysconfig/selinux 把selinux設置爲disable。

然後開機啓動,哈哈,一切搞定,OK

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章