Esta es la mejor explicación de lo que significa: más por menos.
http://dilbert.com/strips/comic/2011-02-13/
Acercando la tecnología desde 2007
Esta es la mejor explicación de lo que significa: más por menos.
http://dilbert.com/strips/comic/2011-02-13/
En general, a la hora de hacer scripts con listados de archivos y directorios, el comando “ls” es más que suficiente.
Sin embargo, a la hora de querer hacer un listado con la ruta completa, haciendo ls -R, el resultado es parecido a este:
# ls -R
dir:
arch1 arch2 arch 3 arch4
Este tipo de salida, es difícil de procesar, después en los scripts. Lo deseable es contar con salidas:
dir/arch1
dir/arch2
dir/arch3
dir/arch4
Para conseguir esto, lo útil es usar find con un modificador de profundidad, para evitar que se listen todos los niveles de la jerarquía:
find /dir/* -maxdepth 0′
Os dejo un enlace al manual, para ver otros modificadores: http://unixhelp.ed.ac.uk/CGI/man-cgi?find
Por defecto, la instalación de CENTOS hace unas particiones inmensas de swap, que están muy lejos del tamaño que vamos a querer usar nosotros.
Vamos a hacerlo a través de la consola.
Primero, reducimos el tamaño de SWAP, desmontando la paginación, y volviendo al estado antiguo.
swapoff -v /dev/VolGroup00/LogVol01
lvreduce /dev/VolGroup00/LogVol01 -L 512M
mkswap /dev/VolGroup00/LogVol01
swapon -va
cat /proc/swaps
Más información: http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-swap-removing.html
Hoy voy a hablar de ago que los de vmware tienen que pulir para próximas versiones del vcenter. Cuando se renombra una máquina virtual, sorprendentemente, los archivos y las carpetas en el datastore mantienen su antiguo nombre.
A día de hoy, la única forma que he conseguido de automatizar relativamente este problema, es:
No es la mejor de las soluciones, pero, nos saca del apuro.
Os pongo el enlace de donde he sacado esta solución: http;//tech.zsoldier.com/2010/05/rename-vm-without-shutting-downusing.html
American Physical Society está lanzando su nueva revista científica abierta y con contenidos bajo licencias CC (Creative Commons). Una buena noticia para el mundo científico, ya que permitirá el acceso a la información de grupos con pocos recursos económicos.
Aparentemente, la revista se financiará a través de una tasa de publicación de artículos estimados en 1500$ para los grupos de investigación que decidan publicar en ella.
La primera recopilación de artículos será en marzo de 2011, y su primera edición, se plantea para otoño de este mismo año.
Más información: http://www.physorg.com/news/2011-01-american-physical-society.html
Tener trazas es vital para encontrar los problemas cuando ocurren. Y ocurren. Vamos a ver hoy como hacer una gestión de creación, trazado y borrado de logs en nuestros propios scripts.
Donde se guardan los logs
Por defecto, los ficheros de log se guardan en la carpeta /var/log/X, siendo X el programa que los generó.
En mi caso, por problemas de permisos en la máquina donde los ejecuto, los guardo en /tmp.
Crear el fichero de log
Para tener más información, mis ficheros de log contienen en su nombre qué usuario es el que generó la traza.
LOG=/tmp/$APP.$(whoami).log
Mensajes de log
Cada mensaje de log, está identificado por la aplicación que lo generó, así como la hora minuto y segundo en que se generó la línea:
function log {
echo [$APP $(date +%H:%M:%S)] $@ >> $LOG
}
El uso de esta función sería:
log ‘mensaje de prueba 1. Ejecuto en directorio’ $PWD
Sentíos libros de añadir cualquier información más a la traza.
Borrar las trazas cuando exceden de un determinado tamaño.
No se puede llenar el sistema de archivos. Sobre todo cuando es una tarea periódica que ejecuta, por ejemplo todos los días.
Por ello, antes de empezar cada ejecución yo tengo una función de validar si el log ya existe, y, si excede un determinado tamaño, se borra y se empieza uno nuevo
function openLog {
LOG_LOG=$1
LOG_APP=$2
# If log is bigger than maxsize, delete it
if [ -e $LOG_LOG ] ; then
SIZE=$(stat -c %s $LOG_LOG)
if [ $SIZE -gt $MAXSIZE ] ; then
echo ‘borrando log’
rm -rf $LOG_LOG
fi;
fi;
# Create log if it doesn’t exist.
if [ ! -e $LOG_LOG ]; then
touch $LOG_LOG
fi;
}
# Create log if it doesn’t exist.
if [ ! -e $LOG ]
touch $LOG
}
Conclusiones
Es, por tanto, necesario comenzar siempre la ejecución de nuestros script abriendo el fichero de log, que lo creará si no existe o lo borrará si es demasiado grande.
Sentíos libres de utilizar y mejorar estas funciones ampliando su funcionalidad o la cantidad de información que vuelcan al sistema.
Mañana, de nuevo llega la ley sinde al congreso. Esta vez llega ratificada por el senado y el gobierno ya ha recabado los suficientes apoyos para aprobarla.
Desde aquí, queremos manifestarnos en contra de la mal llamada “ley de economía sostenible” que no es más que la encapsulación de medidas que no nos van a hacer más sostenibles, ni nos van a llevar al crecimiento, pero sí nos van a hacer menos libres.
No a la ley de economía sostenible.
No a la ley antidescargas
Recién instalado un ESX 4.1 sobre un blade, tenemos que revisar toda la configuración de red. Para que el servidor de DHCP rellene de forma automática la configuración de DNS, dejamos durante la instalación que coja los valores de DHCP.
Ahora, en el primer reinicio, cambiamos los valores de la interfaz de red con el comando:
esxcfg-vswif -i ADDR -n NETMASK INTERFACE
Además, en mi caso, aprovechamos para cambiar el nombre de la máquina. En el archivo /etc/sysconfig/network añadimos una linea:
HOSTNAME=hostname
También en este fichero es donde se debe configurar la información del gateway.
Recordad que los cambios hechos con el comando ‘hostname’ sólo duran hasta el siguiente reinicio.
Para más información: http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=4309499
No sé si conoceréis la máquina virtual VMA de Vmware para gestión de ESX desde una única máquina virtual. Deja hacer gestión integrada de distintos ESX, guarda las credenciales de acceso a los distintos Host, y viene cargado con los componentes para hacer scripts de gestión a través de la API en perl.
Os dejo el enlace para que la bajéis para hacer pruebas: http://www.vmware.com/support/developer/vima/
Para las credenciales usa una capa llamada “FASTPASS” que se encarga de las conexiones con los distintos ESX. Para añadir hosts a FastPass:
sudo vifp addserver HOSTsudo vifp listservers
“Yo no quiero saber perl. No quiero desarrollar nada nuevo. Sólo quiero depurar un script “
Aquí está lo mínimo para ser capaces de depurar en poco tiempo un script. Para empezar, para lanzar el script usamos el flag -d:
perl -d SCRIPT
Una vez dentro del depurador, observamos que se parece muchísimo al gdb. Aquí está lo mínimo para ser capaces de depurar con cierta soltura: