ubuntu中rc.local無效


在ubuntu中寫了一點iptables規則,但是,竟然iptables竟然無效,經過多方查找問題。。。眼淚。。。

終於發現是rc.local竟然沒有運行,我暈。仔細檢查iptables腳本n遍,沒有發現問題。但是,重啟后仍然沒有運行。

iptables表為空。於是,單獨拿出一條規則,在終端運行,在用iptables -L進行檢查,結果正常顯示。

經過網絡搜索后,有人提示說:可能默認的sh不是bash導致,腳本不兼容,從而沒有執行。

注意:有的ubuntu16.04系統默認都沒有rc.local腳本,所以首先要排除沒有執行權限的問題。

ls -al /etc/rc.local   如果沒有執行權限,顯然無法啟動。這是只要 chmod +x /etc/rc.local就ok了。

然后,在檢查是否是dash腳本不兼容的問題,現在這類情況已經不多見了。修改為bash的方法:

方法1:在終端執行 sudo dpkg-reconfigure dash,然后選擇 no.

方法2:重新進行軟鏈接:

sudo rm /bin/sh
sudo ln -s /bin/bash /bin/sh

最后是systemd導致的rc.local無法啟動。這類情況網上找答案吧。我沒遇到過,也不太了解systemd。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM