La idea se me ocurrió al recordar esta noticia sobre el caso de un programador de EE.UU. al que le robaron su ordenador portátil y pudo recuperarlo gracias a que ejecutaba el SETI@Home y este se conectó para devolver resultados, haciendo así posible averiguar la IP del equipo robado y la dirección del ladrón (está mucho mejor explicado en el enlace anterior).
El feliz propietario del portátil tuvo suerte, dió la casualidad de que tenía instalado ese programa y tuvo la idea de aprovecharlo, así que ¿por qué no hacer algo parecido con ese fin y con toda intención? Existen desde hace tiempo programas que se instalan en el portátil y se puede hacer un seguimiento del mismo y eventualmente recuperarlo en caso de robo, pero es un servicio por el que hay que pagar (más información).
¿Cómo podría hacerse algo más casero y que no cueste dinero? Muy sencillo: todos los que tenemos un blog o una página web usamos contadores de estadísticas para saber cuánta gente nos visita, desde dónde y muchas más cosas. Se trataría de que cada vez que se enciende el ordenador este accediera a una página nuestra especialmente preparada, es decir, que contenga uno de estos contadores de estadísticas y no esté enlazada desde ningún otro sitio, para que solo reciba las visitas generadas por nosotros. Así que solo se necesitan tres cosas:
1. Estadísticas web
Hay que crear una página web sencilla e insertarle un contador de estadísticas que se activará cada vez que la visitemos. Para este blog y alguna otra página que tengo utilizo StatCounter, que no está mal. He creado un contador nuevo, y además he visto que tiene una opción para que sea "HTML only" y que no utilice JavaScript, lo cual viene muy bien para el apartado que vendrá luego. Después de configurarlo al final obtengo un código en HTML para insertar en la web, que lo que hace es llamar a una página de StatCounter con unos parámetros especiales, que son los que hacen que se cuente la visita con cada petición.
Seguramente con otros servicios gratuitos de estadísticas podrá hacerse algo similar.
2. Acceder a la página
Se trata de que al encender el ordenador siempre se acceda a la página de forma automática y sin intervención nuestra. ¿Cómo hacerlo? Muy sencillo, con la utilidad wget, que se utiliza habitualmente para descargar ficheros y páginas web desde la línea de comandos o en scripts automatizados. Simplemente indicando la dirección del contador de estadísticas creado en el apartado anterior ya habremos hecho un acceso a él. Aquí cobra importancia lo que comentaba antes de que sea "HTML only", ya que de lo contrarío sería necesario interpretar código JavaScript, que es algo que los navegadores hacen desde hace año, pero que wget todavía no (que yo sepa). El comando a ejecutar sería simplemente algo así:wget "http://c25.statcounter.com/counter.php?sc_project=XXXX&java=0&security=XXXX"
(he puesto X en vez de los numeros que salen realmente). Por cierto, no es necesario insertar el código en una página web y llamar a esta como decía en el apartado anterior, se puede llamar directamente al código del contador.
3. Ejecutarlo al inicio
Solo queda hacer que lo anterior se ejecute siempre al cargar el sistema operativo. Y para mejorarlo más, estaría bien esperar uno o dos minutos a cargar la página, para dar tiempo a que se habilite la conexión a la red (por cable o wifi). En Linux podemos añadir la siguiente línea al fichero /etc/rc.local o /etc/rc.d/rc.local (según la distribución):(sleep 60; get "http://direccion_del_contador") &
La razón de ponerlo entre paréntesis y con el & detrás es para que los dos comandos se ejecuten secuencialmente uno detrás del otro en background o como tareá de fondo, ya que si no es posible que el arranque se detuviera en ese punto hasta terminar.
En Windows también se podría hacer, lo primero sería descargar el wget para ese sistema (que existir, existe) y preparar un archivo .bat con las dos instrucciones anteriores. La pega es que la orden sleep no existe en Windows, así que sería necesario también buscar alguna equivalente o usar un truco que leí el otro día para hacer pausas. Consiste en hacer un ping a una dirección inexistente y esperar la respuesta durante N milisegundos. Así que el archivo bat quedaría:ping -w 60000 -n 1 12.34.56.78
wget.exe "http://direccion_del_contador"
Para ejecutarlo al encender el ordenador podemos crear un acceso directo en la carpeta de inicio automático del menú de Windows, o si nos lo trabajamos más ponerlo en el registro en HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
A partir de ese momento podremos ver en las estádisticas una conexión por cada vez que encendamos el ordenador, su dirección IP y a que hora se hacen. Lo que no aparecen son datos como el sistema operativo o el navegador, debido a limitaciones de wget y del contador HTML. En caso de que nos robaran el equipo y lo conectaran a Internet sin formatearlo antes sabríamos desde donde lo hacen y quizás podríamos recuperarlo como en la noticia del SETI@Home. Es mucho suponer, pero independientemente de eso ¡es también muy geek! :-)
Idea: Si además de hacer la conexión al inicio la programamos cada hora (con el crontab o el programador de tareas), obtendremos una gráfica del número de horas aproximado que usamos el ordenador al cabo del día, que seguro que son demasiadas. Válido también para ordenadores fijos.
domingo, mayo 06, 2007
Seguimiento del portátil por Internet
viernes, abril 20, 2007
Mi nueva máquina infernal
Hace unos días que me compré un portátil para sustituir a mi equipo de sobremesa y sobre todo porque necesitaba movilidad; poder llevarlo y traerlo al pueblo para seguir echando algunas horas los fines de semana en cierta tarea a la que me dedico fuera del trabajo.
El modelo que me gustó fue finalmente un Toshiba Satellite A100-999, que cumplía más o menos las condiciones que me había puesto, que pueden resumirse en las famosas tres bes: Bueno (de marca), Bonito (en cuanto a prestaciones) y Barato (o no muy caro, alrededor de 1000€). Lo que más me atraía era que viene con 2Gb de RAM, que el Intel Core 2 Duo es de la serie T5500 (con 2Mb de caché), y que la tarjeta gráfica es NVIDIA, que siempre me ha parecido que tienen mejor soporte en Linux que las ATI o las Intel.
El sistema operativo que traía era el Windows Vista Home Premium. No es que me hiciera mucha gracia, pero hay que asumirlo como casi inevitable. Lo estuve probando durante unas horas, pero el programa que necesito utilizar sobre Windows para el trabajo que estoy haciendo no funcionaba, así que termine instalándole el XP Professional. El proceso fue más costoso de lo esperado por los drivers. En la página oficial de Toshiba solo están los de Vista, y tuve que buscarlos en la web de uno en uno, hasta que todo funcionaba como debería.
Por supuesto, también le he instalado Linux, que es lo que uso habitualmente y desde el que estoy escribiendo esto. La distribución que le he puesto es la última versión de Ubuntu, la 7.04 Feisty Fawn (concretamente Kubuntu, soy KDEero). En realidad cuando la instalé estaba en versión beta, y ayer mismo se liberó oficialmente la versión definitiva. El proceso en general fue bien, arranqué con el CD, inicié la instalación y a los pocos minutos lo tenía funcionando. Solo tuve que retocarle la configuración de las X-Windows, porque la resolución de la pantalla era la de 1024x768 en lugar de la nativa 1280x800. Lo que no funciona es el Bluetooth y la suspensión a disco, aunque esta última no me he puesto a mirarla mucho. El módem no lo he probado, pero supongo que tampoco irá porque es un winmodem, pero tampoco me preocupa. El resto del hardware funciona sin problemas y a la primera, sin hacer nada extraño: el sonido, la tarjeta de red, la wifi, el lector de tarjetas SD/MMC, e incluso los botones multimedia con el reproductor Amarok.
En resumen, de momento estoy muy contento con él, a pesar del par de detalles que no le funcionan todavía.
Editado: He comprimido todos los drivers en un fichero .RAR (ocupa 100 Mb) y lo he colgado en mi MLDonkey. El e-link es:
Toshiba-A100-999_XP-drivers.rar
(no se qué tal irá, en otras ocasiones que he colgado algo a la gente que lo ponía a bajar no le conectaba...)
Editado 2: Parece ser que este equipo es el sucesor de otro modelo anterior, el A100-497, que tiene el hardware muy similar. En la web de descargas de Toshiba para ese modelo sí que hay drivers para Windows XP, que posiblemente funcionen también en el A100-999 (no los he probado).
Editado 3 (22-05-2007): Finalmente Toshiba ha sacado drivers para Windows XP. En la página oficial de descarga están todos, con fecha de mayo de 2007. Cuando escribí este post en abril os juro que solo estaba el del sonido!!!
lunes, octubre 02, 2006
La aberración suprema
Esta mañana que la he tenido tranquila en el trabajo me he dedicado a probar IEs4Linux, cuyo nombre es justamente lo que parece, el Internet Explorer funcionando en Linux.
Gracias a Wine se pueden hacer correr programas de Windows en plataforma Linux sin cambiar el código ni recompilarlo; y ni siquiera es necesario tener instalado el sistema de Microsoft. El problema es que no todos funcionan, y para lograrlo con algunos hay que sudar tinta para configurar adecuadamente el Wine, mientras que para otros simplemente no se puede. Yo hace un tiempo lo estuve intentando precisamente con el IE, pero aunque lo conseguí hacer arrancar no funcionaba como yo necesitaba.
Pues bien, para este programa concreto (IE) ese problema se soluciona con la ayuda de IEs4Linux. Se trata de un script que tras lanzarlo nos hace unas pocas preguntas sencillas: Qué versión de IE quiero usar (la 5, 5.5, o 6.0, o todas ellas), si quiero que me instale también el plugin del Flash, y dónde lo quiero instalar. A continuación él solito se descarga el Explorer de la web de Microsoft (recuérdese que es gratuito, aunque no libre) y tras ello lo descomprime, lo instala, y configura automáticamente el Wine de la forma necesaria para que funcione. Finalmente, crea un acceso directo en el escritorio, y listo, ya se puede usar, y funciona.
Lo primero que he hecho ha sido probar este mi humilde blog con el nuevo engendro, en concreto el vídeo de Youtube que puse en mi entrada anterior, y se ha visto y oído a la perfección.
Después me ha asaltado una duda. ¿Cómo aparecerá en las estadísticas de las páginas web? ¿Como Internet Explorer corriendo sobre Linux? He entrado en Show my IP, que entre otras cosas muestra el navegador y sistema con el que estás navegando, y no, no salía eso, me detectaba como Win32 en lugar de Linux :-)
Y... ¿para qué puede servir tener al IE en Linux, teniendo como tenemos otros navegadores mejores (Firefox, Opera, SeaMonkey, etc). Pues básicamente para dos cosas:
- Para probar cómo se ve esa página que estas desarrollando en todos los navegadores.
- Para entrar en páginas diseñadas para IE que no cumplen los estándares del W3C. Concretamente a mi me viene estupendamente porque la intranet que tenemos en mi empresa está programada de esa forma, y hasta ahora si quería hacer compras, pedir vacaciones, o rellenar partes de trabajo tenía que hacerlo conectándome por terminal server a otro equipo o reiniciando el mio con Windows. A partir de ahora, ya no.
Publicado por
OS_C
en
17:06
0
comentarios
Etiquetas: Internet Explorer, Linux, Software
viernes, septiembre 15, 2006
¡Mi primer vídeo!
El otro día por la tarde me dió por hacer un vídeo y subirlo a Youtube, la primera vez que hago las dos cosas :-)
Es la demo de introducción de un juego del antiguo sistema MSX, con el que me inicié en esto de la informática hace ya unos cuantos añitos. Se llamaba Psycho World, empezaba tal que así:
El juego en era bastante divertido, el clásico de plataformas, con unos gráficos sencillos pero muy resultones, en otra tarde tonta intentaré hacer otro vídeo de una partida del mismo.
El proceso para crearlo fué un tanto laborioso, y para ello usé las siguientes herramientas, todas sobre Linux, of course.
- La demó la ejecuté en el emulador openMSX. Dispone de una opción para grabar el sonido de lo que emula en un fichero wav, mediante la orden
- Para capturar la imagen en movimiento utilicé un programa bastante simple y antiguo llamado Xvidcap. Permite seleccionar un recuadro de la imagen de la pantalla y grabar en un fichero MPEG un vídeo de lo que ocurre en ella.
- Ya tengo el vídeo y el audio por separado, ahora hay que recortarlos un poco y unirlos. Para ello uso Avidemux, pero tiene un problema, y es que no deja editar vídeos si no son AVI, y el que yo tengo es MPEG.
- Lo convierto a ese formato con otro programa más, Mencoder, que viene con Mplayer, un gran reproductor de vídeo para Linux que se traga prácticamente todo lo que le eches.
- Una vez convertido a AVI, lo abro con Avidemux, le digo que le ponga el audio de un fichero externo, y me dedico a cortar por aquí, poner desfases por allá, para que lo que se ve y se oye esté lo más sincronizado posible.
El resultado es bastante decente, más que nada porque el sonido y la imagen no están fuertemente relacionados. El problema que me encontré fue que en el vídeo faltan frames, porque mi ordenador no da de sí lo suficiente para correr el emulador y comprimir MPEG2 en tiempo real. Tendré que probar alguna optimización, como reducir el tamaño de la ventana del emulador, o capturar en imágenes fijas y luego generar el vídeo en lugar de comprimirlo al mismo tiempo.
Por cierto, resulta curioso que en trasto que corre a 2400 Mhz necesite más o menos un 30% - 40% de CPU para emular un cacharro que iba a 3,5 Mhz :-)
lunes, septiembre 04, 2006
Backup al apagar el ordenador
Mi amigo Ocularis recientemente se ha hecho ubuntero y un día hablando me preguntó si era posible hacerse una copia de seguridad de su directorio home cada vez que apagase el ordenador. La respuésta es que sí, de forma bastante sencilla. Como no es la primera persona que me pregunta eso (de hecho es la segunda :-) lo voy a explicar porque puede ser de interés para quienes caigan por aquí googleando.
Directo al grano
Lo primero que hay que hacer es programarse un pequeño script que sea el que haga la copia de seguridad en sí mismo. Se puede crear con tu editor de texto favorito (vi, emacs, nano, pico...). Por ejemplo, algo como esto:
#!/bin/sh
DIR_ORIGEN=/home/pepito
DIR_DESTINO=/mnt/disco_externo/copia_seguridad
echo "******************************"
echo "Haciendo copia de seguridad..."
echo "******************************"
cp -Ru $DIR_ORIGEN $DIR_DESTINO
Que lo que hace es copiar (comando cp) el directorio DIR_ORIGEN (/home/pepito) y todos sus subdirectorios (opción -R) en el directorio DIR_DESTINO (/mnt/disco_externo/copia_seguridad). La otra opción de cp, la -u es de update, y lo que hace es que si ya existen en el destino los ficheros, solo los copia (sobrescribiéndolos) si el fichero de origen es más reciente. De esta forma, la primera vez que hagamos la copia le costará un rato, pero en las veces sucesivas solo se copiarán los ficheros que hayamos modificado y será más rápida. La primer línea (#!/bin/sh) sirve para indicar qué interprete de comandos ha de usarse para ejecutar el script. Si no entiendes que significa esto, no pasa nada, quédate con que es la forma habitual correcta de comenzar un script.
Ya tenemos el script, que supongamos que hemos llamado backup.sh. No olvidéis darle permisos de ejecución para que no haya problemas: chmod +x backup.sh
Ahora vamos a hacer que se ejecute cuando apaguemos el ordenador. Para ello nos situaremos en el directorio /etc/rc0.d Una vez ahí escribiremos lo siguiente:
sudo ln -s /home/pepito/backup.sh K10mi_backup
Si listamos el contenido del directorio veremos que aparece una línea:
lrwxrwxrwx 1 root root 18 mar 21 2005 K10mi_backup -> /home/pepito/backup.sh
Lo que hemos hecho es un link, que es una forma de nombrar un fichero cualquiera (/home/pepito/backup.sh) con otro nombre diferente (K10mi_backup). Y además, por haberlo puesto en ese directorio, se ejecutará cuando apaguemos el ordenador.
Pues ya está, sencillo ¿verdad?
Mejoras (para nota):
- Comprimir lo que se va a copiar (Pista: tar cvfz... ).
- Guardar varias copias de fechas distintas.
- Informar al usuario en el siguiente arranque del resultado de la copia (por ejemplo con un mail).
- Lo anterior solo funciona al apagar el ordenador, pero no al reiniciarlo. ¿Cómo hacer que también se ejecute en ese caso? (pista: leer el siguiente apartado y saber que el nivel 0 es el de apagado y el 6 el de reinicio)
La explicación
Se me han ido las ganas de escribir, ja ja, pero en este link tenéis una explicación muy completa de cómo funciona el arranque y parada de un sistema Linux. Lo anterior se aplica a casi todas las distribuciones de Linux con pequeñas variaciones, y a otros sistemas Unix como Solaris o HP-UX. En cambio, en otras familias (AIX, FreeBSD y derivados) la cosa funciona de otra manera.
Editado: En la explicación del link anterior hay un pequeño error, que un anónimo usuario de ubuntu ha descubierto y comentado.
Publicado por
OS_C
en
21:02
5
comentarios
jueves, julio 13, 2006
Jubilación de un servidor
Con "un servidor" no me refiero a mí mismo, todavía me quedan unos cuantos años de cotización antes de que me pueda retirar :-)
Me refiero a un equipo que venía dando a mi empresa los servicios de DNS externo y FTP desde el año 2001. Es un Dell PowerEdge 350, que lleva de CPU un Celeron de Pentium III a 700 Mhz, con 128 Mb de RAM y disco duro IDE de 9 Gb. Comparado con lo que se lleva hoy día es bastante cutre de características, pero para la tarea que tenía encomendada es más que suficiente.
Tiene un especial valor sentimental para mi porque es el primero que se adquirió para la empresa en formato enrackable (horizontal, en lugar de torre) y también el primer servidor de producción al que le instalé Linux. Como iba a estar expuesto al hostil mundo exterior elegimos una distribución centrada en la seguridad, que fue la Engarde 1.0. Se instalaba de forma muy sencilla desde un CD y desde un interface web se configuraba en cuestión de minutos, con la certeza de que no se iban a ejecutar más servicios que los estrictamente necesarios. Lo que no resultaba tan sencillo eran las actualizaciones de seguridad, había que hacerlas a mano, es decir, bajándose del FTP del fabricante los paquetes actualizados e instalándolos desde línea de comandos. Entonces no existía el apt-get ni el yum, que hoy día son imprescindibles, aunque las siguiente versión que sacaron ya llevaba algo parecido.
Durante todo este tiempo ha estado funcionando prácticamente de forma continuada. Un buen día descubrí un programita llamado uptimed que mantiene una lista de los tiempos de funcionamiento de un equipo, y se lo instalé. Ejecutando el comando uprecords podemos ver el top-ten de días seguidos de servicio (uptime). En el caso que nos ocupa el resultado es el de la imagen (click para agrandar):
No está mal... 334 días :-) El único problema que ha tenido es que hace un par de años se le averió la fuente de alimentación. Llamamos al servicio técnico, pero estaba ya fuera de garantía y por una fuente como la que tenía nos pedían ¡900 euros!, por ese precio casi podíamos comprarnos un servidor nuevo de gama baja bajísima, pero suficiente. Al final lo que hicimos fue ponerle una fuente de PC normal y corriente, pero no cabía en la carcasa porque la original era fina y alargada, y la de un PC no es así precisamente. Lo que hicimos fue sacar el servidor del rack, quitarle la tapa, colocarle la fuente, y ponerlo encima de otro servidor ancho de formato torre, con la fuente sobresaliendo por encima como una joroba. Era un montaje muy cutre, pero iba a ser provisional mientras decidíamos qué hacer, si comprar otra máquina, buscar otra fuente parecida a la original, o traspasar los servicios a algún otro servidor activo.Al final me he decantado por la última opción, y ahora ya puedo deshacer el montaje, que como era provisional solo ha estado así durante dos años :-)
Publicado por
OS_C
en
00:43
0
comentarios
lunes, marzo 27, 2006
Horario de verano
Autoapunte de cultura general:
Este fin de semana ha cambiado la hora al horario de verano, se supone que para ahorrar energía y bla bla bla.
Los servidores son muy listos y saben cambiársela ellos solitos. Cuando la miras con el comando date sale algo así con el horario normal:
vie mar 24 16:51:45 CET 2006
CET = Central Europe Time
En cambio, si la miro hoy, con el nuevo horario sale así:
lun mar 27 16:51:45 CEST 2006
CEST = Central Europe Summer Time
Otra cuestión es por qué en España tenemos la hora del centro de Europa, que es GMT+1, o sea, una hora más que la de Greenwich. Precisamente, el meridiano de Greenwich pasa por Castellón, y la ciudad de Zaragoza está más o menos a solo 1 grado de longitud oeste y 42 grados de latitud norte. Y curiosamente, Portugal y las Islas Canarias, sí que tienen la hora de Greenwich, y estas últimas sí que caen bastante lejos del dichosos meridiano.
La razón será seguramente política. Y como siempre que la política está de por medio, ya podemos olvidarnos de la lógica y el raciocinio :-)
Publicado por
OS_C
en
16:51
1 comentarios
Etiquetas: Curiosidades, Linux
martes, enero 17, 2006
Usa la fuerza Luke
Acabo de tostar un DVD en mi ordenador utilizando K3b. La grabación ha terminado bien, y he sido debidamente informado de ello mediante una ventana, que me daba la opción de cerrarla, o mostrar los mensajes de depurado. Le he dado a esta última, porque tenía curiosidad de ver cómo es la salida de algo que funciona bien (normalmente se mira cuando todo va mal).
Había mensajes del dispositivo de grabación detectado, algunas opciones, el progreso de la grabación y el tiempo estimado para que terminara. Al final, había otro comando con un montón de parámetros, entre los que había varios que se llamaban: -use-the-force-luke
El comando en cuestión era growisofs, así que he consultado la página del manual para ver cuál es exactamente la función de ese parámetro:
There're several undocumented options commonly denoted with -use-the-force-luke prefix. (...) Rationale behind leaving these options undocumented is that those few users who would actually need to use them directly can as well consult the source code or obtain specific instructions elsewhere.
Pues eso, que sirve para utilizar funciones no documentadas y que si quieres saber para que son, que te mires el código fuente :-)
Publicado por
OS_C
en
19:56
0
comentarios
Etiquetas: Curiosidades, Linux, Software
martes, enero 10, 2006
Curiosidad: El segundo fantasma
Seguro que todos habréis oido en los medios de comunicación que el 2005 fue un segundo más largo que el año anterior, y así el último minuto del año tuvo 61 en lugar de 60.
En un servidor he visto este mensaje en el log del sistema:
Jan 1 00:59:59 hermes1 kernel: Clock: inserting leap second 23:59:60 UTC
Curioso ¿verdad?
Publicado por
OS_C
en
12:19
0
comentarios
Etiquetas: Curiosidades, Linux
martes, noviembre 15, 2005
Instalación friki
Hoy he instalado probablemente el servidor más 'peculiar' con el que me he topado nunca. Y eso que no es de ninguna arquitectura extraña, es un corriente y moliente Celeron a 900 Mhz con 256 Mb de RAM y 4 discos de 40 Gb.
Entonces, ¿qué tiene de raro? Pues es justo lo que no tiene: No tiene entrada para teclado, ni ratón, ni disquetera, ni CD-ROM, ni USB. La única forma de comunicarse con él es a través de un puerto serie y por la red.
Para instalarlo tienes dos opciones:
Opción 1) (Re)Instalarle el Windows que traía (una versión especial 'capada' del 2000) con un CD que suministraba el fabricante cuando se compró. Pero resulta que ese CD ha desaparecido, y que el modelo está descatalogado y no es fácil conseguir el susodicho disco.
Opción 2) Arrancar por la red un Linux, e instalarlo de la forma habitual (o casi).
Lo que yo he hecho ha sido la opción 2. Se conoce como PXE, y consta de cuatro elementos:
- Un servidor DHCP, que da direcciónes IP de forma dinámica, configurado con un par de parámetros especiales.
- Un servidor TFTP, que sirve para compartir ficheros por la red de forma muy sencilla.
- El binario ejecutable del PXE, que viene con muchas versiones de Linux.
- Lo más importante, que la BIOS del equipo permita arrancar desde la red.
Una vez montado todo lo anterior, se enciende el equipo, coge una IP, descarga el fichero del servidor, y a partir de ahí se procede a instalar el sistema. Y ¿cómo veo lo que estoy instalando si no tiene pantalla? Por el puerto serie con un cable idem, conectándote desde otro ordenador con el Hyperterminal (Windows) o con el Minicom (Linux). Casi cualquier distribución se puede instalar en modo consola, y no plantea ningún problema a parte de lo feo que pueda resultar. ¿Y cómo instalo el sistema operativo si tampoco tiene CD-ROM? Pues de nuevo Linux lo permite, una vez has arrancado y configurado la tarjeta de red, puedes indicarle que se descargue de un FTP todos los ficheros que necesite.
El sistema que le he metido es CentOS, que es una versión del RedHat Enterprise Server más libre.
¿Pero el RedHat no es libre, por ser un Linux?
Pues sí, la GPL les obliga a publicar el código fuente de todo su software, y lo cumplen a rajatabla. El inconveniente es que instalar todo a partir de los fuentes es bastante incómodo. Luego además, para mantener el software actualizado de forma 'cómoda' tienes que pagar una suscripción que no es barata precisamente. Así que para sortear estos inconvenientes, la gente de CentOS coge los paquetes públicados por RedHat, los compila, y los pone a disposición de todo el mundo en varios repositorios. Es una muy buena idea.
Para el que tenga curiosidad, el equipo en cuestión es un Dell PowerVault 715, que en sus tiempos lo vendían como un NAS (network-attached storage), que dicho asi rápidamente no es más que un montón de espacio de disco al que se puede acceder por la red, sin que el equipo en el que reside de ningún otro servicio más.
miércoles, octubre 05, 2005
El tonto
Eso es lo que hice ayer, el tonto, con el servidor del que vengo hablando desde hace unos cuantos posts.
La idea era esta: Reinstalarlo con una versión anterior del Redhat, que lleva mucho más tiempo en el mercado y (en teoría) es más estable que la que tenía puesta. Como el sistema de archivos que tiene es ext3, estandar a más no poder, no hace falta formatear la partición de datos ni hacer copia de seguridad. Todo muy lógico, ¿no? Pues no:
Los CDs
Tengo sin abrir la caja con los CDs de Redhat que venían con el equipo al comprarlo. Está sin abrir, porque era la versión 3 y yo ya había instalado la 4 en una estación de trabajo que funciona a las mil maravillas, y por eso decidí ponerla también en el servidor.
Abro la caja, saco el primer CD y veo que pone: Redhat Enterprise AS 3 for x86. ¿x86? ¿y eso es 32, 64 bits, o las dos cosas?. Busco en la web y resulta que 'x86' es de 32 bits, y para 64 bits hay 'for Intel Itanium' y 'for AMD64/Intel EM64T'. El que yo quiero poner es este último, por lo que los CDs que tenía no me sirven, así que tengo que ir a la página de Red Hat Network y bajarme las 4 ISOs.
Un largo rato después, cuando ya las tengo, me dispongo a tostarlas. Tras varios intentos y tres CDs en la basura, llego a la conclusión de que mi grabadora está averiada, los lée bien pero cuando intentas grabarlos hace ruiditos extraños y al final escupe el CD con unas rayas muy raras en su superficie y un error del software de grabación. Cojonudo.
Consigo otra grabadora, externa, y al fin tengo las ISOs en un soporte físico.
La reinstalación
Arranco con el primer CD y va todo bien. El proceso de instalación es realmente sencillo. Al llegar al particionado, le digo que las deje como está, sin formatear, y que escriba encima, tanto en las de datos como en las de sistema. No pone ninguna objeción, elijo los paquetes, y en unos minutos comienza a copiarlos y me va pidiendo los CDs uno detrás de otro.
Cuando termina, saco el último CD y reinicio. Aparece el Grub con el logotipo de Red Hat y la versión del kernel que va a arrancar. Bien, tiene buena pinta, le doy a Enter para que arranque sin esperar los 10 segundos. Comienzan a aparecer los mensajes en la consola y.... ¡tachán! se detiene la carga con un error que dice algo parecido a:
- El sistema ext3 que estás intentando arrancar tiene extensiones que no soy capaz de leer, y además la versión de fsck que tengo es demasiado vieja también. Jodete y baila
Aaaagh, tanto trabajo para nada. pero... ¿seguirán ahí los datos de los que no había hecho copia de seguridad?
Knoppix al rescate
Busco rápidamente un CD de knoppix para arrancar y ver si las particiones originales siguen ahí. Lo pongo, y lo inicio con knoppix 2 acpi=off noapic para que arranque en modo consola y pase de lo que le diga la BIOS, porque si no no se queda frito en la primera pantalla.
Hago un fdisk -l y veo que las particiones siguen ahí. Monto en un directorio temporal la que tenía los datos y... ufff, ahí siguen, menos mal. Como ya se había pasado más de media tarde y no me daba tiempo de hacer nada más, configuro manualmente la red y paso todos los datos de la partición a otro servidor, con el programa rsync. Como son unos 74 gigas, lo dejo ahí para que lo haga por la noche.
El descubrimiento
Antes de irme para casa miro en los foros de Dell a ver si hay alguien al que le pase lo mismo que a mi. No encuentro nada, pero me entero de que hay una actualización de la versión 4 del Red Hat, así que entro de nuevo en la página de antes y pongo a bajarme de nuevo las 5 ISOs del Red Hat Enterprise Linux AS 4 Update 1 (AMD64/Intel EM64T), por si acaso.
Por hacer algo más, salgo de los foros y entro en la zona de descargas de la web de Dell, a ver si hay algo nuevo. Y sí, lo hay, nada menos que una versión nueva de BIOS del 29 de septiembre (hace menos de una semana). Probablemente entré a esa misma sección hace una semana y un día, y por eso no la vi. Miro los fallos que arregla, y me encuentro estas líneas:
* Added workaround for lockup resulting from the systems with 8GB RAM or more and RAID storage controller potentially claiming inappropriate addresses.
Justo lo que nos pasa a nosotros. Me la bajo, y la instalo en el otro servidor gemelo que tenemos, al que todavía no he metido mano. Para que tome efecto hay que reiniciarlo, así que lo programo para que lo haga a la mañana siguiente, y me voy a casa.
La rerreinstalación
Hoy por la mañana retomo el tema. El servidor gemelo arranca sin novedad con la nueva versión de la BIOS sin que haya nada más que mencionar. Los datos del servidor problemático se han copiado a otro sitio bien, por lo que respiro tranquilo, podría formatear todo el disco si fuera necesario sin que luego me colgaran por cierta dolorosa parte del cuerpo. Pero parece que el problema no es del sistema operativo, sino de la máquina en sí misma.
Había dejado también por la noche bajándose las ISOs del Red Hat 4 Update 1, así que las tuesto en CDs y vuelvo a hacer la instalación.
Tras arrancar, detecta que está la versión 3 y me da la opción de actualizarla. Le digo que sí, y cuando me pide el segundo CD, se queda colgado. Compruebo que el CD está bien grabado con las sumas MD5, y vuelvo a intentarlo. Lo mismo. Al final, le digo que pase de actualizar nada, que haga una instalación nueva.
Vuelvo a decirle que conserve las particiones, que le ponga tal dirección IP y que meta estos paquetes sí y estos otros no. Sigue la instalación sin ningún problema más, y reinicio. Todo va bien, arranca y ¡sorpresa! pero esta vez buena, a parte de que los datos siguen ahí, todo lo demás que tenía antes configurado (usuarios, aplicaciones, permisos) sigue estando también intacto, así que me ahorro ese trabajo que pensaba que tendría que hacer.
¿Fin?
Cuando he terminado he avisado a los usuarios de que ya podían entrar, y de momento no se ha vuelto a caer. Si hubiera descubierto la actualización de BIOS ayer por la mañana, simplemente la habría instalado a ver que pasa, pero no hubiese montado el show del donwgrade a la versión 3 y luego la vuelta a la 4, con todo el tráfico de CDs y juramentos de por medio
Mientras escribía este post he entrado en la página de Red Hat Network para ver cuál era el nombre exacto de la versión del sistema operativo, y he descubierto que ha salido la Update 2. Juraría que ayer no estaba, pero con lo desquiciado que estaba a lo mejor sí que estaba y no lo ví.
Da igual, espero no tener que bajármelo otra vez...
Publicado por
OS_C
en
19:56
2
comentarios
Etiquetas: Desfaciendo entuertos, Linux, Software
sábado, octubre 01, 2005
Recaídas
Ya lo decía yo... que no era normal que la semana empezara tan bien.
Dos días después del "accidente" con los discos de sistema del servidor, volvieron los problemas. Lo primero fue la llamada de una usuaria. Estaba conectada a la susodicha máquina y no podía ejecutar comandos, incluso cuando intentaba hacer un ls le salían errores.
Me conecto por ssh, pero es imposible, me cierra la conexión. Lo intento por telnet y consigo entrar, aunque me salen errores del .bashrc, y cualquier comando que intento lanzar finaliza con un 'I/O error'.
Bajo al CPD donde está la máquina (es en un sótano) y en la consola aparecen un montón de errores muy muy feos que vienen a decir algo así como que no se ha podido recuperar el registro de transacciónes ext3 del dispositivo /dev/sda1 (la partición /).
Así que hago un ctrl + alt + supr (sí, en Linux también se puede reiniciar así, aunque solo en la consola del sistema) pero entonces me dice que no puede ejecutar el comando /sbin/shutdown por un error de I/O. Así, que finalmente tengo que apagarlo del interruptor.
Después de que arranca, parece que lo hace bien. Asciendo otra vez desde el inframundo hacia la luz y aviso a los usuarios de que la máquina ya funciona de nuevo. Craso error, no pasan ni dos minutos y se vuelve a caer. Vuelvo al inframundo, y los mismos mensajes en la consola.
Vuelvo a resetearlo y arranco en modo monousuario. Hago un fsck a todos los sistemas de archivos. Y además hago también un 'touch /forcefsck' para que cuando arranque de nuevo se chequéen otra vez todos los sistemas de archivos, aunque estén marcados como correctos.
Después de eso, reinicio la máquina, y el resto de la semana ha funcionado bien.
Pero la cosa no acaba ahí. Este servidor tiene otro gemelo, mismo modelo, características y sistema que se compró a la vez. También tuvo algunas caidas al principio, pero después de actualizar el kernel, el driver del ext3 y el firmware de la controladora RAID parecía que se había estabilizado. Vana ilusión, durante toda la jornada del viernes se cayó nada menos que tres veces. En este no salían mensajes feos del ext3, simplemente un kernel panic.
Parece que la combinación de hardware_muy_nuevo + sistema_muy_nuevo es anormalmente inestable. Creo que le haré un downgrade del sistema, e instalaré la versión 3 del RedHat en lugar de la 4, que por lo menos esa lleva ya muchos meses en el mercado y es de suponer que estará más madura que la última.
Publicado por
OS_C
en
12:15
0
comentarios
Etiquetas: Desfaciendo entuertos, Hardware, Linux
martes, septiembre 27, 2005
Lunes bendito
Normalmente los lunes no tienen nada de bendito, habría que prohibirlos, pero hoy ha sido eso precisamente, y así tendrían que ser siempre.
Nos habíamos quedado con un servidor que no arrancaba y que tenía mu mala pinta. El viernes dejé corriendo unos diagnósticos sobre uno de los discos y esta mañana he ido a ver el resultado. Estaba bien, así que lanzo de nuevo el test para el otro disco, y lo dejo corriendo.
Al cabo de un par de horas vuelvo y ya había terminado, también correctamente. Mando un fichero de log con los resultados al soporte técnico y al cabo de un rato me responden. Dicen que parece que físicamente los discos están bien, que el fallo puede ser del sistema de archivos, que por alguna razón se ha corrompido. Sugieren que intente arrancar con el otro disco y recupere todos los datos que pueda para a continuación volver a crear el RAID 1 y reinstalar.
Hago eso. Extraigo el disco con el que arranqué el viernes y dejo solamente pinchado el otro. Entro en la BIOS de la tarjeta RAID para ponerlo online y reinicio. Vuelve a salir el Grub y comienza a cargarse el RedHat. Igual que el otro día hace un fsck a los sistemas de archivos y... sorpresa, cuando llega a la parte donde se inician los servicios empiezan a arrancar correctamente uno detrás de otro, poniendo en todos un bonito [ Ok ].
No me lo puedo creer, miro el log del sistema en busca de fallos o errores y nada, está todo perfecto. Para asegurarme, paro y reinicio el servidor un par de veces más, y todas ellas arranca bien. Después pincho el disco que había dejado desconectado y al hacerlo los leds comienzan a parpadear frenéticamente y lo que es más importante, pasan del color ambar al verde. Significa que se está reconstruyendo el mirror y que he salvado el día. Paso un mensaje a los usuarios y comienzan a trabajar en él, sin que haya pasado nada más el resto de la mañana.
Un par de horas después de pasada la crisis me llega por paquetería un switch para sustituir a uno de los que petaron con el SAI la semana pasada. Al final hice lo que recomendaba cada persona a la que le conté el caso, que era llamar por uno de ellos a la empresa con la que tenemos contratado el mantenimiento haciéndome el tonto, para que me lo sustituyeran.
Lo he sacado del paquete y he comprobado que el modelo era exactamente igual al que cascó. No se, yo me esperaba que después de cinco años en el mercado lo hubieran cambiado un poco por fuera, o que el número de modelo fuese algo distinto, pero no, era idéntico al anterior.
Tengo guardadas a buen recaudo las configuraciones de todos los switches, así que ha sido cuestión de minutos cargársela de nuevo y ver que arrancaba bien. He avisado a los usuarios para que supieran que probablemente se quedarían sin red esa misma tarde, y lo he colocado en el armario, quitando el cutre hub que había colocado como emergencia para salir del paso.
A ver como sigue la semana, porque esto de que empiece tan bien no puede ser normal.
Publicado por
OS_C
en
00:06
5
comentarios
Etiquetas: Desfaciendo entuertos, Hardware, Linux
viernes, septiembre 23, 2005
Para empezar bien el fin de semana...
Es viernes, faltan un par de horas para terminar la jornada y empezar el fin de semana. Alrededor de las 13:00 me avisan de que uno de los servidores de aplicaciones de cálculo no responde. Me dirijo al CPD y allí está, con un bonito kernel panic en la pantalla.
Bueno, hasta cierto punto es casi normal, no es el primero que hace. Se trata de un servidor Dell PowerEdge 6850, con 8 gigas de RAM, y 4 CPUs. Lleva dos discos de 36 Gb en mirror para el sistema y tres más de 146 Gb en Raid 5 para los datos. Como sistema operativo lleva RedHat AS 4. Tiene menos de 3 meses, y en todo este tiempo se ha caído ocho o nueve veces. Parece que por problemas con la controladora RAID y/o drivers. Tanto la máquina como el sistema son bastante nuevos, los sacaron más o menos a principios de junio, y hasta que los fabricantes del hardware y el software no saquen un par de actualizaciones de BIOS y controladores, es posible que no sea todo lo estable que debería.
A lo que iba. Tras ver el mensaje hago como otras veces, le doy al botón de encendido y lo reinicio. Comienzan a salir los mensajes de la pantalla de arranque y, ¡horror!, sale un error cuando llega a la tarjeta RAID, y además los leds de los discos del sistemas pasan de estar de color verde al ambar (y porque no podrán ponerse rojo, que si no...). Mal rollo, los dos discos del sistema petados, ¡los dos! se ponen en espejo precisamente para que si casca uno pueda seguir funcionando el otro, pero van y (en apariencia) petan los dos a la vez.
Llamo al servicio técnico y en seguida me pasan con un ídem. Ma va indicando lo que hacer. Primero saco uno de los discos dañados dejando el otro y entro en la BIOS de la tarjeta RAID para activar el que queda. Luego intento arrancar, y al principio parece que sí, que arranca, sale la pantalla del Grub y comienza a cargar el kernel. Hace un fsck de las particiones y parece que las pasa, pero luego cuando va a iniciar los servicios, empiezan a fallar todos.
Lo siguiente es pasar diagnósticos a los discos. Me bajo de la web de Dell un fichero que genera dos disquetes y arranco de uno de ellos y pongo a diagnosticar el primer disco. Entre llamadas de teléfono, mensajes de correo a los usuarios, y arranques, ya se han hecho las 15:00, hora de irse.
Como nadie se ha quejado mucho y en mi empresa lo de las horas extras es un poco peculiar, dejo haciéndose el diagnóstico y me voy a casa. Si fuera un sistema crítico y fuese a haber gente usándolo el fin de semana me pensaría lo de quedarme para arreglarlo. Pero como no se da ninguna de las dos condiciones anteriores y ademàs ya tengo planes para la tarde, pues así se queda.
Seguirá el lunes.
Publicado por
OS_C
en
09:16
1 comentarios
Etiquetas: Desfaciendo entuertos, Hardware, Linux

