特権ディレクトリに出力ファイルを書き込む - 権限のないユーザーとして実行される実行可能ファイルから

特権ディレクトリに出力ファイルを書き込む - 権限のないユーザーとして実行される実行可能ファイルから

buユーザーとしてプログラムを実行したいと思い、backup出力ファイルが場所にあることを望みます/mnt/nas1/。ただし、この場所はのみ書き込むことsysredができ、bustdoutに出力するコマンドラインオプションはなく、ファイルにのみ出力できます。ファイル全体を一時ディレクトリに一時的に保存せずに出力ファイルをターゲットの場所に書き込むにはどうすればよいですか?以下はコマンドの例です。

sysred@host1:~> sudo -u backup bu -f /mnt/nas1/backup.zip

もちろん、backupターゲットフォルダにアクセスできないため失敗します。

sysred@host1:~> sudo -u backup bu -f /dev/stdout > /mnt/nas1/backup.zip

/dev/stdout現在に属しているのでこれも失敗すると思いますsysred

次に試したのは、名前付きパイプを使用することでした。ユーザーとしてsysred

mkfifo -m 0777 /tmp/backup
cat /tmp/backup > /mnt/nas1/backup.zip &
sudo -u backup bu -f /tmp/backup

エラーメッセージ:Failed to create /tmp/backup: zip: not a valid zip file。別のアイデアがありますか?

ベストアンサー1

おすすめ記事