編寫開機自動執行的腳本auto.sh
#!/bin/sh
#chkconfig: 2345 20 80
#description:Server reboot.Execute auto.sh
#client post port 80 redirect 9527
#sudo iptables -A PREROUTING -t nat -i eth0 -p tcp —dport 80 -j REDIRECT —to-port 9527
#auto.sh log
DIR=/home/linux-nice
echo "execute auto.sh" > $DIR/auto_log.txt
chkconfig命令
chkconfig命令檢查、設置系統的各種服務。這是Red Hat公司遵循GPL規則所開發的程序,它可查詢操作系統在每一個執行等級中會執行哪些系統服務,其中包括各類常駐服務
等級0表示:表示關機
等級1表示:單用戶模式
等級2表示:無網絡連接的多用戶命令行模式
等級3表示:有網絡連接的多用戶命令行模式
等級4表示:不可用
等級5表示:帶圖形界面的多用戶模式
等級6表示:重新啓動
#!/bin/sh 告訴linux服務器這是一個.sh腳本
**2345**對應linux服務器的2345階段能執行auto.sh腳本
20表示啓動優先級序號 80表示關閉優先級序號(就這個不太懂 有哪位大佬能提供資料嗎)
[root@VM_158_86_centos ~]# cd /etc/rc.d/init.d/ 進入該文件夾
[root@VM_158_86_centos init.d]# vi auto.sh 編寫腳本
[root@VM_158_86_centos init.d]# vi auto.sh
[root@VM_158_86_centos init.d]# chmod +x auto.sh 給腳本添加執行權限
[root@VM_158_86_centos init.d]# chkconfig --add auto.sh 添加腳本至開機自啓
[root@VM_158_86_centos init.d]# chkconfig auto.sh on 開啓
[root@VM_158_86_centos init.d]# sudo reboot 重啓
驗證
請事先創建好/home/linux-nice/auto_log.txt 文件
然後重啓服務器 sudo reboot
auto_log.txt是否輸出了”execute auto.sh”
結果打印出來了 說明開機自動執行了該腳本
prefect
補充:
有可能linux系統沒有/etc/rc.d/init.d/ 文件夾 就在/etc/rc.local
sh /path/xxx.sh命令