Mostrando entradas con la etiqueta linux. Mostrar todas las entradas
Mostrando entradas con la etiqueta linux. Mostrar todas las entradas

miércoles, 16 de junio de 2010

Solucion a sectores dañados en linux. EXT2 y EXT3

Sintomas

El sistema se cuelga en tareas estupidas como reproducir una pelicula, instalar paquetes, configurar cosas, abrir determinados archivos para despues de un tiempo de estar "colgado" anunciar que hasta la tarea mas simple fallo por un "I/O error".

Hace falta confirmarlo tambien con los logs, la informacion necesaria aparece en el syslog (en /var/log/syslog ), se encontraran lineas similares a estas:


Jun 16 16:17:56 ubuntu kernel: [ 6193.840250] Buffer I/O error on device sda1, logical block 155153547
Jun 16 16:17:56 ubuntu kernel: [ 6193.840254] Buffer I/O error on device sda1, logical block 155153548
Jun 16 16:17:56 ubuntu kernel: [ 6193.840258] Buffer I/O error on device sda1, logical block 155153549


O tambien de estas:

Jun 15 20:16:01 ubuntu kernel: [ 25.636424] ata1.00: status: { DRDY ERR }
Jun 15 20:16:01 ubuntu kernel: [ 25.640935] ata1.00: configured for UDMA/133
Jun 15 20:16:01 ubuntu kernel: [ 25.640951] ata1: EH complete
Jun 15 20:16:01 ubuntu kernel: [ 29.172011] ata1.00: exception Emask 0x0 SAct 0x7fff SErr 0x0 action 0x0
Jun 15 20:16:01 ubuntu kernel: [ 29.172013] ata1.00: irq_stat 0x40000008
Jun 15 20:16:01 ubuntu kernel: [ 29.172016] ata1.00: failed command: READ FPDMA QUEUED
Jun 15 20:16:01 ubuntu kernel: [ 29.172022] ata1.00: cmd 60/08:28:a7:74:3f/00:00:09:00:00/40 tag 5 ncq 4096 in
Jun 15 20:16:01 ubuntu kernel: [ 29.172025] ata1.00: status: { DRDY ERR }
Jun 15 20:16:01 ubuntu kernel: [ 29.176722] ata1.00: configured for UDMA/133
Jun 15 20:16:01 ubuntu kernel: [ 29.176740] ata1: EH complete
Jun 15 20:16:01 ubuntu kernel: [ 32.440790] ata1.00: exception Emask 0x0 SAct 0x7fab SErr 0x0 action 0x0
Jun 15 20:16:01 ubuntu kernel: [ 32.440792] ata1.00: irq_stat 0x40000008
Jun 15 20:16:01 ubuntu kernel: [ 32.440795] ata1.00: failed command: READ FPDMA QUEUED
Jun 15 20:16:01 ubuntu kernel: [ 32.440801] ata1.00: cmd 60/08:48:a7:74:3f/00:00:09:00:00/40 tag 9 ncq 4096 in
Jun 15 20:16:01 ubuntu kernel: [ 32.440805] ata1.00: status: { DRDY ERR }
Jun 15 20:16:01 ubuntu kernel: [ 32.440807] ata1.00: error: { UNC }
Jun 15 20:16:01 ubuntu kernel: [ 32.445770] ata1.00: configured for UDMA/133
Jun 15 20:16:01 ubuntu kernel: [ 32.445785] ata1: EH complete


Solucion

Si algunos sectores del disco estan dañados sera inevitable que se pierda el disco entero tarde o temprano, por eso lo primero que se debe hacer es backup de toda la informacion.
Posteriormente, para poder seguir usando el disco, se debe hacer una revision completa marcando los bloques dañados como tal, el comando que hay que ejecutar es:


e2fsck -c /dev/sda1


Reemplazando /dev/sda1 por la particion que tengan que reparar.

Esto solo se puede hacer con la particion desmontada, para poder hacerlo asi recomiendo una de tres opciones:

1) Usar un live-cd como los de ubuntu, que les permite acceder a las particiones, tienen los comandos basicos y hasta entorno grafico para que puedan, por ej, escribir articulos en su blog publicando la solucion (es mi caso)

2) Usar una opcion de "rescue" (no estoy seguro si viene con ubuntu, pero viene con todos los fedora) eso les da una shell con privilegios de root pero nada de graficos, de ventanitas de gelatina, ni menos cubos de escritorio girando

3) Inician el sistema normalmente, y con Ctrl+Alt+F1 pasan a la consola sin graficos, ejecutan:


sudo init 1


Para pasar a runlevel 1 que detiene todos los servicios (incluyendo el entorno grafico) y permite desmontar cualquier particion, ahi ejecutan el escaneo y cuando termine vuelven a montar la particion y hacen


sudo init 5


Para volver a runlevel 5

Esta ultima es mas para "hackers" pero es innecesariamente complicada y me fracture el dedo indice cuando quise hacerla.

miércoles, 11 de febrero de 2009

openVPN temporal rapida y practica en linux

Con estos comandos, pueden crear una vpn de manera muy rápida y sencilla con openvpn, y sin necesidad de "configuración", si por alguna urgencia necesitan vpn...

En el server:


openvpn --proto tcp-server --lport 9000 --dev tun0 --ifconfig 10.4.0.1 10.4.0.2


En el client


openvpn --proto tcp-client --rport 9000 --remote DIRECCIONIPREMOTA --dev tun0 --ifconfig 10.4.0.2 10.4.0.1


NOTA: asegúrense de que no colisionen las ips del ifconfig y que los puertos sean accesibles (en el ejemplo el 9000),

NOTA: pueden no especificar el proto, y utiliza el protoclo por defecto UDP

lunes, 2 de febrero de 2009

¿Porque pasa? Grave vulnerabilidad de ejecucion de codigo en el kernel 2.6.28 (y otros)

Asi como le escucharon, salio un nueva vulnerabilidad del kernel 2.6.28 con impacto de ejecución remota de código ( o Denial of service, segun el caso ), aca una copia de la nota original, de watchmouse:

------------------------------------------------------------------------------------------------------------------------

The Linux Kernel is prone to a remote buffer-overflow vulnerability because the software fails to perform adequate boundary checks on user-supplied data.

An attacker can exploit this issue to execute arbitrary code with kernel-level privileges. Successfully exploiting this issue will result in the complete compromise of affected computers. Failed exploit attempts will result in a denial-of-service condition.

The issue affects Linux Kernel 2.6.28; other versions may also be vulnerable.
------------------------------------------------------------------------------------------------------------------------


Que bueno que en el software libre estas cosas se corrigen rapido, lo mas que podemos hacer es actualizar el kernel y ya hay una versión patcheada, o parchearlos nosotros mismos si esta a nuestro alcance

La nota original de la pueden leer aca

En securityfocus pueden ver mas información acerca de la vulnerabilidad, las versiones afectadas del kernel, etc...

net-security también publico una nota