ということをやった。
結構大変だった。
技術的気なポイントは3つで、
- 起動時に自動実行するスクリプトを作成
- tmuxを一般ユーザー権限で実行
- tmuxでirssiを起動してデタッチする
まず最初に、/etc/init.d/の中に任意のファイル名で、以下の内容のファイルを書きこんで、実行権限をつける。
#!/bin/sh
### BEGIN INIT INFO
# Provides: irssiboot
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO
sudo -u ユーザー名 tmux new-session -d 'irssi'
exit 0
ポイントは sudo -u hoge でhogeユーザーの権限でコマンドが実行できる。ちなみに、rootからsudoをする時に限ってはパスワードの入力は必要ないのでこのコマンドだけでいい。
次に、debianのランレベルはマルチユーザーモードのディフォルトは2なので/etc/rc2.d/の中に、先ほど作ったファイルへのシンボリックリンクを作る。今回はS12irssiと言う名前にした。
で、ブートした時に、上のスクリプトが実行される。
※コメント投稿者のブログIDはブログ作成者のみに通知されます