PC起動時にデーモンを起動したい

WSL環境ではPC起動時にデーモンを自動起動させる仕組みがない。デーモンを起動させるときは

~$sudo service apache2 start

で普通にできるが、PC起動のたびコマンドを幾つも打つのも何だかなぁ。

なので、各デーモンを起動するためのシェルスクリプト service_start.sh を一つ用意して、これだけ実行することにした。中身は「二重起動 重複起動 スクリプト」とかで検索して出てきたサイトのものを参考に。

#!/bin/bash

# mysql
retval=$(service mysql status >/dev/null 2>&1; echo $?)
if [ ! $retval == "0" ]; then
  service mysql start
fi

# apaceh2
retval=$(service apache2 status >/dev/null 2>&1; echo $?)
if [ ! $retval == "0" ]; then
  service apache2 start
fi

# ssh
retval=$(service ssh status >/dev/null 2>&1; echo $?)
if [ ! $retval == "0" ]; then
  service ssh start
fi

# proftpd
retval=$(service proftpd status >/dev/null 2>&1; echo $?)
if [ ! $retval == "0" ]; then
  service proftpd start
fi

実行権を付与して /usr/local/sbin とかに保存したら

~$sudo service_start.sh

で一括起動できる。

ちなみに、このスクリプトを sudoers で特定ユーザーのみパスワード無しで起動できるようにしておいて、/etc/profileの最終行にでも sudo service_start.sh と書いたうえで、Windowsのスタートアップフォルダ(C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp\)に WSL(ubuntu)のショートカットを入れておけば・・・。

コメント

コメントする

目次