VPS再起動ネタに絡んで。普段OS再起動時に実行させたいスクリプトはrc.localに書いているのですが、特定ユーザでスクリプトを実施させる場合(主にhypnotoadの起動)、suコマンドの-lオプションと-cオプションを使ってコマンドを実行させてたので、すごく気持ち悪くて嫌だなーと思っていました。
具体的には下記の記事と同じ感じです。
rc.localの実行権限とsuによるユーザー切り替えで詰まった – あお日記
仕方ないのでGoogle先生に教えてもらった結果が下記。
システム起動時に特定のコマンドを実行するには - @IT
crontabに@rebootなんていうのがあるのを初めて知りました。スクリプトを実行したいユーザのcrontabを編集してOS再起動したら見事に思ったような挙動になったので良かったです。
ちなみにCentOS 7ですが、Debian系でも同じような挙動をすると思います。