gentoo linux, java, software libre y otras hierbas
ene, 26 2010 - 11:23 pm

Códigos de shell script útiles en cualquier programa

shell scriptA continuación voy a poner algunos snippets de código de shell script que me han sido siempre útiles cuando escribo algún script. La mayoríá funcinoan en cualquier shell de Unix, aunque algunos requieren que sean ejecutados por Bash.

Evitar que usuarios sin privilegios ejecuten el script

Algunos scripts realizan tareas administrativas por lo cual podríamos querer que solo el usuario root ejecute el script. En ese caso podemos usar algo como esto:

#!/bin/bash
if [[ $EUID -ne 0 ]]; then
echo "Este script debe ser ejecutado por el usuario root" 1>&2
    exit 1
fi

Permitir la ejecución del script solo a un usuario específico

De manera similar al código anterior, podríamos querer que solo un usuario específico ejecute el script. Lo hacemos así:

#!/bin/bash
AUTHORIZED_USER="usuario_permitido"
if [ $USER != $AUTHORIZED_USER ]; then
    echo "Este script debe ser ejecutado por el usuario $AUTHORIZED_USER" 1>&2
    exit 1
fi

Verificar que un servicio/proceso se está ejecutando

Si queremos saber si existen procesos de algún servicio o programa ejecutándose podríamos usar este script (en este caso verifica que el demonio de Apache esté corriendo):

Leer el resto de la entrada…

19 Comentarios | deja el tuyo

ene, 22 2010 - 9:40 am

Tip rápido: dumps de MySQL compatibles con versiones anteriores

MySQL nos permite hacer “dumps” de una base de datos que básicamente es una copia de la base de datos pero en un script SQL listo para ejecutar. Cuando tenemos distintas versiones de MySQL es común obtener errores como este al intentar restaurar un ‘backup’:

ERROR 1064 at line XX: You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near 'ENGINE=MyISAM DEFAULT CHARSET=latin1' at line 8

Para evitar esto es necesario indicar al mysqldump que queremos crear un script SQL compatible con versiones anteriores. Por ejemplo, para hacer un backup en MySQL 5 que sea compatible con MySQL 4 ejecutamos mysqldump así:

mysqldump -uusuario -ppassword nombre_bd –compatible=mysql40 > script_compatible.sql

¡Es todo! Espero les sea de utilidad.

2 Comentarios | deja el tuyo

ene, 20 2010 - 9:47 am

¡Hemos vuelto! ¡Y con muchos cambios!

¡Hola querido lector! Comenzamos el año con nuevos cambios en el blog que, aunque lo tengo un poco descuidado, no puedo dejarlo a un lado porque es el proyecto al que más le tengo cariño. Hay varias cosas por contar, así que seré breve para no aburrirlos.

Temas…

Los que siguen el blog desde hace tiempo sabrán que este fue un espacio en donde se hablaba un poco de programación y algo de Linux (tips y howtos más que nada). Los temas siguen y seguirán siendo parecidos, aunque como habrán notado hemos puesto algunas cosas un poquito más avanzadas, que no son tan bien recibidas como los tips rápidos pero que tenemos la necesidad de compartir dichos conocimientos. Por supuesto, intentaremos publicar entradas más agradables y con más frecuencia.

Nuevo integrante en el blog…

Algunos ya lo habrán notado… hay un nuevo integrante en el blog: Cortex. Y como él es algo tímido y no se ha querido presentar formalmente, tendrá que aguantarse la descripción que le daré: Cortex es un geek-linuxero-paisa-9fan bastante inteligente y un excelente amigo. Ya ha escrito algunos artículos que, como comentaba anteriormente, son un poco más avanzados de lo que solía poner antes (Usando b43 para tarjetas inalámbricas BCM43xx en Linux, Trabajando con el Kernel Linux (I) y (II)). Qué más puedo decir de él… es como el Chuck Norris Linuxero de Medellín… es de los que configura el kernel de Linux con los ojos cerrados… de los que navegan por internet solo con netcat… de los que usan un teclado con solo dos teclas (1 y 0)… etc. Es todo un personaje… este es su twitter para los que quieran seguirlo.

Nueva plantilla…

La plantilla anterior es bastante bonita, llena de detalles e imágenes elegantes (el autor es un genio). Pero ya estaba algo cansado de muchas cosas: el blog era demasiado lento, tenía muchos scripts sueltos, muchas imágenes separadas, además la columna del contenido era demasiado angosta por lo que algunos de los códigos que pongo no se veían bien.

Así que he puesto una plantilla mucho más limpia, liviana, donde uso imágenes en sprites para reducir el número de peticiones al servidor, con menos scripts y efectos especiales, etc. Algo más simple, y en donde lo más importante es el contenido. He cambiado muchos de los estilos con los que se mostraba el contenido y ahora se ve un poco más limpio y bonito que antes. Además he quitado los anuncios publicitarios de Adsense del contenido para los que lleguen a través del feed. Échale un vistazo y nos cuentas ;)

Un sitio profesional para los video tutoriales: casidiablo.TV

Se ha adquirido un nuevo dominio para la sección de video tutoriales: http://casidiablo.tv. Tal vez ya hayas visto esa sección, y si no te invito a que la visites. El diseño es bastante bueno, no tiene desperdicio y la idea es seguir ‘produciendo’ algunos video tutoriales sobre Linux y programación. Por supuesto, si has creado algún tipo de material multimedia y quieres compartirlo, no dudes en contactarnos.

casidiablo.tv

Regalos para los lectores…

Les anticipo que estoy planeando realizar algún tipo de sorteo entre los lectores fieles del blog. Ya hace más o menos 4 años que comenzó este proyecto y no he hecho algo de ese estilo, así que ya viene siendo hora. De momento se me ocurre regalar camisetas, posillos o termos como este, por ejemplo:

regalos

Claro, todo a su debido tiempo y cuando estemos un poco mejor  monetariamente :D

Eso es todo por el momento. Esperamos que les guste el cambio y si tienen alguna sugerencia no duden en comentar.

26 Comentarios | deja el tuyo

« Entradas anteriores