開發nginx啟動指令碼及開機自啟管理(case)

2022-04-21 09:46:21 字數 2120 閱讀 1910

往往我們在工作中需要自行寫一些指令碼來管理服務,一旦服務異常或宕機等問題,指令碼無法自行管理,當然我們可以寫定時任務或將需要管理的指令碼加入自啟等方法來避免這種尷尬的事情,case適用與寫啟動指令碼,下面給大家帶來乙個開機自啟管理nginx服務,寫的不好,望各位大佬指點評價...

已知nginx常用管理命令為:

用case指令碼模擬nginx服務啟動關閉:/etc/init.d/nginx 並實現可以通過chkconfig管理

指令碼如下:

1

[root@bqh-118 scripts]# vim nginx.sh

2#!/bin/sh

3#date:2019-04-21

4#author:aゞ錦衣衛

5#chkconfig:2345 28 62

6#script function:nginx service boot-up self-start script

7[ -f /etc/init.d/functions ] && . /etc/init.d/functions #公共函式,提供基本函式呼叫89

10shan='\e[31;5m'

11res='\e[0m'

12jiance()

20start_nginx()

29stop_nginx()

38reload_nginx() cat't open $pidfile ,no such file or directory!$"

41else

42$nginx -s reload

43jiance reload

44return $retval

45fi

46return $retval47}

48case "$1" in #case互動式判斷以上獲取的值匹配以下哪些條件並給出相應的提示資訊

49start)

50start_nginx

51retval=$?

52;;

53stop)

54stop_nginx

55retval=$?

56;;

57restart)

58stop_nginx

59sleep 2

60start_nginx

61retval=$?

62;;

63reload)

64reload_nginx

65retval=$?

66;;

67*)

68echo -e "$usage:$0 $"

69exit 1

70esac

71 exit $retval

執行指令碼效果如下:

測試完指令碼沒問題,我們就cp到啟動檔案下並賦予可執行許可權:

接著我們需要給指令碼配置啟動順序,並加入到自啟動項去

將nginx服務新增至自啟管理配置中:

chkconfig –add nginx

檢視該服務程序狀態:

chkconfig –list nginx

設定啟動服務狀態:

chkconfig nginx off  #關閉

chkconfig nginx on  #啟動

判斷下次開機自啟順序方法:

ok,以上操作完成了nginx服務開機自啟指令碼管理,重啟系統後即可生效。

nginx開機自動啟動指令碼

把以下指令碼儲存為nginx檔案放入 etc init.d nginx 然後可以通過 etc init.d nginx start 命令啟動nginx etc init.d nginx stop 命令停止nginx etc init.d nginx restart 命令重啟nginx 開機自動啟動n...

nginx開機自動啟動指令碼

把以下指令碼儲存為nginx檔案放入 etc init.d nginx 然後可以通過 etc init.d nginx start 命令啟動nginx etc init.d nginx stop 命令停止nginx etc init.d nginx restart 命令重啟nginx 開機自動啟動n...

Nginx啟動指令碼

nginx啟動指令碼 nginx engine x 是乙個高效能的http和反向 伺服器,也是乙個 imap pop3 smtp 伺服器。因穩定性 豐富的功能 低資源消耗而聞名。但nginx本身不自帶啟動指令碼,需要我們手動編寫乙份,現在網上所提供的大多數指令碼都是有針對行的,可移植性很差。大多數這...