_JR_ Posted July 7, 2006 at 11:02 AM Report #36770 Posted July 7, 2006 at 11:02 AM Introdução Muita gente desconhece o Cron. Eu também o desconhecia até isntalar o meu modem IceData no Ubuntu mas, e como amanhã a prova global é de Inglês que é facil logo tenho tempo, só agora me lembrei de fazer um tutorial de como o usar 🙂 Antes de mais convém salientar que o Cron apenas permite correr programa da consola, e não serve para programa GUI. Tutorial Para utilizar o cron é necessário criar um ficheiro para o usar como o "arrancador" gedit /home/user/cron/cron_file Podem usar qualquer editor.... Eu apenas disse o gedit porque é o que eu uso 🙂 Também podem usar qualquer nome para o file. O cron contém uma "formato" que é necessário manter para funcionar. O formato é o seguinte: ]Minutos Horas Dias Meses Dia-da-Semana Comando Minutos -------> Minutos da hora prentendida, de 00 a 59. Para por a todos os minutos usa *. Horas ---------> Hora do dia no formato de 24 horas, entre 00 e 23. Para por a todas as horas usa *. Dia -----------> Dia do mês, entre 1 e 31. Para por a todos os dias usa *. Meses ---------> Mês do ano, entre 1 e 12. Para por a todos os meses usa *. Dia-da-Semana -> O dia da semana que queres, 3 caracteres em inglês - sun (Sunday = Domingo), mon (Monday = Segunda), tue (Tuesday = Terça), ou numérica (0=Domingo, 1=Segunda...) Comando -------> O Comando que queres executar. Deves incluir a linha seguinte no ínicio do ficheiro: MAILTO=o-teu-email@o-que-tu-kiseres.pt [obvio que o-teu-email@o-que-tu-kiseres.pt deve ser substituido pelo teu própio mail 🙂 ] Isto assegura que, se houver algum erro com relatório, ele é mandado para o teu e-mail. Para para algum email gerado quando o comando é executado, utiliza: MAILTO="" Isto deve ser usado quando o ficheiro contrab estiver a funcionar correctamente. Exemplos Como correr o comando a cada 5 minutos? http://img400.imageshack.us/img400/8762/erro4sb.png 0,5,10,15,20,25,30,35,40,45,50,55 * * * * /o/comando Mas, existe um "atalho" para isto: http://img400.imageshack.us/img400/8762/erro4sb.png */5 * * * * /o/comando O */5 é reconhecido como equivalente a 0,5,10... e faz o mesmo que o outro comando. Isto pode ser usado tanto para os minutos como para as horas. Como correr no dia 1 de Junho às 10 horas da manhã? http://img400.imageshack.us/img400/8762/erro4sb.png 00 10 1 6 0 echo "Hoje sai o Ubuntu DapperDrak" Não tenho a certeza mas julgo que o 0 do dia da semana é opcional. Opções do comando Crontab [*] crontab -e Isto permite criar ou editar um ficheiro crontab. [*] crontab -l Isto cria uma lista de conteúdos do teu ficheiro crontab e é muti útil para verificar se editas-te o teu ficheiro correctamente depois de o editares. [*] crontab -r Isto elimita o conteúdo do ficheiro crontab (faz um backup para o caso de te enganares e elimanres o file) [*] crontrab -u <utilizador> <ficheiro> Carrega um ficheiro crontab por ti criado. [*] crontab <ficheiro> Isto é um método alternativo para configurar o teu file contrab. Em vez de usares crontab -e, podes criar um ficheiro com os comandos cron e usá-lo para substituir o conteúdo actual do teu ficheiro crontab. De notar que isto irá passar por cima de qualquer coisa que esteja actualmente no teu ficheiro contrab com o conteúdo do ficheiro. E é tudo. Lembrem-se que sempre que alteram alguma coisa no ficheiro do crontab é sempre necessário voltar a carregá-lo. PS: Devido a um pequeno erro no forum, tive de por algum code em imagem. Quando existe esse caso é o code da imagem mais o code que está escrito em baixo. <--- Esta mensagem de erro referia-se no forum do btuga, mas não há prob de por ali em imagens 🙂
ruben Posted August 31, 2006 at 10:44 AM Report #47532 Posted August 31, 2006 at 10:44 AM Bom post sobre crontab! Apenas gostaria de acrescentar que para quem tiver a trabalhar remotamente (ssh), e não tiver um editor gráfico, sempre tem outro meio para trabalhar com o cron. Aqui vai: 1 - crontab -e (abre o ficheiro crontab com o vi) 2 - Carregar na tecla "i" (i de inserir...) 3 - Escrever no ficheiro tal como está no tutorial 4 - Carregar na tecla "esc", depois na tecla ":" e finalmente escrever "wq" (w=write, q=quit) Se forem root da maquina, também podem adicinar comandos nas pastas do cron [root@nova ~]# cd /etc/cron cron.d/ cron.daily/ cron.deny cron.hourly/ cron.monthly/ crontab cron.weekly/ [root@nova ~]# Depois é escolher uma pasta, e colocar um ficheiro com o comando do cron. Aqui um exemplo com o MRTG (/etc/cron.d /mrtg: */5 * * * * root /usr/bin/mrtg /etc/mrtg/mrtg.cfg --lock-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok
Rui Carlos Posted August 28, 2007 at 03:23 PM Report #128937 Posted August 28, 2007 at 03:23 PM Antes de mais convém salientar que o Cron apenas permite correr programa da consola, e não serve para programa GUI. por acaso isso não é verdade, para correr programas com GUI basta colocar DISPLAY=":0" antes do comando. Rui Carlos Gonçalves
mpeixoto Posted February 14, 2008 at 11:51 AM Report #166733 Posted February 14, 2008 at 11:51 AM Para quem antes prefere GUI existe o gnome-schedule: http://gnome-schedule.sourceforge.net/ apt-get install gnome-schedule para quem quiser correr aplicações gráficas como é o meu caso basta meter "export DISPLAY=:0 && comando" no sitio do comando. My Blogue...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now