(AWS で Ubuntu EC2 を使用)
スクリプトがあります/home/ubuntu/start.sh
。実行するとubuntu
正常に実行されます。起動時に実行する必要があるので、に入れました/etc/rc.local
。これは再起動時にルートとして実行されますが、失敗します。以下を使用して失敗を再現できます。
# I'm ubuntu
$ whoami
ubuntu
$ sudo su
# i'm now root
$ whoami
root
$ ./start.sh
./start.sh: line 9: npm: command not found
$ su -c ./start.sh - ubuntu
./start.sh: line 9: npm: command not found
だからそれは次のようになります:
- ルートはわかりません(
npm
underによってインストールされているので意味があります)ubuntu
/home/ubuntu/.nvm/versions/node/v4.2.6/bin/npm
su -c ./start.sh - ubuntu
Ubuntuでスクリプトを実行するのとまったく同じではありません。
ログインしたように、このスクリプトをどのように実行しますかubuntu
?
ベストアンサー1
PATH=$PATH:/node/v4.2.6/bin/ ./start.sh