# ********************************************************************** # 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 $?