Tag Archives: scripting

No se carga .bashrc al iniciar sesión por SSH

Si iniciamos sesión en alguna máquina remota por ssh y vemos que no nos carga el fichero ~/.bashrc donde es más que probable que tengamos definida nuestra configuración favorita para la shell con un PS1 personalizado, un PATH más cómodo o algunos Alias útiles, es porque al iniciar sesión por ssh se lee el fichero ~/.bash_profile así, lo que debemos hacer es indicar en este fichero que utilice la configuración almacenada en ~/.bashrc.

 $ vim .bash_profile

Añadimos

if [ -f ~/.bashrc ]; then
  .  ~/.bashrc;
fi

Como vimos en alguna entrada anterior usar un . (PUNTO) es un alias del comando source que permite cargar la configuración almacenada en un archivo.

Backup de Clientes Windows en Servidores Linux

Estaba yo dándole vueltas a como arreglar la historia de hacer copias de seguridad de las máquinas de los usuarios. Hasta ahora había probado Unison y una versión de RSync para Windows, pero no estaba satisfecho. El problema se producía al intentar copiar ficheros que estaban fuera del directorio de usuario, en windows es %USER% o algo así, de vez en cuando, había que hacer una modificación a esos archivos para darles “Control total”. Hay que sumar, que mis usuarios son los de contraseñas basadas en gruesos algoritmos de cifrado, efectivamente, 1234 es la más común, así que no pueden iniciar sesión en el servidor, sólo transferencia por sftp con chroot a su $HOME.

Read more »

Notificaciones en Bash y Python

Aunque mis conocimientos se basan en estar muchas horas en la consola, escribiendo crípticos comandos, que sólo yo y Jon Maddog conocemos, utilizo un gestor de ventanas para navegar por la web, ver vídeos, escuchar música y cosas así. Puedo unir la potencia de la línea de comandos con el atractivo visual de un entorno de ventanas. Gracias al comando notify-send podemos enviar mensajes a la bandeja del sistema como por ejemplo:

Read more »

Control de Comandos

No hay nada más molesto para un sysadmin que correr los scripts en algún sistema y que alguno de los comandos que forman parte del código no esté presente en el sistema. Así, disponemos de comandos que miran que otros comandos están o no están dando el correspondiente aviso y abortando la ejecución.

Read more »

Midiendo La Curiosidad

Después de un viaje decidí compartir con los amigos las fotos que hice. Es un archivo pesado y lo colgué del servidor así

http://www.muspells.net/unarchivo.tar.gz

La gente lo iba descargando, pero quería mirar cuan curiosos eran, como pasé la URL directa del archivo al darle click ya empieza la descarga. Así que me preguntaba cuantos de ellos borraron unarchivo.tar.gz y entraron a la dirección del sitio.
Para ello, filtre las peticiones al archivo.

# grep unarchivo.tar.gz access.muspells.net.log | cut -d" " -f1 | sort | uniq 

Obteniendo una lista como esta:

88.55.66.33
77.5.47.5
...

La lista es un ejemplo, obviamente, me salían 29 IP’s únicas, ahora hay que cruzar los datos con las visitas a páginas legítimas del blog. Así

IPS=$(grep unarchivo.tar.gz access.muspells.net.log | cut -d" " -f1 | sort | uniq)
for IP in $IPS
do
grep $IP access.muspells.net.log | grep -v unarchivo.tar.gz | cut -d" " -f1 | sort | uniq
done

Que nos da una lista con 9 direcciones IPs que son las personas que han descargado el archivo y han visitado alguna otra página.
Esta estadística es chapucera, pero conociendo el tráfico que tiene el servidor y como son mis amigos, es muy fiable. Nos da que el 36% de mis amigos son curiosos en tecnología.
Ahora voy a contar los que van a intentar descargar unarchivo.tar.gz dando el correspondiente 404.