`Crontab -e` komutu için“ İzin reddedildi ”ne sebep olabilir?


19

İşte size yardımcı olacağını umduğum bazı çıktılar:

nick@home-sv-1:~$ crontab -e
/var/spool/cron/crontabs/nick: Permission denied

nick@home-sv-1:~$ echo $EDITOR
emacs

nick@home-sv-1:~$ ls /var/spool/cron/crontabs
ls: cannot open directory /var/spool/cron/crontabs: Permission denied

nick@home-sv-1:~$ sudo ls -al /var/spool/cron/crontabs
total 12
drwx-wx--T 2 root crontab 4096 2009-10-25 20:45 .
drwxr-xr-x 3 root root    4096 2009-05-18 01:19 ..
-rw------- 1 root root     612 2009-10-25 01:20 root

Sorun:

Crontab'ın setguid değeri yoktur ve crontab grubunda değildir.

home-sv-1:~# ls -al /usr/bin/crontab
-rwxr-xr-x 1 root root 32048 2009-08-30 03:34 /usr/bin/crontab

Çözüm:

Kök olarak ...

home-sv-1:~# chown root.crontab /usr/bin/crontab
home-sv-1:~# chmod g+s /usr/bin/crontab

home-sv-1:~# ls -al /usr/bin/crontab
-rwxr-sr-x 1 root crontab 32048 2009-08-30 03:34 /usr/bin/crontab

Yanıtlar:


10

Does /usr/bin/crontabsahip setgidizni kümesi?

-rwxr-sr-x 1 kök crontab 32K 2008-09-28 14:07 / usr / bin / crontab *

Değilse, chmod g+s(ve gerekirse ondan chown önce )


Düzenleme: Bu sadece Vixie Cron (çoğu dağıtım tarafından kullanılan) için geçerlidir; diğer cinler (gibi dcron) farklı izinler ( setuid) kullanabilir.


15

Ayrıca / var / spool / cron / crontabs adresindeki izinleri kontrol etmeye değer

ls -al /var/spool/cron/crontabs 

Benim durumumda bu aslında crontab atanan kullanıcı 'whoopsie' olduğunu gösterdi ki ben kullanıcı kurma bazı hata olduğunu varsayalım.

Sahne ...

chown <username> /var/spool/cron/crontabs/<username>

Bu tamamen düzeltildi :)


1
Bu benim için çalıştı, ancak sorun gerçek / var / spool / cron / crontabs dizinine kullanıcılar tarafından erişilemediğinden, <username> dosyası oluşturulamadı. Bunu da kontrol etmeye değer.
Marco

2

Bir /etc/cron.allow ve /etc/cron.deny dosyası olup olmadığını kontrol edin. Bu dosyalar varsa, kullanıcı adınızın /etc/cron.allow konumunda olduğundan emin olun.


1
Bu, farklı bir hata mesajı gösterir - "Siz ($ USER) bu programı kullanmanıza izin verilmiyor (crontab)"
user1686

1

Ben de aynı problemi yaşadım. Bu şekilde çözdüm.

sudo crontab -u yourUser -e

Umarım size yardımcı olur.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.