Linux
Una Semana con Macintosh
by K on Jan.16, 2007, under Linux, OS X, Personal, Principal, Tecnología, Tutoriales
Hace una semana me entregaron mi primer MAC, es un Mac mini Intel, con Core DUo 1.66, 512M DDR2, disco de 60GB, Bluetooth 2.0 y Airport extreme. corriendo OS X Tiger (10.4)… la experiencia ha sido sobre todo fabulosa, tiene lo suave de un sistema operativo de escritorio y lo potente de un UNIX por debajo…
El start es en menos de 30 segundos, tema agradable versus los 3 o 4 minutos que se hecha un windows con todo cargado… como es un Unix por debajo, lo primero que hice fue generar mi propio DNS local, de esa forma la navegación se acelera mucho…
por ahora el tema ha sido super entretenido y con mucho aprendisaje tambien…
NFS failover no disruptivo
by K on Apr.02, 2006, under Linux, Principal, Tutoriales
En Linux uno de los temas más complejos de clusterizar es un servidor de archivos, esto tiene mucho que ver con como es que un servidor NFS realiza sus procesos de lock, stats y mount…
Usando Heartbeat y un poco de voodoo sobre el /etc/init.d/nfslock se puede hacer un failover amigable sobre aplicacion de bajo indice de locking.
El hardware requerido es un disco compartido para manejar la información de Locks, stats y mounts y el shared storage para la data definitiva.
El tutorial completo esta aquí, con un poco de suerte esto funciona… ya lo probe
Existe una opción más compleja y se supone con más prestaciones pero agrega muchos puntos de entropia a la solución, Por ahora la simple.
PuTTY windoze y VI… keypad que no anda
by K on Feb.11, 2006, under Linux, Principal, Tutoriales, Vmware
Como todo *nix Geek domado, tengo que usar más seguido de lo que me gustaría M$ Windoze, y la unica opcion sana razonable para conectarte a un ssh es PuTTY, el drama ocurre con VI y tratar de usar el tecladito numérico, aparecen letras verticales y challa…
Problema: Putty envia “key scan codes” desconocidos para la limitada coleccion de emulacion de terminales conocidos por VI o la emulacion de xterm que usa por defecto, por tanto los scan codes, producen cualquier garabato…
Solución teórica: enseñarle los scancodes desconocidos de los números del keypad al VI
Solución práctica:
en la ventana de VI escribir lo siquiente:
:imapOq 1 :imap Or 2 :imap Os 3 :imap Ot 4 :imap Ou 5 :imap Ov 6 :imap Ow 7 :imap Ox 8 :imap Oy 9 :imap Op 0 :imap On . :imap OQ / :imap OR * :imap Ol + :imap OS -
Segun entiendo esto puede ser muy tedioso cada vez que queremos fixear el tema… La alternativa es modificar el rc del VI, ~/.vimrc en el home de cada usuario (o crear el archivo /etc/skel/.vimrc para que los usuarios posteriormente creados tengan el problema ya resuelto) e incluir dentro de ese archivo los mismos comandos.
Ya lo tengo hecho para todos los servers que manejo.
user@server /home/user/> man sex
by K on Feb.02, 2006, under Humor, Linux, Principal
SEX(6) EUNUCH Programmer's Manual SEX(6) NAME sex - have sex SYNOPSIS sex [ options ] ... [ username ] ... DESCRIPTION sex allows the invoker to have sex with the user(s) speci- fied in the command line. If no users are specified, they are taken from the LOVERS environment variable. Options to make things more interesting are as follows: -1 masturbate -a external stimulus (aphrodisiac) option -b buggery -B animal bestiality with animal -c chocolate sauce option -C chaining option (cuffs included) (see also -m -s -W) -d file get a date with the features described in file -e exhibitionism (image sent to all machines on the net) -f foreplay option -F nasal sex with plants -i coitus interruptus (messy!) -j jacuzzi option (California sites only) -l leather option -m masochism (see -s) -M triple parallel (Menage a Trois) option -n necrophilia (if target process is not dead, program kills it) -o oral option -O parallel access (orgy) -p debug option (proposition only) -q quickie (wham, bam, thank you, ma'am) -s sadism (target must set -m) -S sundae option -v voyeurism (surveys the entire net) -w whipped cream option -W whips (see also -s, -C, and -m) ENVIRONMENT LOVERS is a list of default partners which will be used if none are specified in the command line. If any are specified, the values in LOVERS is ignored. FILES /usr/lib/sex/animals animals for bestiality /usr/lib/sex/blackbook possible dates /usr/lib/sex/sundaes sundae recipes /usr/lib/sex/s&m sado-masochistic equipment BUGS ^C (quit process) may leave the user very unsatisfied. ^Z (stop process) is usually quite messy. MAN AUTHOR Author prefers to be anonymous. HISTORY Oldest program ever.
Virus para Webserver
by K on Nov.08, 2005, under Linux, Principal
McAfee detecto un virus que ataca webservers sobre Unix, este es un worm que bombardea redes aleatoreas en busca de webserver corriendo CGI-PHP con scripts mal construidos y vulnerables y infectan el webserver, esto es lo mismo que l 99% de los hackeos de servidores web pero automatizado, un script web mal desarrollado que es explotable desde afuera.
Un ejemplo de un hoyo de seguridad con patas es el software PHP de foros phpBB, existen como 100 distintos xploits que lo vulneran, el virus no es nada nuevo respecto a como opera sino que es el primero en hacer hackeos automatizados.
Sistemas vulnerables: todos los POSIX que corran PHP/CGI y tengan scripts mal hechos..
RAWHIDE, donde los RPMS queman…
by K on Oct.24, 2005, under Linux, Principal, Tutoriales
Por culpa de una mañana de lunes aburrida, opte por migrar una estación de trabajo Linux que tengo (25% RHEL4 beta2, 50% Centos4, 25% paquetes sueltos) a RAWHIDE, que se supone es lo más nuevo respecto a Red Hat Linux… tiene cosa muy nuevas, pero algunas estan de frentos en periodo de testing severo…
bueno para cambiarse desde FC4 a Raw Hide, hice el siguiente script:
#!/bin/bash
echo ” Entrando a la dimesion desconocida de RAWHIDE”
echo ” se asumen respaldos y que esta no es una maquina de produccion ”
echo ” ”
cd /etc/yum.repos.d/
echo “apagando fedora.repo, fedora-extras, fedora-updates ”
sed ’s/enabled=1/enabled=0/’ fedora.repo > temp1 ;
mv -f temp1 fedora.repo;
sed ’s/enabled=1/enabled=0/’ fedora-updates.repo > temp2 ;
mv -f temp2 fedora-updates.repo;
sed ’s/enabled=1/enabled=0/’ fedora-extras.repo > temp3 ;
mv -f temp3 fedora-extras.repo;
echo “Apagados los repositorios antiguos”
echo ” ”
sleep 3
echo “Activando los devel (rawhide)”
sed ’s/enabled=0/enabled=1/’ fedora-devel.repo > temp4 ;
mv -f temp4 fedora-devel.repo;
echo ” ”
sed ’s/enabled=0/enabled=1/’ fedora-extras-devel.repo > temp5 ;
mv -f temp5 fedora-extras-devel.repo;
echo ” ”
echo ” Listos los cambios en los repositorios, yum update ahora ”
echo ” ”
sleep 5
yum update
echo “Reboot y listo ”
exit
A mi me funciono bien, agrega bastantes cosa muy nuevas y rompe alguna viejas…. tener cuidado..
UPDATE: teenr cuidado con dependencias de cosas… entre ellas kernel + kudzu + hal + initscripts
limpiar los comentarios de un archivo
by K on Oct.06, 2005, under Linux, Principal, Tutoriales, Vmware
Configurar SQUID desde 0 es un cacho…. no por que sea dificil sino por las 3000 lineas de archivo de configuración… de las cuales 2900 son comentarios…
una forma facil sería hacer lo siguiente:
# cd /etc/squid
# mv squid.conf squid.conf.full
# cat squid.conf.full | grep -v ^# | cat -s > squid.conf
¿que hicimos? …
1, nos fuimos al directorio del archivo de conf del squid
2, renombramos el archivo de configuración de squid a squid.conf.full
3, volcamos a pantalla el contenido de squid.conf.full (cat), mediante un pipe lo pasamos por un filtro de quitar todo lo que empieza por un #, luego mediante otro pipe, obligamos a comprimir las lineas vacias con el cat -s … y eso lo metemos a el archivo definitivo.
tan tan…
sirve para apache tambien.
Limitando la cantidad de conexiones en SQUID
by K on Sep.28, 2005, under Linux, Principal, Tutoriales
Un ejemplo de limitar la cantidad de conexiones web en el proxy sería asi:
en el /etc/squid/squid.conf
agregar algo asi (asumiendo que ya el grupo lan corresponde a la configuracion del squid):
acl lan 192.168.0.0/24
acl numbercon maxconn 5
# — otras ACL —#http_access deny lan numbercon
# — otros elementos http_access deny—-#
http_access lan allowhttp_access deny all
Le mandas un restart al squid y listo.
service squid restart
PD: sacado de la documentación de SQUID y de Red Hat Magazine
CuPS-PDF v2.0
by K on Sep.26, 2005, under Linux, Personal, Principal, Tutoriales
Volker Behr, ha creado un driver y software de impresión de PDF, y desde hace un año que yo mantengo los RPM de este proyecto. Volker con ene esfuerzo termino el beta de cups-pdf 2.0, y por supuesto ya estan listos los SRPMS y spec file.
el sitio oficial: CUPS-PDF 2.0
Me gusta poder devolver cosas a la comunidad, y aunque sea unos RPMs hacen la diferencia.
Dentro de hoy o mañana Volker deberia tener actualizado el sitio con las nuevas versiones de los RPMs.
——–
Volker Behr has created a CUPS driver that prints into pdf files, since a year i am mantaining the RPM versions of this Software, With a lot of effort Volker finished the version 2.0 of cups-pdf, and today are the SPEC and SRPM files ready… i enjoy giving something back to the community, even some little RPMS can make a difference.
The site: CUPS-PDF 2.0
Between today and tomorrow Volker should have the website updated with the new versions of the RPMS.
Volker: Keep up the great job!!!
reviviendo MySQLs
by K on Sep.15, 2005, under Linux, Principal, Tutoriales
Hoy a un cliente se le lleno un 105% del disco del server linux que maneja, el problema… el mysql quedo chascon, porque no pudo terminar de escribir lo abierto… y daba errores del tipo: “Got error XXX from table handler “, esto significa que a la base de datos le quedaron cosas tablas con filas a medio escribir y cosas asi… parecido al error que podria aparecer con un corte de luz… que hacer?.
El mysql incluye un utilitario que permite “peinar” la base chascona, antes de hacer algo se recomienda respaldar.
#service mysqld stop
#tar jcf /respaldo-mysql.tar.bz2 /var/lib/mysql
#service mysqld start
con el respaldo hecho, el paso siguiente es peinar las chascas de la base.
#mysqlcheck -a
con eso tenemos un status de todas las tablas y bases del motor, con esto identificamos cuales necesitan fixing…
#mysqlcheck -a -r
con ese comando instruimos arreglar las tablas y bases dañadas. es recomendable correr el ultimo proceso hasta que no tenga nada más que arreglar.
es posible que se hayan perdido las ultimas filas de las tablas que no terminaron de actualizar, sería entonces razonable usar una herramienta visual para inspeccionar las ultimas filas de las tablas que presentaron problemas.
suerte y que les quede lindo el mysql…