/etc/init.dの起動スクリプトが使用する/ var/runに非ルート所有ディレクトリを作成する必要があります。これを達成する適切な方法は何ですか? Ubuntu 14.04を使用しています。
その場で実行する必要があります。 /var/run/
はtmpfsなので、各ブートを再作成しました。
Initスクリプトから:
/var/run/
内にディレクトリを作成し、そのユーザーの権限を変更します。/var/run/mydaemon
ではなく/var/run
を使用するように指定します。このチェックを行う方法の例が必要な場合(さらにあります):
/etc/init.d/ssh
/etc/init.d/bind9
/etc/init/dbus.conf
/etc/init/ssh.conf
/etc/init/cups.conf
それらはすべて、何らかの種類のmkdir
を含んでいます。 cups.conf:
mkdir -p /var/run/cups/certs
/ etc/init/cups.conf
pre-start script
[ -x /usr/sbin/cupsd ]
# load modules for parallel port support
if [ -r /etc/default/cups ]; then
. /etc/default/cups
fi
if [ "$LOAD_LP_MODULE" = "yes" -a -f /usr/lib/cups/backend/parallel \
-a -f /proc/modules -a -x /sbin/modprobe ]; then
modprobe -q -b lp || true
modprobe -q -b ppdev || true
modprobe -q -b parport_pc || true
fi
mkdir -p /var/run/cups/certs
if [ -x /lib/init/apparmor-profile-load ]; then
/lib/init/apparmor-profile-load usr.sbin.cupsd
fi
end script