いずれにせよ、root ユーザー アカウントにアクセスできる必要があります。
- 提案されているように、ルートcrontabに追加できます
- 提案されているように、sudoを使用できます
- setuid ビットを使用できます。setuid ビットの問題は、コンパイルされたプログラムである必要があることです。コンパイルされている場合は、「chmod 4755」してファイルの所有者をルートに設定すると、ルートとして実行されます。コンパイルされていない場合は、スクリプトを呼び出すだけの小さなラッパーを C (またはその他のコンパイル済みプログラミング言語) で作成し、ラッパーに setuid を設定して、ラッパーが root によって所有されていることを確認します。
私のアドバイス?ルート crontab を使用します。それが目的です。
また、sth で提案されているように、crontab にユーザー エントリはありません...構文は次のとおりです。
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * command to be executed
root として crontab に何かを入力したい場合は、root アカウントにログインし、"crontab -e" と出来上がり...root crontab です。