sabato 18 aprile 2009

[Risolto] Problema con at: «Cannot open lockfile /var/spool/cron/atjobs/.SEQ: No such file or directory»

Stasera volevo provare il comando at che serve per eseguire comandi a un orario specificato. Per esempio volevo eseguire immediatamente uno script bash che si trova nella Scrivania (ovviamente per fare questo non è necessario at, era giusto per vedere come funziona). Per fare ciò si può dare il comando
echo "~/Scrivania/script.sh" | at now
però il terminale mi ha risposto in questo modo:
warning: commands will be executed using /bin/sh
Cannot open lockfile /var/spool/cron/atjobs/.SEQ: No such file or directory

bash: echo: errore di scrittura: Pipe interrotta
Il primo messaggio non è preoccupato, non mi è piaciuto invece il secondo. Ci dice che il file /var/spool/cron/atjobs/.SEQ non può essere aperto semplicemente perché non esiste. Ho quindi creato un file vuoto con quel nome con il comando
sudo touch /var/spool/cron/atjobs/.SEQ
Dando nuovamente il comando at, però, ho ricevuto questo output:
warning: commands will be executed using /bin/sh
Cannot open lockfile /var/spool/cron/atjobs/.SEQ: Permission denied
bash: echo: errore di scrittura: Pipe interrotta

A questo punto mi è arrivato in soccorso google: ho scoperto che si trattava di un problema di permessi. Quando ho creato il file con il comando sudo touch il proprietario del file è stato impostato a root (come anche il gruppo, queste informazioni posso essere viste con il comando sudo ls -l /var/spool/cron/atjobs/.SEQ). Invece il proprietario e il gruppo del file dovrebbero essere daemon. Per modificare il proprietario e il gruppo del file ho dato il comando
sudo chown daemon:daemon /var/spool/cron/atjobs/.SEQ
e finalmente ho potuto provare il comando
echo "~/Scrivania/script.sh" | at now
dopo cui è comparso
warning: commands will be executed using /bin/sh
job 1 at Sat Apr 18 00:18:00 2009


Il sito che ho consultato per risolvere questo problema è http://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg78730.html. Faccio notare che l'autore di quel messaggio ha dovuto eseguire un'ulteriore operazione oltre a quelle che ho indicato. Se le istruzioni che ho esposto non sono state sufficienti date un'occhiata lì.

Nessun commento:

Posta un commento

I commenti inseriti vengono lasciati dall'autore degli stessi accettandone ogni eventuale responsabilità civile e penale.
Il curatore del blog si riserva la possibilità di eliminare messaggi contenenti frasi offensive o spam.