Gostaria de configurar uma tarefa agendada via, anacronmas gostaria de fazê-lo no modo de usuário. Como posso conseguir isso?
Gostaria de configurar uma tarefa agendada via, anacronmas gostaria de fazê-lo no modo de usuário. Como posso conseguir isso?
Respostas:
Você pode configurar uma instância anacron separada para executar no modo de usuário:
Crie uma .anacronpasta no seu diretório pessoal e nele duas subpastas etce spool:
mkdir -p ~/.anacron/{etc,spool}Crie um novo arquivo ~/.anacron/etc/anacrontabcom conteúdo semelhante ao seguinte:
# /etc/anacrontab: configuration file for anacron
# See anacron(8) and anacrontab(5) for details.
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# period delay job-identifier command
1 10 testjob test.shAdicione a seguinte linha ao seu crontab usando crontab -e:
@hourly /usr/sbin/anacron -s -t $HOME/.anacron/etc/anacrontab -S $HOME/.anacron/spoolwhoamino script fornecerá o nome de usuário?
anacronperiodicamente; parece correr uma vez e sair. O anacron do sistema é chamado uma vez a cada hora. Suponho que uma estratégia semelhante funcionaria aqui, ou seja, chame o usuário anacrondo usuário crontab.
/etc/apm/event.d/anacrone /etc/init/anacron.confcuida das reinicializações.
01 * * * * /usr/sbin/anacron -t /home/user/.anacron/etc/anacrontab -S /home/user/.anacron/spool
Isso funcionou para mim (obrigado), mas não usei o último passo dado na resposta:
Em seguida, adicione a seguinte linha ao seu
~/.profile:
Estou usando o Ubuntu Studio 12.10 Quantal e, no meu caso, em vez da última etapa, coloquei o liner aqui: "Menu Aplicativos" → "Configurações" → "Gerenciador de configurações" e depois no Gerenciador de configurações em "Sessão e inicialização" e depois em Guia "Inicialização automática do aplicativo".
Isso é para aqueles que são usuários da GUI, porque ~/.profileé originada apenas pelo bash quando inicia um shell interativo de logon (mesmo que ~/bashrcnão seja tão útil, pois só é originada quando o bash inicia um shell interativo).
.profilesempre funcionou bem para mim (Ubuntu 12.04 aqui).
sudo -u <user>antes da tarefa naanacrontab