Click para cerrar esto Registrarse en Todo-Mods
Portal    Foro    Buscar    FAQ    Registrarse    Conectarse
Publicar Nuevo Tema  Responder al Tema Página 1 de 1
 
MINI-TUTO ¿Cómo Hacer Un Cronojob En CUALQUIER Hosting UNIX
Autor Mensaje
Responder al Tema Responder Citando  
Mensaje MINI-TUTO ¿Cómo Hacer Un Cronojob En CUALQUIER Hosting UNIX 
 
¿Cómo hacer un cronojob, sino se tiene dicha opcion en el panel de control de nuestro dominio, y se tiene acceso via SSH?

1º.- Necesitamos un programa denominado putty para poder acceder via SSH. Para encontrar el programa mirar el link este:
http://www.todo-mods.com/crear-un-c...-1-1-vt193.html

2º.- Un programa para subir/bajar archivos via ftp (Filezilla o similar)

2º.- Necesitamos saber algo de UNIX (linux o ubuntu). Muy poquito: ¡no asustarse!

NOTA: lo que voy a contar no se adscribe a un unico servidor, sino que vale en todos los servicios de hosting que utilicen UNIX (linux, ubuntu,etc).  Esto lo digo porque voy a hacer el ejemplo con el servicio de 1and1.es, pero daria igual con otro hosting UNIX



1º.- USO DE PUTTY Y ALGUNOS COMANDOS UNIX

Vamos primero a familiarizarnos con el putty y los comandos minimos de UNIX. Una vez bajado el putty, lo ejecutais y saldra una ventana como esta:

Image

En donde pone Host Name o IP adreess y para aquellos que tiene 1and1.es, escribis en esa casilla el  nombre de vuestro servidor de ftp, que coincide, sino habeis tocado nada con vuestro dominio. Por ejemplo, si registrasteis www.pepito.es, escribis: "www.pepito.es" o simplemnte "pepito.es" y pulsais open.

A continuacion, si lo habeis hecho bien se abrira una pantalla tipo MS-DOS, que no pongo por razones de seguridad. Os dice "login as". Escribis vuestra nombre de usuario que tenies para aceder via ftp (es el mismo para SSH) y os pedira una pasword, que es la misma que la del server ftp: es decir, en 1and1.es sino habeis tocado nada: servidor/login(nombre de usuario)/password son las mismas que para poder acceder via ftp. OJO otros proveedores pueden requerir distintas password, login etc. Si todo se ha hecho bien os saldra algo como esto

Image

He tapado con azul cosas por motivo de seguridad. Lo primero decir que lo que sigue a la u es un numero. En la siguiente linea esta la u con ese numero @ vuestro dominio y aparece un "prompt". En ese prompt se puede ejcutar cualquier comando UNIX (linux). Veamos unos ejemplos . Si queremos hacer un dir, en UNIX es "ls", aunque yo normalmente utilizo la extension: ls -la

Ejemplo de comando DOS/UNIX


dir = ls -la

dir p* = ls -la p* (listar todos los archivos que empiezan por p)


Para moverse por los directorios es exactamente igual que en MSDOS salvo que cd.. en UNIX es cd .. (hay que dejar un espacio en blanco entre la palabra CD y los 2 puntos)

Podeis moveros a vuestro antojo

NOTA: 1and1.es monitoriza vuestros movimientos por lo que si alguien toca algun fichero que no es suyo...lo echan a la calle

Image

en esa captura con algunas cosas borradas veis que he hecho un ls -la y un cd ..


Si alguno despues de moverse se ha perdido y quiere regresar a su sitio/home donde empezo con el putty, basta con teclear cd (a secas)
Si quereis ver donde esta vuestra casa dentro del sistema tecleais $HOME ( no es un comando es una variable del sistema) que es a donde os llevara el comando cd si os perdeis
Si os habies movido por directorios y os habies perdido pero quereis saber donde estais podeis utilizar el comando pwd (print working directory) os dira donde estais. Para volver a vuestro sitio, ya sabeis cd Todo esto se puede apreciar en la captura anterior

