web-dev-qa-db-ja.com

crontab -eの結果:/ var / spool / cron /:mkstemp:権限が拒否されました

ユーザーの下でcronジョブを設定しようとしています。 crontab -eを実行して編集し、保存して終了します。次のエラーメッセージ__/var/spool/cron/: mkstemp: Permission denied_が表示されます。

Ls -al/var/spool/cron/crontabsからの関連出力

_drwxr-xr-x 2 root crontab 4096 Nov  4 10:09 .
drwxr-xr-x 5 root root    4096 Nov 19  2014 ..
-rw-rw-rw- 1 greg crontab   91 Nov  4 11:04 greg
-rw------- 1 root crontab 1231 Oct 29 16:18 root
_

集約ファイルを直接編集して保存できますが、更新後にcronを再起動しても、ジョブを実行できないようです。この問題を解決するにはどうすればよいですか?

ls -lha $(which crontab)からの出力は次のとおりです。

_-rwxr-sr-x 1 root crontab 36K Feb  8  2013 /usr/bin/crontab
_

_groups greg_からの出力は次のとおりです。

_greg : greg adm Sudo crontab lpadmin sambashare
_
3
Gregory Arenius

これはあなたの差し迫った問題を修正します:

chmod u=rwx,g=wx,o=t /var/spool/cron/crontabs

ただし、パッケージをダウンロードできる場合、これを修正するより堅牢な方法は、apt-getを使用して適切なパッケージを再インストールすることです。

root@ubuntu# dpkg-query -S /var/spool/cron/crontabs
cron: /var/spool/cron/crontabs
root@ubuntu# apt-get install --reinstall cron

最初に、/etc/init/cron.conf/etc/default/cronなどに加えたローカルの変更を確認した後、どこかにコピーしてから再適用します。

7
Mark Plotnick

Mark Plotnickが述べた解決策は私にとってはうまくいきませんでしたが、crontabグループにユーザーを追加した後、うまくいきました:

Sudo adduser myname crontab

この変更を適用するには、ログアウトして再度ログインする必要があります。

1
laurent