質問: "$fatrat_pid else echo "no process found for fatratws" fi ;; *) echo "usage: /etc/init.d/fatratws {start|stop|status}" exit 1 ;; esac exit 0 archで同じことをするにはどうしたらいいですか?私はもう試した:[unit] description=fatrat nogui web access service [service] execstart=/usr/bin/nohup /usr/bin/fatrat -n & type=forking [install] wantedby=multi-user.target しかし、手動で開始すると開始に失敗します(タイムアウト)
回答: これを試して:[unit] description=fatrat nogui web access service requires=network.target after=network.target [service] execstart=/usr/bin/fatrat -n type=forking [install] wantedby=multi-user.target 「webアクセスサービス」にはネットワークが必要であると想定していたため、network.targetを要件として追加しました。 この機能はsystemd自体によって提供されるため、nohupの使用は不要です。 nohupをもう使用しないため、タイプは単純に変更されますが、gitリリースで使用可能なwebインターフェースは、フォークしない限り機能しません。 systemdサービスファイルの詳細については、「systemd.service」のマニュアルページと https://wiki.archlinux.org/index.php/systemd#writing_custom_.service_files を参照してください。 restart=alwaysを[service]セクションに追加して、クラッシュした場合に自動的に再起動することを検討してください。 サービスファイルを/etc/systemd/system/fatrat.serviceに配置し、systemctl enable fatrat.serviceを介して自動起動できるようにします。