Instalando SLES9 vía red

Abril 25, 2007

Ayer tuve que reinstalar un server de mi datacenter y resulta que cuando instalé originalmente uno de los de su grupo, cargué ahí un repositorio Yast. El repositorio está abierto como un share NFS y cargado con todos los CDs de SLES más serv. pack 1 y 2.

La idea final es prescindir de los cds/dvd de instalación (el DVD hay que armarlo porque la licencia que compramos no incluía DVDs ni manuales, claro…pregunten a los ejecutivos), y poder instalar rápidamente (a velocidad de gigabit) el SLES9, plus serv.pack 2 level.

Lo hice rápido una vez que pude ver el (muy) simple procedimiento de instalación en red en SLES9 del que no pude encontrar ninguna entrada en Google, bah suponiendo que las palabras clave “SLES9 network install” y derivados en un par de idiomas fueran las indicadas para localizar algún tipo de tutorial sobre cómo lanzar efectivamente una instalación en red. En primera instancia lo que obtuve fueron muchas páginas contando cómo se arma un repositorio Yast.

Lo bueno de todo fue que al finalizar pocos minutos después tenía un SLES9 Serv. Pack 2 Level (lo certificó la release-note que se muestra al final de la instalación).

El punto clave para lanzar la ejecución de una instalación remota está en el GRUB del CD/imagen de instalación. En un costado, abajo dice “CDROM-F2″, si durante la selección “Installation” (para empezar a instalar), elegimos “F2″ antes de hacer enter, elegimos el tipo de medio a usar para la instalación. Más tarde, luego de autodetectar y cargar los módulos de la/s placas de red, se nos pregunta por los datos de conectividad de las varias eth’s. Puede usarse DHCP o cargarse una configuración estática típica. A partir de ahí solo queda ingresar la ip o nombre del server de instalación (para que el nombre del server funcione, claro, el DNS tiene que estar bien cargado).

Un tip para los primerizos con estas versiones viejas de Yast: el directorio de instalación remota exportado en el server del repositorio puede ser algo como:

/srv/sles9

sin embargo, al cargarlo generalmente tendrán otro directorio más que tipear hasta tener en el raíz relativo los directorios típicos de la estructura que pueden ver en cualquier CD 1 de instalación.

A partir de ahí con un enter ya se inicia la instalación típica. -

Powered by ScribeFire.


Uninstall files installed from a source code tar-ball

Octubre 25, 2006

Another one from nixCraft:

Method # 1
(the classic usual)
Use command make uninstall or equivalent supported command, Read INSTALL or README file in source code file to find out more about this method.

# make uninstall

Sure, this method sounds very easy but not supported by all tar balls.

