以下のスクリプトは、システムの起動時に正常に機能しています。
ただし、システムの起動時に、ログメッセージは/var/log/boot.log
に表示されません。
他のinit.d
スクリプトと比較しましたが、何が欠けているのかについて結論を出すことができませんでした。
Sudo service <script> start|stop|restart
コマンドラインで実行すると、期待されるメッセージがターミナル出力に表示されます。
/var/log/boot.log
を使用するだけで、出力をログファイルにパイプせずに、このスクリプトから/lib/lsb/init-functions
にログメッセージを取得するには、どうすればよいですか。
Ubuntu 14.04 LTSを使用しています。
以下はスクリプトとランレベルの設定です。
スクリプト(名前:rtorrent)
#!/bin/bash
### BEGIN INIT INFO
# Provides: rtorrent
# Required-Start: $syslog $local_fs
# Required-Stop: $syslog $local_fs
# Should-Start: $remote_fs
# Should-Stop: $remote_fs
# X-Start-Before: xdm kdm gdm ldm sdm
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: rtorrent
# Description: Load up rtorrent in a screen session and pirate away
### END INIT INFO
###############
#
# TO INSTALL RUN
# Sudo /usr/sbin/update-rc.d rtorrent defaults
# TO SEE SCRIPT OUTPUT
# cat /var/log/boot.log
#
##################
. /lib/lsb/init-functions
# EDIT THIS VARIABLE TO THE USER THAT YOU WANT RTORRENT TO RUN AS
USER=<myuserid>
case "$1" in
start)
log_daemon_msg "Starting rtorrent"
if [ -f /home/$USER/rtorrent/.session/rtorrent.lock ]; then
su $USER -c 'rm -f /home/$USER/rtorrent/.session/rtorrent.lock' &> /dev/null
fi
su $USER -c 'screen -d -m -S rtorrent rtorrent' &> /dev/null
if [ $? -gt 0 ]; then
log_failure_msg "FAILED."
log_end_msg 1
exit 0
else
log_end_msg 0
fi
;;
stop)
log_daemon_msg "Stopping rtorrent"
killall -w -s 2 /usr/local/bin/rtorrent &> /dev/null
if [ $? -gt 0 ]; then
log_failure_msg "FAILED."
log_end_msg 1
else
log_end_msg 0
fi
;;
restart)
$0 stop
sleep 3
$0 start
;;
*)
echo "usage: $0 {start|stop|restart}"
esac
exit 0
ランレベル設定
rc.local
rc0.d:
K02vmguest
K09Apache2
K10unattended-upgrades
K20bandwidthd
K20btsync
K20osspd
K20rtorrent
K20speech-dispatcher
K20transmission-daemon
K20vboxautostart-service
K20vboxballoonctrl-service
K20vboxdrv
K20vboxweb-service
K20virtualbox
README
S20sendsigs
S30urandom
S31umountnfs.sh
S35networking
S40umountfs
S60umountroot
S90halt
rc1.d:
K02vmguest
K09Apache2
K20acpi-support
K20bandwidthd
K20btsync
K20kerneloops
K20osspd
K20rtorrent
K20saned
K20snmpd
K20speech-dispatcher
K20transmission-daemon
K20vboxautostart-service
K20vboxballoonctrl-service
K20vboxdrv
K20vboxweb-service
K20virtualbox
README
S30killprocs
S70dns-clean
S70pppd-dns
S90single
rc2.d:
README
S20bandwidthd
S20btsync
S20kerneloops
S20osspd
S20snmpd
S20speech-dispatcher
S20transmission-daemon
S20vboxautostart-service
S20vboxballoonctrl-service
S20vboxdrv
S20vboxweb-service
S20virtualbox
S50rsync
S50saned
S70dns-clean
S70pppd-dns
S75Sudo
S80rtorrent
S91Apache2
S98vmguest
S99acpi-support
S99grub-common
S99ondemand
S99rc.local
rc3.d:
README
S20bandwidthd
S20btsync
S20kerneloops
S20osspd
S20snmpd
S20speech-dispatcher
S20transmission-daemon
S20vboxautostart-service
S20vboxballoonctrl-service
S20vboxdrv
S20vboxweb-service
S20virtualbox
S50rsync
S50saned
S70dns-clean
S70pppd-dns
S75Sudo
S80rtorrent
S91Apache2
S98vmguest
S99acpi-support
S99grub-common
S99ondemand
S99rc.local
rc4.d:
README
S20bandwidthd
S20btsync
S20kerneloops
S20osspd
S20snmpd
S20speech-dispatcher
S20transmission-daemon
S20vboxautostart-service
S20vboxballoonctrl-service
S20vboxdrv
S20vboxweb-service
S20virtualbox
S50rsync
S50saned
S70dns-clean
S70pppd-dns
S75Sudo
S80rtorrent
S91Apache2
S98vmguest
S99acpi-support
S99grub-common
S99ondemand
S99rc.local
rc5.d:
README
S20bandwidthd
S20btsync
S20kerneloops
S20osspd
S20snmpd
S20speech-dispatcher
S20transmission-daemon
S20vboxautostart-service
S20vboxballoonctrl-service
S20vboxdrv
S20vboxweb-service
S20virtualbox
S50rsync
S50saned
S70dns-clean
S70pppd-dns
S75Sudo
S80rtorrent
S91Apache2
S98vmguest
S99acpi-support
S99grub-common
S99ondemand
S99rc.local
rc6.d:
K02vmguest
K09Apache2
K10unattended-upgrades
K20bandwidthd
K20btsync
K20osspd
K20rtorrent
K20speech-dispatcher
K20transmission-daemon
K20vboxautostart-service
K20vboxballoonctrl-service
K20vboxdrv
K20vboxweb-service
K20virtualbox
README
S20sendsigs
S30urandom
S31umountnfs.sh
S35networking
S40umountfs
S60umountroot
S90reboot
rcS.d:
README
S25brltty
S37apparmor
S47lm-sensors
S55urandom
S70x11-common