指令碼開機啟動

2022-03-30 09:07:30 字數 2728 閱讀 1854

vim /etc/init.d/rc.local 檔案(ubuntu)

/etc/rc.d/rc.local或者 /etc/rc.local裡(centos),

方法一:

1) 將你的啟動指令碼複製到 /etc/init.d目錄下

2) 設定指令碼檔案的許可權

$ cd /etc/init.d

$ sudo chmod 755 /etc/init.d/ap.sh

3) 執行如下命令將指令碼放到啟動指令碼中去:

$sudo update-rc.d ap.sh defaults 95

注:其中數字95是指令碼啟動的順序號,按照自己的需要相應修改即可。在你有多個啟動指令碼,而它們之間又有先後啟動的依賴關係時你就知道這個數字的具體作用了。

解除安裝啟動指令碼的方法:

$ cd /etc/init.d

$ sudo update-rc.d -f ap.sh remove

removing any system startup links for /etc/init.d/ap.sh ...

/etc/rc0.d/k95ap.sh

/etc/rc1.d/k95ap.sh

/etc/rc2.d/s95ap.sh

/etc/rc3.d/s95ap.sh

/etc/rc4.d/s95ap.sh

/etc/rc5.d/s95ap.sh

/etc/rc6.d/k95ap.sh

方法二:

centos 5.x 以前都可以用/etc/rc.local

centos 6.x 以後改成/etc/rc.d/rc.local

一、/etc/rc.local這是乙個最簡單的方法,編輯「/etc/rc.local」,把啟動程式的shell命令輸入進去即可(要輸入命令的全路徑),類似於windows下的「啟動」。

使用命令vi/etc/rc.local

然後在檔案最後一行新增要執行程式的全路徑。

例如,每次開機時要執行乙個ap.sh,這個指令碼放在/opt下面,那就可以在「/etc/rc.local」中加一行 「/opt/./ap.sh」(注意在 exit 0之前加),或者兩行「cd /opt」和「./ap.sh」。

方法三  方法一中新增 :     server   指令碼  start/stop

建立/etc/init.d/zzxap文字檔案,輸入下面的內容:

#!/bin/sh

case "$1" in

start)

start-stop-daemon --start --background --exec /etc/init.d/ap.sh #新增指令碼位置

;;stop)

start-stop-daemon --stop --name ap.sh #這裡不需要加位置

esac

chmod 755 /etc/init.d/zzxap

這樣子,就可以使用service命令來啟動和關閉程序了,例如啟動程序如下:

root@localhost:~# service zzxap start
root@localhost:~# ps aux|grep zzxap

root@localhost:~# service zzxap stop

root@localhost:~# ps aux |grep zzxap

update-rc.d zzxap defaults 99   

update-rc.d -f zzxap remove(解除安裝)

到這裡還不能實現開機自啟動 要接著設定第一步驟

$ sudo chmod 755 /etc/init.d/ap.sh3) 執行如下命令將指令碼放到啟動指令碼中去:

$sudo update-rc.d ap.sh defaults 95       #update-rc.d後面有三個引數,分別是/etc/init.d下的:1、指令碼名字,2、預設安裝方式,3、執行的優先順序。   優先順序的數字越大,表示越遲執行,這裡我們把自己寫的服務放在最後執行。

1、執行級別:

linux系統任何時候都執行在乙個指定的執行級上,並且不同的執行級程式和服務都不同,所要完成的工作和要達到的目的也不同,系統可以在這些執行級之間進行切換,來完成不同的工作。

執行級別等級:

在這裡需要注意的是,在debian下(ubuntu其中之一)level2~5是沒有任何區別的。

使用以下命令,可以檢視當前的執行級別:

[plain]view plain

copy

runlevel  

runlevel顯示上次的執行級別和當前的執行級別,「n」表示沒有上次的執行級別。
使用以下命令,可以切換執行級別:

[plain]view plain

copy

init [123456]  

例如,init 0表示關機,init 6表示重啟。
2、啟動步驟:

NAT開機啟動指令碼

nat開機啟動指令碼 bin sh sbin modprobe ip nat ftp sbin modprobe ip conntrack ftp echo 1 proc sys net ipv4 ip forward echo 0 proc sys net ipv4 icmp echo ignor...

linux 開機啟動指令碼

開機啟動有兩種方式 通過vnc啟動方式進行說明 一 第一種是通過rc.local檔案,直接將要執行的指令碼名稱寫進去,但是此方法無法保證指令碼執行時網絡卡裝置是否已經徹底啟動。通過自帶軟體中心安裝x11vnc,使用下列命令設定密碼。sudo x11vnc storepasswd 新建.sh 指令碼檔...

linux swoole 建立指令碼開機啟動

常規的swoole服務,每次linux重啟之後,就得手動開啟,比較麻煩,所以更換成linux開機自啟的方式。在 etc init.d目錄下建立start websocket檔案 vi start websocket bin sh chkconfig 23456 90 10 description w...