Esto es todo el tuto de UNIX que nos hace falta saber de momento. Para salir de la sesion o del putty basta con poner logout o exit



2º.- CREAR UN FICHERO CRONJOB

El Unix tiene la posiblidad de ejecutar tares a unas horas predeterminadas, aunque nosotros no estemos en el sistema. Eso se puede hacer de varias maneras una es un cronjob. Lo primero que hay que hacer es crear un fuchero cronjob con las tareas a ejecutar y la hora /dia que queremos que se ejecuten.

Imaginar que quiero ejecutar phpMyBackupPro_v.2.1 para hacer una copia de seguridad a una hora en concreto. Lo primero que hay que decir es que UNIX no entiende scripts PERL,CGIs, ni php, solo ficheros por analogia, con msdos, digamos tipo .exe y .bat. Por lo tanto, no podemos ejecutar nigun script perl, cgi ni php sin el programa que interpreta esos comados. Yo no puedo poner, por ejemplo,

backup.php (que es el archivo a ejecutar en phpMyBackupPro)

pues UNIX no sabe interpretar un php (aunque tenga puesto como atributos que es ejecutable). Dara error. Necesito el interprete de php, PERL o lo que sea.  ¿Y donde esta ese interptrete? En el caso de 1and1.es esta (despues de en su momento un rastreo por el sistema) en

/usr/local/bin

como se puede ver en la siguiente captura

Image

Veis que esta el interprete perl tambien (esta php y perl los dos juntitos). Si utilizas otro server, puede estar en otro lado, pero lo podeis buscar con los comandos UNIX que os he puesto antes. Normalmente los ejecutables en UNIX estan todos en subdirectorios que son bin.

Entonces si quiero ejecutar backup.php tendria que hacer esto:

/usr/local/bin/php backup.php

es decir, poner el path completo del interprete php. Ahora bien eso supone que el fichero backup.php  esta en el directorio donde habies ejecutado ese comando. Como cuando hagais un cronojob no estareis fisicamente en ningun subdirectorio hay que poner la ruta/camino completo de ese archivo. Basta con iros a donde esta backup.php (utilizando el comando cd)  de phpMyBackup y escribir pwd que nos dara la ruta completa.

Entonces si ejecutamos

/usr/local/bin/php /el resultado de pwd/backup.php

vereis que se ha hecho una copia de segurdad con este programa. Podeis utilizar la variable $HOME para recortar el nombre (asi yo tengo puesto en mi fichero cronofile esto):

/usr/local/bin/php $HOME/un directorio borrado por mi por seguridad/phpMyBackupPro_v.2.1/backup.php

eso es lo que ejecuto. Ahora bien al archivo backup.php hay que darle unos parametros: la base de datos, si queremos que guarde las estructuras decriselo con ON, compresion con ZIP etc.. al final lo que yo ejecuto es esto

/usr/local/bin/php $HOME/YYYYYYY/phpMyBackupPro_v.2.1/backup.php dbXXXXXXXX on on on zip

