コマンドでsudoとnohupの両方を実行する

コマンドでsudoとnohupの両方を実行する

以下を必要とする複雑なコマンドがありますsudo:

sudo command par1 666 /home/me/...

ターミナル (SSH) からログオフした後も継続されるように起動する必要があります。このnohupコマンドがこれを行うはずだということを発見しました。

最初の問題は、次のものがnohup必要であると思われることですsudo

nohup: failed to open `nohup.out': Permission denied
nohup: failed to open `/home/me/nohup.out': Permission denied

2 つ目は、後者のパラメータが失われるように見えることです。command管理者権限ですべてのパラメータを非同期に実行するための適切な構文は何ですか?

答え1

最初の問題は、nohup が nohup.out というファイルを作成しようとしているために発生します。まず、現在のディレクトリにこのファイルを作成しようとしますが、それが失敗すると、ホーム ディレクトリに作成しようとします。

出力から判断すると、どちらにも書き込みアクセス権がないようです。

書き込みアクセス権のあるディレクトリ (より適切なディレクトリが見つからない場合は /tmp) から実行してみてください。

2番目の問題については、実行したいコマンドとパラメータをバッククォートで囲んでみてください。例:

nohup `sudo command par1 666 /home/me/...`

関連情報