# ********************************************************************** # Linux shell 自啟動腳本寫法 # 說明: # 我們在做系統的時候,寫自啟動腳本是常有的事,下面是一個樣板分析。 # # 2017-1-10 深圳 南山平山村 曾劍鋒 # ********************************************************************** #!/bin/sh # 腳本運行的shell # # sshd Starts sshd. # 描述 # # 接下來是運行腳本之前需要滿足的一些條件,主要是做一些檢查性質的內容, # 防止后續程序在運行的時候,出現一些環境問題,或者對其他的后續程序需要 # 運行的先決條件進行檢查。 # Make sure the ssh-keygen progam exists [ -f /usr/bin/ssh-keygen ] || exit 0 # Create any missing keys /usr/bin/ssh-keygen -A # 如果有文件需要生成,有些權限希望默認給出,這樣就不用每次去給權限了。 umask 077 # 當系統開始啟動的時候,運行的函數 start() { printf "Starting sshd: " /usr/sbin/sshd touch /var/lock/sshd echo "OK" } # 當系統開始停止的時候,運行的函數 stop() { printf "Stopping sshd: " killall sshd rm -f /var/lock/sshd echo "OK" } # 當系統開始重啟的時候,運行的函數 restart() { stop start } # 這里可以認為是對上面三個函數進行分支調用 case "$1" in start) start # 調用start函數 ;; stop) stop # 調用stop函數 ;; restart|reload) restart # 調用restart函數 ;; *) echo "Usage: $0 {start|stop|restart}" exit 1 esac # 退出並返回執行結果 exit $?