BATCH – Script WINDOWS para manejo de errores (ERRORLEVEL).-

Este script lo ejecuto como tarea programada cada 1 hora y lo que realiza es comprobar los servidores SMTP (ares01 – ares02 y ares03), si detecta algún problema con el envio en cualquiera de los servidores SMTP, envia un correo informando del problema. Este script se puede adaptar según los requerimientos, para que funcione debe tener el utilitario «sendemail.exe» :

Publicado en BATCH - DOS | Comentarios desactivados en BATCH – Script WINDOWS para manejo de errores (ERRORLEVEL).-

UNIX – Script vigila proceso en ejecución.-

Cada 100 segundos verifica si un proceso esta corriendo, si lo encuentra abajo, lo sube nuevamente y registra la caida en un log.-

Publicado en Unix - Linux | Comentarios desactivados en UNIX – Script vigila proceso en ejecución.-

BASH – Usar archivos de plantillas (templates) con Bash Script.-

Si tenemos archivos de plantillas en los que hemos definido algunas variables y queremos obtener el archivo tras aplicar la sustitución de las variables, podriamos emplear el comando “eval” de la siguiente manera.

Por ejemplo, podriamos tener un archivo de plantilla llamado “saludo.txt”

Hola $NOMBRE, estamos muy agradecidos de que lea el Blog $BLOG

Ahora desde un script de shell podriamos leer este archivo y aplicar una sutitucion de variables de una manera similar a la siguiente:

También el comando “eval” nos puede servir por ejemplo para evaluar una expresión de cadena y proceder a su ejecución en la shell, por ejemplo:

eval “ls -l” nos saca un listado de los archivos.

Pero como eval parte de una expresion construida a base de strings, de esta forma se puede hacer bastantes cosas interesantes en la programación de bash.

Publicado en Unix - Linux | Comentarios desactivados en BASH – Usar archivos de plantillas (templates) con Bash Script.-

UNIX – Script BASCH uso IFs multiples.

Publicado en Unix - Linux | Deja un comentario

CHMOD – Permisos en archivos y carpetas en Unix y Linux.-

El comando CHMOD te permite colocar permisos de acceso para los archivos en tu servidor web o cuenta de hospedaje compartido.
Este comando es comúnmente utilizado para colocar permisos en archivos PHP o scripts Perl.

Por ejemplo, muchos scripts tienen los permisos para que el propietario o dueño (OWNER) pueda leer, escribir y ejecutar, mientras que para el grupo (GROUP) y cualquier otra persona (ANYBODY) de manera general los permisos son de lectura y ejecutar, casi nunca de escritura. Para este tipo de permisos, limitados pero con suficiente autorización para usarlos y ejecutarlos, el número que lo representa es 755.

Otro permiso común es el 777, el cual permite escribir (lo cual incluye modificar o eliminar) sobre el archivo. Si estos permisos están asignados a ANYBODY entonces cualquier persona desde la web podrá modificar el archivo. De manera general lo encontramos asignados para OWNER pero casi nunca para GROUP o ANYBODY, ya que representa una falla en la seguridad y un riesgo latente.

Los números mencionados representan niveles de permisos para distintos grupos. Los grupos de usuarios con los que contamos son: OWNER (también llamado USER, es el propietario de los archivos), GROUP que representa algún grupo específico y ANYONE o WORLD, y que es para todo mundo.

Los permisos disponibles son:
0 (cero) = Sin permisos
1 = permiso de ejecutar únicamente
2 = permiso de escribir solamente
3 = escribir y ejecutar
4 = permiso de leer
5 = leer y ejecutar
6 = leer y escribir
7 = leer, escribir y ejecutar

Como puedes ver aquí, colocar un 7 en las 3 posiciones significa acceso abierto a todas las opciones de permiso para ese grupo.

Por ejemplo, si usas el CHMOD 650, la explicación entonces sería:
– El primer número, 6, da al OWNER los permisos de lectura y escritura sobre el archivo.
– El segundo número, 5, le da al GROUP los permisos de lectura y ejecución.
– El tercer número, 0, le da a todos los demás ningún permiso sobre el archivo.

Al usar CHMOD tienes 3 grupos de números, lo cual representa igualmente 3 grupos de usuarios:
1. Owner o User, el cual de manera general es el webmaster
2. Group, un grupo de usuarios configurado por el webmaster
3. World o Anyone, que es básicamente cualquier usuario que usa tu sitio web.

Cada digito de estos grupos de números configura los permisos de cada uno de los grupos que mencionamos. La suma de esos números es lo que dará los permisos asignados para cada grupo.

0 = ningún permiso; esta persona no puede leer, escribir y ejecutar en el archivo
1 = ejecutar solamente
2 = escribir solamente
3 = escribir y ejecutar (1+2)
4 = leer solamente
5 = leer y ejecutar (4+1)
6 = leer y escribir (4+2)
7 = leer y escribir y ejecutar (4+2+1)

Podemos hacer el siguiente ejercicio sobre el hipotético archivo hola.txt:
CHMOD 700 hola.txt
Sólo tú como dueño del archivo puedes leer, escribir, o ejecutar en el archivo

chmod 777 hola.txt
Todo mundo puede leer, escribir, o ejecutar en el archivo

chmod 744 hola.txt
Puedes leer, escribir y ejecutar en el archivo. Grupo puede leer y todo mundo puede leer, nada más.

chmod 444 hola.txt
Tú como dueño, el grupo y todo mundo puede solamente leer en el archivo.

Al ver listado el archivo lo ves más o menos asi
hola.txt -rwxr-–r-– 5 February

La secuencia -rwxr–r– indica los permisos otorgados en el archivo hola.txt. El primer – te indica que hola.txt es un archivo. Las siguientes tres letras, rwx muestra que el dueño del archivo (owner) puede leer, escribir, y ejecutar. Los siguientes tres, r–, muestran que los permisos del grupo son de lectura solamente, y los siguientes tres elementos, r–, muestran que los permisos para todo mundo son sólo de lectura igualmente.

Publicado en Unix - Linux | Comentarios desactivados en CHMOD – Permisos en archivos y carpetas en Unix y Linux.-