いくつかの rsync コマンドを含むスクリプトがあります。スクリプト ファイルは、所有者とグループの権限が root に設定された NTFS パーティションに配置されています。
次のコマンドを使用して、ターミナルからファイルを手動で実行しても問題はありません。
"/mnt/Files/Software/Software Customizations/Linux/Scripts/rsync_backup.sh"
crontab エントリは次のとおりです (root ではなく、私の crontab):
0 15 * * 6 export DISPLAY=:0 && gnome-terminal -e "/mnt/Files/Software/Software Customizations/Linux/Scripts/rsync_backup.sh"
しかし、ファイルを実行すると次のエラーが発生します
There was an error creating a child process for this terminal.
Failed to execute child process "/mnt/Files/Software/Software" (Permission denied)
スクリーンショット:
何が問題なのか教えてください。sudo を使用せずにファイルを実行できること、またスクリーンショットにパスの一部しか表示されていないことから、権限の問題ではないと思われます。スペースの問題だと思われます。
答え1
パス内のスペースをエスケープしてみてください:
0 15 * * 6 export DISPLAY=:0 && gnome-terminal -e "/mnt/Files/Software/Software\ Customizations/Linux/Scripts/rsync_backup.sh"