我有一個腳本在/etc/init/ttyS0.conf
.我是c配置 KVM 來賓以進行串行控制台訪問所以即使網路介面壞了,我仍然可以透過串行連接存取它。
我可以ttyS0
透過運行來啟動它sudo start ttyS0
,它工作得很好,直到我重新啟動。重新啟動系統後,ttyS0
程式不再運作。
如何讓這個腳本在啟動時自動啟動?
謝謝
我的腳本如下圖所示:
# ttyS0 - getty
#
# This service maintains a getty on ttyS0 from the point the system is
# started until it is shut down again.
start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]
respawn
exec /sbin/getty -L 115200 ttyS0 xterm
答案1
從這裡
respawn
console none
start on (local-filesystems)
stop on [!12345]
script
exec start ttyS0
end script
我懷疑應該可以工作。否則,將 start tty0 替換為啟動您要啟動的內容的腳本
答案2
答案3
Ubuntu 使用基於運行等級的 SYSV 啟動(與 Debian 相同)。
您必須將腳本新增至目前使用的運行等級。對於 Ubuntu,使用的運行級別在裡面預設進程數為2。因此,您必須將 ttyS0.conf 新增至 rC2.d 目錄並聲明您要啟動它(而不是停止)。您可以透過向腳本添加軟連結來實現此目的,如下所示:
ln -s /etc/init/ttyS0.conf /etc/rc2.d/S99ttyS0.conf
S99 前綴表示「S」-> 啟動腳本以及必須啟動腳本的「99」順序(如果需要在此腳本之後執行其他腳本,請降低此數字)。
然後你需要在重新啟動(運行等級6)或關閉(運行等級0)時停止它:
ln -s /etc/init/ttyS0.conf /etc/rc0.d/S99ttyS0.conf
ln -s /etc/init/ttyS0.conf /etc/rc6.d/S99ttyS0.conf
前綴類似,只是「S」-> 停止腳本(僅適用於運行等級 0 和 6)。
希望這可以幫助。更多資訊這裡