Existem vários problemas com o seu crontab:
10 * * * sudo chown -R $USER ~/Dropbox
Os problemas:
-
sudo
não deve ser usado aqui; requer entrada de terminal
-
chown
deve ser totalmente especificado (por exemplo, /bin/chown
)
-
USER
como uma variável real pode não existir; alguns sistemas usam LOGNAME
-
~
(til) só será reconhecido por um shell - um chown
vazio não entenderá
- especificando HOME no crontab do root vai para a casa do root
Eu acho que eu realmente roteiro:
#!/bin/bash
# FILE: /usr/local/bin/myscript
USER=$1
eval chown -R $1 ~$1/Dropbox
eval chmod -R u+rw ~$1/Dropbox
(O eval
é necessário para converter ~$1
para ~user
e para /home/user
.)
Execute este script a partir do crontab do root:
# root's crontab
10 * * * /usr/local/bin/myscript someuser