ubuntu16.04システムは、タスクを直接追加できます。vim/ etc / rc.local
を編集するだけです。
#! /bin/sh -e
# docker-自動的に作成開始/usr/local/bin/docker-compose -f /home/www/dnmp/dnmp/docker-compose.yml up -d
exit 0
ubuntu18.04はinitd管理システムを使用しなくなり、代わりにsystemdを使用します。ただし、systemdは使いにくく、変更が大きすぎて以前とはまったく異なります。 systemdを使用して起動を設定します。以前のように/etc/rc.localにスタートアッププログラムを設定するには、次の手順が必要です。
1、 systemdはデフォルトで/ etc / systemd / systemの下の構成ファイルを読み取り、このディレクトリの下のファイルは/ lib / systemd / system /の下のファイルにリンクします。
通常、システムのインストール後、/ lib / systemd / system /の下にrc-local.serviceファイルがあります。これは、必要な構成ファイルです。ここにリンク:
ln -fs /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service
ファイルの内容を表示する
cd /etc/systemd/system/ cat rc-local.service
rc-local.serviceコンテンツ
# SPDX-License-Identifier: LGPL-2.1+ ## This file is part of systemd.## systemd is free software; you can redistribute it and/or modify it# under the terms of the GNU Lesser General Public License as published by# the Free Software Foundation; either version 2.1of the License, or# (at your option) any later version.
# This unit gets pulled automatically into multi-user.target by# systemd-rc-local-generator if/etc/rc.local is executable.[Unit] Description=/etc/rc.local Compatibility Documentation=man:systemd-rc-local-generator(8) ConditionFileIsExecutable=/etc/rc.local After=network.target
[ Service] Type=forkingExecStart=/etc/rc.local startTimeoutSec=0 RemainAfterExit=yesGuessMainPID=no
[ Install] WantedBy=multi-user.targetAlias=rc-local.service
[ ユニット]ブロック:起動シーケンスと依存関係。
[ サービス]ブロック:開始動作、開始方法、開始タイプ。
[ [インストール]ブロックで、この構成ファイルのインストール方法、つまり起動方法を定義します。
2、 /etc/rc.localファイルを作成します
touch /etc/rc.local
3、 実行権限を付与する
chmod 755/etc/rc.local
4、 rc.localを編集し、開始する必要のあるタスクを追加します
#! /bin/bash echo "test rc ">/var/test.log
5、 再起動を実行してシステムを再起動し、test.logを確認します