YYYY es un directorio y XXXX son los numeros de mi base de datos. Con esas opciones el phpMyBackupPro me hace una copia total de la base de datos y la comprime con zip (Se supone que previamente teneis instalado este soft y configurado. Si ademas en la configuracion le habeis puesto que os mande un mail con una copia os hara una copia de los datos en local y otra os la enviara en un correo con  la direcion que configurasteis en este programa  (ojo que los adjuntos no pueden superar los 10 megas por parte de servicios de correos como google...)

Una vez que tengo todo el comando a ejecutrar le tengo que decir cuando (la hora/fecha,etc.). Muy sencillo:

15 04 * * * /usr/local/bin/php $HOME/YYYYYYY/phpMyBackupPro_v.2.1/backup.php dbXXXXXXXX on on on zip

lo que me hace una copia de seguridad a las 04:15  de la madrugada. OJO primero van los minutos y despues la hora. Los signos * son por si quereis hacerlo un detemrinado dia en concreto u otras variaciones mas complicadas que os las pongo mas adelante en espoiler pero recomiendo no leer salvo que se domine el tema.

Si quiero ejecutarlo a las 7:15 pues lo mismo pero ahora
15 07 * * *  /usr/local/bin/php $HOME/YYYYYYY/phpMyBackupPro_v.2.1/backup.php dbXXXXXXXX on on on zip


Esto hay que empaquetarlo. Se mete en un fichero de texto y cuando digo texto me refiero a eso, sin formato de word, openoffice ni similar (yo lo edito con el block de notas de windows) con el nombre que os venga en gana. Se pueden meter/añadir cometarios con #. Asi yo tengo un fichero que lo llamo cronofile.txt que pone esto

# Haz el backup a las 4:15 am todos los dias de la base de datos del foro
15 04 * * *  /usr/local/bin/php $HOME/YYYYYYY/phpMyBackupPro_v.2.1/backup.php dbXXXXXXXX on on on zip

Se pueden meter tantas lineas como tareas(jobs) querais hacer, es decir, no estamos limitados a una linea

Spoiler: [ Mostrar ]



Una vez hecho ese fichero lo subis a donde mas rabia os de con el progmaa de ftp que tengais. Y ya estamos listos para la ultima parte


3º.- CREAR EL CRONOJOB

Accedemos via SSH con el putty como al principio. Nos vamos al sitio donde hemos subido el archivo cronofile.txt moviendonos con los comandos cd /cd .. y ls -la para verificar que este

Cuando estemos en el subdirectorio exacto hay que ejecutar un nuevo comando UNIX: cronotab

Que opciones tiene este capullo:

cronotab -l os lista los cronojobs que teneis en marcha (ejecutarlo) os deberia decir que no teneis
crontotab -r es para parar (remove) TODOS los cronojobs que tengais activos
cronotab FICHERO CON FORMATO ANTERIOR: activa el cronojob con las tares puestas en ese archivo a la hora puesta en ese archivo.

En nuestro caso ponemos  cronotab cronofile.txt

El sistema no contestara nada, pero para comprobar que esta bien hecho haceis

cronotab -l

y os saldra la linea de vuestro fichero. Antes no salia nada. Ahora solo queda esperar a la hora en cuestion.

Ya podeis si quereis borrar el archivo: via ftp o dentro de UNIX si sabeis el comando rm. Salimos de putty con logout/exit

Que en el futuro queremos cambiar el cronojob

a.- Hacemos otro fichero cronofile.txt
b.- Lo subimos
c.- Entramos via putty
d.- Paramos el cronojob actual (cronotab -r)
e.- cargamos el nuevo cronotab cronofile.txt


¿Que pasa si queremos utilizar el MySQLDumper? Pues la linea de ejecucion seria algo como esto:
/usr/local/bin/perl $HOME/YYYYYYY/mysqldumper/msd_cron/crondump.pl config=$HOME/YYYYY/mysqldumper/work/configmysqldumper.conf.php

filjaros que ponemos PERL y no php (el interprete de los archivos pl). Antes hay que poner la hora digamos a ejecutar a las 10:12 de la mañana

12 10 * * * /usr/local/bin/perl $HOME/YYYYYYY/mysqldumper/msd_cron/crondump.pl config=$HOME/YYYYY/mysqldumper/work/configmysqldumper.conf.php

NOTA: este ultimo programa me esta dando guerra. Ayer lo configure para que me enviara una copia de seguridad en mi email y en local con cronjob y me llegaron las dos por correo. Lo he tocado tanto que lo he cascao y ya no me hace el cronojob... Tengo que volver a reinstalarlo y empaparme con el



Espero que esto os sirva de algo. Por lo menos es la base para hacer coronjobs con cualquier programa. Y recordar poner siempre la ruta/path completo para mayor seguridad (en algunos sistemas UNIX, segun como este configurado, a lo mejor no hace falta) No he tenido mas tiempo y haber si le meto mas mano cuando lo tenga al otro "programa" el que usa el perl

Saludos





¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬ FIRMA ¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬
Image

I amar prestar aen. Han mathon ne nen, han mathon ne chae, A han noston ned wilith.


WebMaster de: CalProye - Maare tulde!! (= Bienvenidos!!)

Engine: phpBB3 versión 3.0.1
Mods: varios por mi, ABBC 3, Activitiy stats, AJAX chat, Forum statistics
Portal: "board3"
Todas las traducciones al español de mods y del portal hechas por mi
Estilos soportados: prosilver, subsilver2, y BF_Vista ( traducion/botones al español currados por mi)
Hosting: "1and1.es"
Desconectado Ver perfil del usuario Enviar Mensaje Privado Visitar sitio Web del Usuario
Descargar Mensaje Volver arriba Página Inferior
Responder al Tema Responder Citando  
Mensaje Re: MINI-TUTO ¿Cómo Hacer Un Cronojob En CUALQUIER Hosting U 
 
Buen tuto

GRacias

Saludos




Desconectado MSN Messenger Ver perfil del usuario Enviar Mensaje Privado
Descargar Mensaje Volver arriba Página Inferior
Responder al Tema Responder Citando  
Mensaje Re: MINI-TUTO ¿Cómo Hacer Un Cronojob En CUALQUIER Hosting U 
 
Muy bueno el tuto!!
Revisa tu e-mail para hacer lo del hosting

SALUDOS





¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬ FIRMA ¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬
© Calero - Hosting Profesional: http://www.hostingzeus.com
© Calero - Patrocinador de: http://www.todo-mods.com
© Calero - Comunidad: http://www.tecnoshare.net
© Calero - Blog: http://www.rcalero.net
Desconectado Ver perfil del usuario Enviar Mensaje Privado Visitar sitio Web del Usuario
Descargar Mensaje Volver arriba Página Inferior
Responder al Tema Responder Citando  
Mensaje Re: MINI-TUTO ¿Cómo Hacer Un Cronojob En CUALQUIER Hosting U 
 
Muy bueno, si señor, lo paso como  anuncio y lo muevo a Recursos





¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬ FIRMA ¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬
Webmaster de Todo-Mods -- Webmaster de Todoelbarco.com -- Webmaster de NosQuejamos.com
-------------------------------------------------------------------------------
Image
ImageImage
Desconectado Ver perfil del usuario Enviar Mensaje Privado Visitar sitio Web del Usuario
Descargar Mensaje Volver arriba Página Inferior
Responder al Tema Responder Citando  
Mensaje Re: MINI-TUTO ¿Cómo Hacer Un Cronojob En CUALQUIER Hosting U 
 
Esnola Escribió: [Ver Mensaje]
Muy bueno, si señor, lo paso como  anuncio y lo muevo a Recursos


Lo podia haber hecho mejor Esnola pero he tenido poco tiempo y un problema: queda mejor con mas capturas, pero es que hay que ir editandolas una a una pues dan info confidencial y no he tenido tanto tiempo.

si hay dudas.. pues ya sabeis

y respecto al programa que hace backups con el perl haber si tengo mas tiempo ( no se cuando) y le doy otro repaso...pues me interesa mas que el phpMyBackupPro

Saludos





¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬ FIRMA ¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬
Image

I amar prestar aen. Han mathon ne nen, han mathon ne chae, A han noston ned wilith.


WebMaster de: CalProye - Maare tulde!! (= Bienvenidos!!)

Engine: phpBB3 versión 3.0.1
Mods: varios por mi, ABBC 3, Activitiy stats, AJAX chat, Forum statistics
Portal: "board3"
Todas las traducciones al español de mods y del portal hechas por mi
Estilos soportados: prosilver, subsilver2, y BF_Vista ( traducion/botones al español currados por mi)
Hosting: "1and1.es"
Desconectado Ver perfil del usuario Enviar Mensaje Privado Visitar sitio Web del Usuario
Descargar Mensaje Volver arriba Página Inferior
Responder al Tema Responder Citando  
Mensaje Re: MINI-TUTO ¿Cómo Hacer Un Cronojob En CUALQUIER Hosting U 
 
Buenisimo, a todos los que alojamos en 1and1 nos servira, vamos  a ver si me pongo a probarlo mas tarde





¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬ FIRMA ¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬
Image

URL: www.tecno-sence.net
Plantilla: Vista Teal
Mods: Los que trae ademas del Mouse Hover Description mod, karma mod, y no recuerdo los otros...
Version de icy: 1.2.0.27b
Desconectado Ver perfil del usuario Enviar Mensaje Privado
Descargar Mensaje Volver arriba Página Inferior
Responder al Tema Responder Citando  
Mensaje Re: MINI-TUTO ¿Cómo Hacer Un Cronojob En CUALQUIER Hosting U 
 
Lordss Escribió: [Ver Mensaje]
Buenisimo, a todos los que alojamos en 1and1 nos servira, vamos  a ver si me pongo a probarlo mas tarde


Lordss con phpMyBackupPro funciona sin problemas. Yo he estado con el sistema así varios meses. Si tenéis problemas, ya sabeis . Del programa de perl tengo que echarle un ojo pues es mas interesante, pero me funciono una unica vez y no se que leches (bueno si edite a mano archivos ) dejo de hacerlo.

Algunas recomendaciones:

1º.-  Cuando hagáis las pruebas y veáis que funciona. Yo recomiendo un backup nocturno de madrugada y diario.

2º.- No escojais ni entre las 2-3 porque , y aunque ocurre una vez al año, hay cambio de hora y un año tendreis dos copias y otro año no tendréis copias de seguridad.


3º.- Evitar las horas en punto y las del tipo 4:15/30/45. Todo el mundo suele coger horas así. E igual de bueno es 4:15 que las 4:11 que no habrá nadie ejecutando cronojobs

4º.- El tiempo que tarda en hacerme un backup con el anterior programa es inferior al segundo ¿¿?? (debe ser que todo esta mas descargado y mi base es chiquitita)





¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬ FIRMA ¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬
Image

I amar prestar aen. Han mathon ne nen, han mathon ne chae, A han noston ned wilith.


WebMaster de: CalProye - Maare tulde!! (= Bienvenidos!!)

Engine: phpBB3 versión 3.0.1
Mods: varios por mi, ABBC 3, Activitiy stats, AJAX chat, Forum statistics
Portal: "board3"
Todas las traducciones al español de mods y del portal hechas por mi
Estilos soportados: prosilver, subsilver2, y BF_Vista ( traducion/botones al español currados por mi)
Hosting: "1and1.es"
Desconectado Ver perfil del usuario Enviar Mensaje Privado Visitar sitio Web del Usuario
Descargar Mensaje Volver arriba Página Inferior
Responder al Tema Responder Citando  
Mensaje Re: MINI-TUTO ¿Cómo Hacer Un Cronojob En CUALQUIER Hosting U 
 
calproye Escribió: [Ver Mensaje]

2º.- No escojais ni entre las 2-3 porque , y aunque ocurre una vez al año, hay cambio de hora y un año tendreis dos copias y otro año no tendréis copias de seguridad.


3º.- Evitar las horas en punto y las del tipo 4:15/30/45. Todo el mundo suele coger horas así. E igual de bueno es 4:15 que las 4:11 que no habrá nadie ejecutando cronojobs



Muy buenos estas dos recomendaciones, buena apreciación, si señor





¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬ FIRMA ¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬
Webmaster de Todo-Mods -- Webmaster de Todoelbarco.com -- Webmaster de NosQuejamos.com
-------------------------------------------------------------------------------
Image
ImageImage
Desconectado Ver perfil del usuario Enviar Mensaje Privado Visitar sitio Web del Usuario
Descargar Mensaje Volver arriba Página Inferior
Mostrar mensajes anteriores:   

Publicar Nuevo Tema  Responder al Tema  Página 1 de 1
 

Usuarios navegando en este Tema: 0 Registrados, 0 Ocultos y 1 Invitado
Usuarios Registrados conectados: Ninguno


 
Lista de Permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
No Puede descargar archivos
No Puede enviar eventos al Calendario