システムの起動時に読み込む必要がある設定ファイル /etc/profile、/root/.bash_profile 1. ブートスタートアップファイルを変更する: /etc/rc.local (または /etc/rc.d/rc.local) # 1. rc.localファイルを編集する [root@localhost ~]# vi /etc/rc.local # 2. rc.local ファイルを変更し、exit 0 の前に次のコマンドを追加します。保存して終了します。 /etc/init.d/mysqld を起動します #mysql を起動します/etc/init.d/nginx を起動します #nginx を起動します supervisord -c /etc/supervisor/supervisord.conf # supervisord を起動します/bin/bash /server/scripts/test.sh >/dev/null 2>/dev/null # 3. 最後に、rc.local ファイルの実行権限を変更します [root@localhost ~]# chmod +x /etc/rc.local [root@localhost ~]# chmod 755 /etc/rc.local 2. 自分でシェルスクリプトを書く 記述したスクリプト (.sh ファイル) を /etc/profile.d/ ディレクトリに配置します。このディレクトリ内のすべてのシェル スクリプトは、システムの起動後に自動的に実行されます。 3. chkconfigコマンドで設定する # 1. (スクリプト) 起動ファイルを /etc/init.d/ または /etc/rc.d/init.d/ ディレクトリに移動します。 (前者は後者へのソフトリンクです) mv /www/wwwroot/test.sh /etc/rc.d/init.d # 2. 起動ファイルの前に次の 3 行のコードを必ず追加してください。そうしないと、chkconfig がサポートされていないというメッセージが表示されます。 #!/bin/sh はシステムにシェルを使用するように指示するため、すべてのシェル スクリプトは次のようになります。#chkconfig: 35 20 80 はそれぞれ実行レベル、起動優先度、シャットダウン優先度を表します。このコード行は #description: http server である必要があります。好きなように使用できます。 ! !このコード行は /bin/echo $(/bin/date +%F_%T) >> /tmp/test.log である必要があります。 # 3. スクリプトに実行権限を追加する chmod +x /etc/rc.d/init.d/test.sh # 4. 自動スタートアップ プロジェクトにスクリプトを追加します。 chkconfig に追加し、起動時に自動的に開始します。 [root@localhost ~]# cd /etc/rc.d/init.d [root@localhost ~]# chkconfig --add test.sh [root@localhost ~]# chkconfig test.sh オン # 5. ブートをオフにする [root@localhost ~]# chkconfig test.sh off # 6. chkconfig管理からtest.shを削除する [root@localhost ~]# chkconfig --del test.sh # 7. chkconfig 管理を表示する [root@localhost ~]# chkconfig --list test.sh 4. サービスファイルをカスタマイズし、システムサービスに追加し、Systemctl を通じて管理する 1. サービスファイルを書き込む: nginx.service、redis.service、supervisord.service など [Unit]: サービスの説明 説明: サービスの説明 After: サービスのカテゴリの説明 [Service] サービス実行パラメータの設定 Type=forking はバックグラウンド実行の形式です ExecStart はサービスの特定の実行コマンドです ExecReload はサービスの再起動コマンドです ExecStop はサービスの停止コマンドです PrivateTmp=True はサービスに独立した一時領域を割り当てることを意味します 注: すべての開始、再起動、および停止コマンドでは絶対パスを使用する必要があります [Install] サービスのインストールに関連する設定。マルチユーザーに設定できます WantedBy=multi-user.target 2. ファイルは 754 の権限でディレクトリに保存されます。ディレクトリ パス: /usr/lib/systemd/system。たとえば、上記の supervisord.service ファイルはこのディレクトリの下に配置されます。 [root@localhost ~]# cat /usr/lib/systemd/system/nginx.service [root@localhost ~]# cat /usr/lib/systemd/system/supervisord.service 3. 起動時にシステムが自動的に起動するように設定します(任意のディレクトリで実行します)。起動コマンドの実行時にエラーが発生した場合は、以下を実行してください: systemctl daemon-reload 自動起動を設定する [root@localhost ~]# systemctl enable nginx.service [root@localhost ~]# systemctl enable supervisord 自動起動を停止する [root@localhost ~]# systemctl enable nginx.service [root@localhost ~]# systemctl は supervisord を無効にする 起動時に起動されているか確認する [root@localhost ~]# systemctl is-enabled nginx [root@localhost ~]# systemctl is-enabled supervisord 4. その他のコマンド nginx サービスを開始します [root@localhost ~]# systemctl start nginx.service nginx サービスを停止します [root@localhost ~]# systemctl start nginx.service nginx サービスを再起動します [root@localhost ~]# systemctl restart nginx.service nginx サービスの現在のステータスを表示します [root@localhost ~]# systemctl status nginx.service 開始されているすべてのサービスを表示します [root@localhost ~]# systemctl list-units --type=service 5. サービスファイルの例: # supervisord.service プロセス管理サービスファイル [Unit] 説明=プロセス監視および制御デーモン # 内容を自分で定義します: 説明=スーパーバイザデーモン 後=rc-local.service nss-user-lookup.target [サービス] タイプ=フォーク ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf ExecStop= /usr/bin/supervisorctl シャットダウン ExecReload=/usr/bin/supervisorctl リロード 再起動=失敗時 再起動秒数=42秒 キルモード=プロセス [インストール] WantedBy=マルチユーザー.ターゲット # nginx.service サービスファイル [Unit] 説明=nginx - 高性能ウェブサーバー 後=network.target remote-fs.target nss-lookup.target [サービス] タイプ=フォーク 実行開始=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf ExecReload=/usr/local/nginx/sbin/nginx -s 再ロード ExecStop=/usr/local/nginx/sbin/nginx -s stop [インストール] WantedBy=マルチユーザー.ターゲット # redis.service サービスファイル [Unit] 説明=Redis 後=network.target remote-fs.target nss-lookup.target [サービス] タイプ=フォーク ExecStart=/usr/local/bin/redis-server /etc/redis.conf ExecStop=kill -INT `cat /tmp/redis.pid` ユーザー=www グループ=www [インストール] WantedBy=マルチユーザー.ターゲット 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: vue $setは配列コレクションオブジェクトへの値の割り当てを実装します
1. Tomcatのインストールパスを作成する mkdir /usr/local/tomcat 2....
機能シナリオを簡単に説明しましょう。データ行フィールドは次のとおりです。名前開始日時タイプこの表では...
序文これまでは、/bin/ ディレクトリのソフトリンクを変更して Python のバージョンを切り替...
現代の Web ビジュアル デザインは、初期の情報の積み重ねから、その後のグラフィックスと抽象化、そ...
ボタンをクリックしてテキストを入力ボックスに変換し、保存をクリックしてテキスト実装コードに変換します...
この記事は主にDockerでパラメータ変数を外部から指定する方法を紹介します。この記事のサンプルコー...
MySQL データベースを使用すると、他のユーザーが定義したストアド プロシージャを他のユーザーが変...
Traceroute を使用すると、情報がコンピュータからインターネットの反対側のホストまでたどるパ...
この記事の例では、マウスに従ってボールを動かすjsの具体的なコードを参考までに共有しています。具体的...
私が初めてdockerを使用したときは、dockerfileやdocker-composeを使用して...
NULL が頻繁に使用されるのはなぜですか? (1)Javaのnull Java の NullPoi...
1. Nginxのインストール手順1.1 公式サイトの紹介http://nginx.org/en/d...
上はシステム時間、下はハードウェア時間です。ここでは変更を加えているので、同じくらいの速さになってい...
1. まず、MySQL の公式サイトから最新バージョンの MySQL をダウンロードします。リンクを...
MySQL への接続時に発生する 1449 および 1045 例外の解決方法 mysql 1449:...