Method # 2
(a) Make a list of all files on the system before installing software i.e. a pre-installation list of all files on your system.
find /* > packgetlist.b4

(b) Now install the software (use configure & make to compile it)
make
make install

(c) Now make a list of all files on the system after installing software i.e. postinstall list
find /* > packagelist.after

(d) Next, compare both lists using the diff utility to find out what files are placing where. This list can be use to uninstall all files installed using source tar ball.
diff packagelist.b4 packagelist.after > package.uninstall.list

(e) After some time if you wish to uninstall files then you need to get list of files from package.uninstall.list file. Use following small for loop at shell prompt to remove all files:
for i in $(grep “>” package.uninstall.list | awk ‘{ print $2 }’)
do
rm -i $i
done


How to extract an RPM package without installing it

Octubre 25, 2006

From nixCraft

To be frank there is no direct RPM option available via rpm command to extract an RPM file. But there is a small nifty utility available called rpm2cpio. It Extract cpio archive from RPM Package Manager (RPM) package. With the following hack you will be able to extract an RPM file.

So rpm2cpio converts the .rpm file specified as a single argument to a cpio archive on standard out. If a – argument is given, an rpm stream is read from standard in.

Syntax is as follows:
rpm2cpio myrpmfile.rpm
rpm2cpio – < myrpmfile.rpm
rpm2cpio myrpmfile.rpm | cpio -idmv

Example

Download an RPM file:
$ mkdir test
$ cd test
$ wget http://www.cyberciti.biz/files/lighttpd/rhel4-php5-fastcgi/php-5.1.4-1.esp1.x86_64.rpm

Extract RPM file using rpm2cpio and cpio command:
$ rpm2cpio php-5.1.4-1.esp1.x86_64.rpm | cpio -idmv

Output:
/etc/httpd/conf.d/php.conf
./etc/php.d
./etc/php.ini
./usr/bin/php
./usr/bin/php-cgi
./usr/lib64/httpd/modules/libphp5.so
./usr/lib64/php
./usr/lib64/php/modules
….
…..
..
./var/lib/php/session
./var/www/icons/php.gif
19188 blocks

Output of rpm2cpio piped to cpio command (see how to use cpio) with following options:
i: Restore archive
d: Create leading directories where needed
m: Retain previous file modification times when creating files
v: Verbose i.e. display progress

Verify that you have extracted an RPM file in current directory:
$ ls

Output:
etc php-5.1.4-1.esp1.x86_64.rpm usr var

This is useful if you want to extract configuration file or other file w/o installing an RPM file.


Rescate típico: soft compilado “pisa” soft rpm

Octubre 10, 2006

En un típico problema de server el otro día estuve viendo un CentOS (el server OS recompilado de los src.rpm de RHAT ES 4), que tenía un serio incoveniente: ningun binario dependiente de python funcionaba.

Bien, el problema se dió cuando el sysadmin del server instaló un python compilado a mano SOBRE el python original (el que se instala desde rpm). No me detuve mucho a ver qué había ocurrido y porqué el python compilado (exitosamente al parecer) no respondía bien, aunque presumo algun problema con los PATHs de carga de las librerías y el frecuente problema del linkeo a versiones específicas (la 1-0.8 aunque esté disponible la full-compatible-binaria 1-10).

Hay varias soluciones en este caso, en particular me inclino por el camino elegante de desinstalar el python compilado a mano (make uninstall), teniendo en cuenta que en este caso particular es posible sin ninguna consecuencia; luego lo idea sería forzar la instalación del/los rpms de python que sean necesarios (cuando alguna app diga q falta X o Y librería te entererás de que falta algo todavía!).

Un detalle, el comando rpm (ni hablar de yum) seguramente no va a funcionar antes de que esté en su lugar el viejo python. O sea que lo que hay que hacer es tomar (usando mc o algún cd de recuperación) el contenido del/los rpm de python que hicieran falta y sobreescribir manualmente los binarios y librerías a los directorios que corresponda (puedes ver cuales son en el rpm).

Aclaro que todo este trajín de borrado/copia manual no tendrá ninguna consecuencia sobre tu BD rpm ni tus dependencias ya que todo el tiempo estuviste trabajando con archivos y no alteraste la BD rpm en absoluto.

Este es un típico problema fácil de solucionar, pero que en principio produce pequeños espasmos cardíacos a los sysadmin novatos ya que su “navaja suiza” de reparación de problemas (la “reinstalación a cero” de cualq. paquete o aplicación) desaparece del mapa de soluciones factibles junto con el sist. de adm. de paquetes (YUM) y su subsist. base (RPM).

La idea de esta explicación puede ser fácilmente portada a equivalentes en comandos en Debian y otros Linux con sist. de adm. de paquetes. automatizados.


Los 10 fallos al pedir trabajo

Octubre 8, 2006

Sacado de lo de Cedrán y Fernando…

Desde Fernando he leído el siguiente artículo, son temas básicos pero que a menudo se olvidan y son muy importantes:

Los errores más típicos a la hora de pedir empleo se pueden subsanar fácilmente. Aquí les dejo con algunas sugerencias para tener más posibilidades de ser elegido para un trabajo, o para obtener mejores condiciones al ser contratado:

Ser correcto.
Esto voy a decirlo claramente: Lo primero es saber expresarte correctamente. No puedes hablar a tu empleador como a un amigo, o como alguien que está a tu mismo nivel.
Si ese paso en la relación se lleva a cabo, debe ser el empleador el que de el primer paso, y debes de llegar solamente hasta donde él llegue. Trata a tu empleador de “usted(es)“, y no de “tú“. Esto demostrará que eres una persona seria y que sabes mantener una relación cordial con personas que no conoces.

Contar tus problemas.
A la empresa que te va a contratar no le interesan tus problemas, en absoluto. No quieren un empleado que tenga problemas incluso antes de venir a trabajar con ellos. Si tienes problemas, tu solicitud de empleo no es el mejor sitio para contarlos. Lo único que dice de ti contar el problemas personales, es que probablemente vas a dar muchos más en el futuro.
Si tienes alguna limitación o problema para el trabajo, busca la manera de camuflarla. Frases como: “Ahora mismo estoy muy ocupado“, “No contacten con las empresas de mi CV porque la relación profesional terminó bastante mal“… no ayudan a generar una confianza con tu futura empresa.

Mostrar ilusión.
Algunas empresas lo llaman “carta de motivación“, pero yo creo que es necesaria una actitud de motivación. Tienes que demostrarle a la empresa que el proyecto que te proponen es algo que te hace feliz, que te encantaría dedicar tu tiempo a esta idea, que es una oportunidad para tí. Esto va a jugar a tu favor, y no es muy difícil de hacer. ¿A qué no?

Ser proactivo.
En las entrevistas para entrar en Google, una de las preguntas que te hacen es: “¿En qué mejorarías Google?“. Esto es un filtro básico: Si no eres capaz de mejorar la empresa en la que trabajas, no te molestes en venir.
Esto se aplica más o menos a cualquier empresa y proyecto. Una persona que pueda sugerir nuevas maneras de generar dinero, siempre será más bienvenida. Sugiere mejoras. Sugiere alternativas. Esto demostrará que vas a ser una persona que resuelve problemas y aporta soluciones. Créeme cuando digo que esto es precisamente lo que quieren las empresas, y que tu puedes conseguirlo si te lo propones.

Curriculum Interesante
He tenido, por una razón o por otra, la oportunidad en mi vida de revisar multitud de CV, y hay algunos fallos que considero de la magnitud “enormes”, y que se repiten una y otra vez. Empecemos por los básico:
Escribe lo más importante en tu vida al principio. No es seguro que la empresa vaya a leer todo tu CV, muchas veces se descartan candidatos antes de pasar la primera página. Por eso, tienes que hacer lo posible porque la primera página sea suficientemente llamativa.
Destaca con negritas lo mas importante. Cuando RRHH lee tu CV lo ojea por encima, no se lo estudia con detalle. Destaca lo que quieras que esa persona lea en negrita y que si le interesa, que lea el texto normal.
Imagen profesional. Una cuenta en hotmail para pedir trabajo no denota mucha profesionalidad. Si no tienes posibilidad de tener tu propio dominio, al menos usa un correo más profesional.
Elimina lo irrelevante. Muchísima gente, por miedo y falta de confianza, trata de parecer mucho más de lo que es a base de llenar líneas en el CV. Por las manos de un gestor de RRHH en una gran empresa pasan al menos 20 nuevos CV cada día. Intenta ir al grano para conseguir una entrevista, no pongas tu colegio en primaria, ni que de pequeño fuiste campeón de atletismo o que una vez hicistes un curso de flauta travesera. Al grano chicos.
Adapta el CV para la oferta. Tu eres una persona con muchas cualidades, pero no todas son válidas para todos los trabajos. Realza las cualidades que te ayudarían más para esa oferta, y camufla (o elimina) las que te podrían perjudicar.

“¿Cómo hago para escribir el CV? No se por dónde empezar!”
Hay muchísimas herramientas para hacer un buen CV. Mi experiencia es que hay que dedicarle unas cuantas horas para que lea llamativo y provoque que el entrevistador se fije en ti. Esto NO quiere decir empezar a poner colores, líneas por aquí y por allá, o una tipografía de lo más “cool”, quiere decir el pensar y repensar la estructura de la información que quiero presentar.Para los primerizos, les recomiendo que visiten la web del Europass, y usen el modelo de CV Europeo.

Analiza lo que se pide en la oferta
Cuando la empresa va a buscar a alguien, se pasan un tiempo pensando en lo que quieren y al final se condensa en un pequeño párrafo con las preferencias de la empresa. Esta información es lo más valioso que tienes. La empresa sabe que encontrar a alguien con esas características no es sencillo, si bajan los requisitos, es porque piensan pagar poco. Y esto, amigos mios, es ley inmutable.
Si te piden inglés, no digas que sabes alemán para defenderte. Si piden 2 años de experiencia y no los tienes, di que tienes X años en un sector relacionado y que estarías muy ilusionado en dar un nuevo giro a tu carrera con una empresa como esa.
Asegurate, antes de mandar el CV y la carta de motivación, que has mostrado a la empresa lo cerca que estás de cada uno de los requisitos que piden. Que no digan que no les he avisado.

Analiza la empresa
Muchas veces, las empresas buscan a alguien que se adapte a su manera de pensar y sentir la vida. En una consultora de gran prestigio, buscan a alguien con una gran seguridad en si mismo. En un hospital buscan a alguien con mucho tacto. En technorati buscan a gente famosa en el mundo de internet
Analiza cómo es la empresa, cómo son sus empleados, qué dicen, qué opina la gente de la empresa. Toda esta información servirá para adaptar el tono de tu carta de motivación al que sea más cercano al de la empresa. Esto generará una empatía que te dará más puntos para ser “el elegido”.

Retribución
No negocies las condiciones hasta que ellos lo hagan. No puedes pedir empleo diciendo: “Quiero cobrar X€ bruto al mes y tener un variable del…”. No. Debe ser tu empleador el que lance la cuestión, y entonces te sientas a negociar.
Aunque parezca increíble, he tenido casos de gente que, antes de saber las característica concretas del proyecto, ya me decían cuanto querían cobrar. Esto es un fallo gordo por varias razones: podría ser que yo estuviera dispuesto a pagar mucho más, o incluso podría pagar menos dinero y ofrecer otro tipo de compensaciones. Espera a que ellos muevan ficha.

Infíltrate!
Conocer a alguien dentro de la empresa que tenga una buena opinión de ti, te podrá dar muchos puntos a tu favor. Mientras más respetada sea esa persona, más puntos.
Hay veces que es imposible, pero el crearte una red de contactos en el sector en el que quieras trabajar puede cambiar la balanza a tu favor en muchas circunstancias. Un Responsable de RRHH tiene en sus manos CVs de personas que no conoce, pero si resulta que un compañero le dice que tú vales, seguro que mira con otros ojos tu CV ante tanta persona anónima.
El Networking requiere un post aparte, pero les dejo con una cita para pensar: “Si nadie te conoce, nadie te llama”.


Comandos interesantes, apps interesantes

Agosto 24, 2006

- dpkg-awk o como instalar una serie de paquetes en debian relacionados entre sí con un solo comando, por ejemplo KDE, mirando los paquetes que dependen de kdelibs4:

dpkg-awk -f /var/lib/dpkg/avaliable ‘kdelibs4′ –Package | egrep . | cut -d\ -f2 | xargs apt-get install

- …te cargas todo lo que no vale para nada

for a in `deborphan` ; do apt-get remove -y $a ; done

- file-rc, excelente aplicación que facilita la gestión de demonios arrancados o detenidos al inicio del sistema.

- ejemplo de uso de bash en consola directamente,

* para crear directorios
for ((i=1; $i<=25; i++)); do mkdir slot$i;done

* para ejecutar un comando sobre una lista de algo
for ((i=1; $i<=9;i++)); do amlabel DailySet1 DailySet1-0$i slot $i; done

- You can find programs that run setuid to root with the command:

# find / -user root -perm -4000

mmm frases sueltas

“En cualquier empresa, el jefe siempre quiere el trabajo para ayer, es un axioma. Cuando dan cursillos de formación a los jefes esto es lo primero que les enseñan. Lo siguiente es que se laven las manos después de mear. Y si triunfan y hacen algún master, les enseñan a no mearse en las manos.”


Herramientas de monitoreo en vivo

Agosto 11, 2006

Las herramientas de monitoreo “live” nos permiten hechar un vistazo a las tripas de nuestro server/red/algo que necesitemos apreciar desde un punto de vista más informativo y especialmente enfocando sus posibles interrelaciones con otros factores.

El viejo top y netstat son un par de las primeras que se usan cuando un caso como el anterior se presenta, sin embargo la cosecha de herramientas de monitoreo para S.O. tipo *nix es tan variada como variadas son las necesidades de sus usuarios. Los datos que siguen fueron fielmente copiados de Planet Malasya Blog y son un listado bastante bueno de algunas herramientas de monitoreo en vivo no tan conocidas y sus características y utilidad consecuente.

Leer el resto de esta entrada »


Actualizando de MySQL 4.0 a 5.0 en Debian Unstable

Agosto 11, 2006

Bien, resulta que estuve instalando desde cero un Joomla! (el CMS), y tenía un viejo Mambo en el server con algunos artículos cargados.

De inmediato no me interesó pasar por el proceso de ver el procedimiento y detalles potencialmente engorrosos de actualizar un (muy viejo) Mambo a Joomla! y elegí instalar desde cero.
Leer el resto de esta entrada »


9 modos de prevenir el espionaje industrial

Agosto 2, 2006

Copia del original por motivos de consulta.
by Calum Macleod – European Director of Cyber-Ark – Wednesday, 2 August 2006.

If we‘re honest every one of us imagine what we’d do with a few million in the bank. The yacht in Cannes, the private jet in Nice, possibly our own football team, and maybe a few other high maintenance accessories top our list of must-haves. But of course the question is how to get there. Working till I’m too old to enjoy it is one option but of course there is an alternative; the lottery, online poker, a rich widow, stocks and shares – increasingly risky these days – or why not simply help myself to something very valuable.
Leer el resto de esta entrada »


Por qué Windows es más inseguro que Linux

Julio 31, 2006

Del post de zdnet:

“Windows is inherently harder to secure than Linux. There I said it. The simple truth.
Many millions of words have been written and said on this topic. I have a couple of pictures. The basic argument goes like this. In its long evolution, Windows has grown so complicated that it is harder to secure. Well these images make the point very well. Both images are a complete map of the system calls that occur when a web server serves up a single page of html with a single picture. The same page and picture. A system call is an opportunity to address memory. A hacker investigates each memory access to see if it is vulnerable to a buffer overflow attack. The developer must do QA on each of these entry points. The more system calls, the greater potential for vulnerability, the more effort needed to create secure applications.

The first picture is of the system calls that occur on a Linux server running Apache; the second image is of a Windows Server running IIS.

Thanks to Sana Security for generating and providing these images.”

Linux server running Apache
Linux server running Apache

Windows server running IIS

Windows server running IIS