ForoSUSE

ForoSUSE (http://www.forosuse.org/forosuse/index.php)
-   General OpenSUSE (http://www.forosuse.org/forosuse/forumdisplay.php?f=23)
-   -   [SOLUCIONADO] No arranca el sistema (Tumbleweed). Errores de la partición raíz (http://www.forosuse.org/forosuse/showthread.php?t=34155)

Xnake 12-jul-2017 18:53

[SOLUCIONADO] No arranca el sistema (Tumbleweed). Errores de la partición raíz
 
Puede que me salte pasos, me equivoque en la explicación y/o use términos incorrectos, pero es que llevo todo el día peleándome con el PC desde que, esta mañana, al arrancar aMule, me dijo que no existía un directorio que usa y tengo la cabeza como un bombo. :tstress: No recuerdo si intenté montar el directorio y no iba (mount -a), o reinicié el PC directamente.

El caso es que al arrancar me salían montones de errores de los subvolúmenes btrfs creados en / y el sistema no arrancaba.

Arranqué con un DVD de Tumbleweed e intenté la actualización y la instalación, pero siempre se quedaba en el 75% comprobando discos del sistema.

Arranqué con la opción Más... -> Equipo de rescate y probé diversas soluciones para arreglar lo que creía tener mal: La partición raíz (/), ya que en la consola 4 me aparecía un mensaje de "(device sdb2): bdev /dev/sdb2 errs: wr 0, rd, 0, flush 0, corrupt 6, gen0" .

Un btrfs check /dev/sdb2 me mostraba errores en la partición por lo que, tras consultar montones de páginas, finalmente, ejecuté el último recurso: btrfs check --repair /dev/sdb2 y el equipo seguía sin arrancar ni montar la partición raíz.

Si arrancaba en modo rescate e intentaba montar la partición /dev/sdb2 con mount -t auto /dev/sdb2 /mnt (también probé -t btrfs), la máquina se quedaba colgada. Sólo conseguí montar la partición con mount -o ro, recovery /dev/sdb2 /mnt y veía todo el contenido de la partición, pero no sabía qué mas hacer (btrfs scrub start /mnt se paraba nada más empezar y no arregla nada).

Ya daba el disco y el PC por perdidos (me dieron problemas hace un par de semanas; el disco es nuevo, pero el PC es de 2009), cuando no sé cómo arranqué por n-sima vez el DVD de Tumbleweed y seleccioné Más... -> Arrancar sistema linux, pensando que haría lo mismo que la opción Arrancar desde disco duro que aparece en la pantalla principal. Tras cargar todos los archivos necesarios me aparece (en modo texto) la opción de arrancar desde /dev/sdb2 (¡por fin!).

Seleccioné las opciones que me dio por defecto y el sistema arrancó sin errores, pero no la consola gráfica. Hice login como root e intenté arrancar el entorno gráfico con startx y, aparte de darme errores, me dejó colgada esa consola.

Hice login en otra consola y al hacer df -h veo que el directorio del que se quejaba aMule por la mañana no estaba montado, por lo que voy al archivo /etc/fstab y veo que la línea que hace referencia a su montaje ¡empieza con #!. Descomento la línea, reinicio y ya va todo.

Supongo que debí teclear mal algo editando el /etc/fstab mientras probaba opciones para activar quotas en el directorio /home y se quedó esa línea comentada (y está configurado para que no arranque sin esa partición montada):

#UUID=tocho-hexadecimal /DIRECTORIO xfs defaults 1 2

DiabloRojo 13-jul-2017 15:58

Tocar el /etc/fstab hace que pase esas cosas, siempre haz una copia por si las moscas.

Xnake 13-jul-2017 17:54

Lo que me llevó al huerto fue que los errores que veía en el arranque eran referidos a los subvolúmenes btrfs de /. En ningún momento se quejaba de otros directorios.

Xnake 13-jul-2017 19:18

Me acaba de ocurrir lo mismo que ayer al arrancar aMule, se queja de que no existe /Varios. He comprobado que el directorio del que se queja (/Varios) está montado y que no está comentado en el /etc/fstab, aunque si quiero acceder a él me da error:

user@localhost:~> ls /Varios
ls: no se puede acceder a '/Varios': Error de entrada/salida


Como root:

localhost:~ # df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 1.8G 0 1.8G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 1.6M 1.9G 1% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sdb2 41G 18G 22G 46% /
/dev/sdb2 41G 18G 22G 46% /.snapshots
/dev/sdb2 41G 18G 22G 46% /var/opt
/dev/sdb2 41G 18G 22G 46% /var/lib/mariadb
/dev/sdb2 41G 18G 22G 46% /var/crash
/dev/sdb2 41G 18G 22G 46% /var/lib/libvirt/images
/dev/sdb2 41G 18G 22G 46% /var/lib/mailman
/dev/sdb2 41G 18G 22G 46% /var/lib/mysql
/dev/sdb2 41G 18G 22G 46% /boot/grub2/x86_64-efi
/dev/sdb2 41G 18G 22G 46% /var/lib/named
/dev/sdb2 41G 18G 22G 46% /boot/grub2/i386-pc
/dev/sdb2 41G 18G 22G 46% /var/lib/pgsql
/dev/sdb2 41G 18G 22G 46% /var/lib/machines
/dev/sdb2 41G 18G 22G 46% /usr/local
/dev/sdb2 41G 18G 22G 46% /srv
/dev/sdb2 41G 18G 22G 46% /opt
/dev/sdb2 41G 18G 22G 46% /var/log
/dev/sdb2 41G 18G 22G 46% /tmp
/dev/sdb2 41G 18G 22G 46% /var/tmp
/dev/sdb2 41G 18G 22G 46% /var/spool
/dev/sdb2 41G 18G 22G 46% /var/cache
/dev/sdc1 917G 853G 18G 98% /****** (editado)
/dev/sda1 466G 464G 2.7G 100% /****** (editado)
/dev/sdb3 250G 117G 132G 48% /home
tmpfs 370M 16K 370M 1% /run/user/1000
/dev/sdb4 640G 636G 4.0G 100% /Varios


Tras desmontar (umount /Varios) y volver a montar (mount -a), sigue apareciendo el directorio/partición (/dev/sdb4).

Log del sistema:

Jul 13 18:24:37 localhost kernel: XFS (sdb4): Unmounting Filesystem
Jul 13 18:25:04 localhost kernel: XFS (sdb4): Mounting V5 Filesystem
Jul 13 18:25:05 localhost kernel: XFS (sdb4): Starting recovery (logdev: internal)
Jul 13 18:25:05 localhost kernel: XFS (sdb4): Ending recovery (logdev: internal)


Lanzo un journalctl -f en una consola de root, y al volver a arrancar aMule me saca el siguiente log:

Jul 13 18:26:53 localhost kernel: XFS (sdb4): Internal error XFS_WANT_CORRUPTED_RETURN at line 414 of file ../fs/xfs/libxfs/xfs_alloc.c. Caller xfs_alloc_ag_vextent_near+0x8ba/0xb60 [xfs]
Jul 13 18:26:54 localhost kernel: CPU: 1 PID: 8387 Comm: amule Not tainted 4.11.8-1-default #1
Jul 13 18:26:54 localhost kernel: Hardware name: System manufacturer System Product Name/**** (editado) BIOS **** (editado)
Jul 13 18:26:54 localhost kernel: Call Trace:
Jul 13 18:26:54 localhost kernel: dump_stack+0x5c/0x78
Jul 13 18:26:54 localhost kernel: xfs_alloc_fixup_trees+0x1a6/0x350 [xfs]
Jul 13 18:26:54 localhost kernel: xfs_alloc_ag_vextent_near+0x8ba/0xb60 [xfs]
Jul 13 18:26:54 localhost kernel: xfs_alloc_ag_vextent+0x13c/0x140 [xfs]
Jul 13 18:26:55 localhost kernel: xfs_alloc_vextent+0x419/0x5c0 [xfs]
Jul 13 18:26:55 localhost kernel: xfs_bmap_btalloc+0x2a8/0x6d0 [xfs]
Jul 13 18:26:55 localhost kernel: xfs_bmapi_write+0x62a/0xc20 [xfs]
Jul 13 18:26:55 localhost kernel: xfs_iomap_write_allocate+0x15e/0x340 [xfs]
Jul 13 18:26:55 localhost kernel: xfs_map_blocks+0x149/0x250 [xfs]
Jul 13 18:26:55 localhost kernel: xfs_do_writepage+0x131/0x700 [xfs]
Jul 13 18:26:55 localhost kernel: write_cache_pages+0x19c/0x420
Jul 13 18:26:55 localhost kernel: ? xfs_aops_discard_page+0x130/0x130 [xfs]
Jul 13 18:26:55 localhost kernel: ? lock_page_memcg+0x11/0x80
Jul 13 18:26:55 localhost kernel: ? release_pages+0x2d1/0x370
Jul 13 18:26:55 localhost kernel: ? __activate_page+0x25f/0x310
Jul 13 18:26:55 localhost kernel: xfs_vm_writepages+0x90/0xc0 [xfs]
Jul 13 18:26:55 localhost kernel: do_writepages+0x37/0x80
Jul 13 18:26:55 localhost kernel: ? tlb_flush_mmu_free+0x31/0x50
Jul 13 18:26:55 localhost kernel: ? __filemap_fdatawrite_range+0xa3/0xe0
Jul 13 18:26:55 localhost kernel: ? __filemap_fdatawrite_range+0xa3/0xe0
Jul 13 18:26:55 localhost kernel: ? filemap_write_and_wait_range+0x33/0x70
Jul 13 18:26:55 localhost kernel: ? xfs_file_fsync+0x4a/0x1b0 [xfs]
Jul 13 18:26:55 localhost kernel: ? do_munmap+0x398/0x480
Jul 13 18:26:55 localhost kernel: ? SyS_msync+0x17b/0x200
Jul 13 18:26:55 localhost kernel: ? entry_SYSCALL_64_fastpath+0x1e/0xad
Jul 13 18:26:55 localhost kernel: XFS (sdb4): page discard on page fffff477802f0180, inode 0x403302c0, offset 621514752.
Jul 13 18:26:55 localhost kernel: XFS (sdb4): Corruption warning: Metadata has LSN (-252535462:438013267) ahead of current LSN (837:375338). Please unmount and run xfs_repair (>= v4.3) to resolve.
Jul 13 18:26:55 localhost kernel: XFS (sdb4): Metadata CRC error detected at xfs_buf_ioend+0x52/0x1f0 [xfs], xfs_allocbt block 0x282af608
Jul 13 18:26:55 localhost kernel: XFS (sdb4): Unmount and run xfs_repair
Jul 13 18:26:55 localhost kernel: XFS (sdb4): First 64 bytes of corrupted metadata buffer:
Jul 13 18:26:55 localhost kernel: ffff93a6f46ea000: 7a 27 3d e7 44 78 e8 47 26 eb 49 04 fd a0 69 b3 z'=.Dx.G&.I...i.
Jul 13 18:26:55 localhost kernel: ffff93a6f46ea010: 2a 5b e1 13 d3 a2 37 be f0 f2 9d 5a 1a 1b 8d 53 *[....7....Z...S
Jul 13 18:26:55 localhost kernel: ffff93a6f46ea020: e9 21 da 65 e9 e9 49 69 9b 85 af e1 b4 f0 0d f2 .!.e..Ii........
Jul 13 18:26:55 localhost kernel: ffff93a6f46ea030: b3 c3 f2 fe d3 94 c2 13 09 e7 88 da 3d fe 35 9d ............=.5.
Jul 13 18:26:55 localhost kernel: XFS (sdb4): metadata I/O error: block 0x282af608 ("xfs_trans_read_buf_map") error 74 numblks 8
Jul 13 18:26:55 localhost kernel: XFS (sdb4): xfs_do_force_shutdown(0x1) called from line 315 of file ../fs/xfs/xfs_trans_buf.c. Return address = 0xffffffffc0c8b9bf
Jul 13 18:26:55 localhost kernel: XFS (sdb4): I/O Error Detected. Shutting down filesystem
Jul 13 18:26:55 localhost kernel: XFS (sdb4): Please umount the filesystem and rectify the problem(s)


No recuerdo si paré el aMule o se cayó, pero desmonto /Varios y ejecuto xfs_repair /dev/sdb4:

localhost:~ # xfs_repair /dev/sdb4
Phase 1 - find and verify superblock...
Phase 2 - using internal log
- zero log...
ERROR: The filesystem has valuable metadata changes in a log which needs to
be replayed. Mount the filesystem to replay the log, and unmount it before
re-running xfs_repair. If you are unable to mount the filesystem, then use
the -L option to destroy the log and attempt a repair.
Note that destroying the log may cause corruption -- please attempt a mount
of the filesystem before doing this.


Monto y desmonto /Varios, tal y como aconseja, y vuelvo a ejecutar xfs_repair /dev/sdb4:

Phase 1 - find and verify superblock...
Phase 2 - using internal log
- zero log...
- scan filesystem freespace and inode maps...
out-of-order bno btree record 365 (10212463 9) block 2/484040
out-of-order bno btree record 366 (10212477 5) block 2/484040
out-of-order bno btree record 367 (10212509 13) block 2/484040
out-of-order bno btree record 368 (10213442 3) block 2/484040
out-of-order bno btree record 369 (10213486 5) block 2/484040
out-of-order bno btree record 370 (10213574 4) block 2/484040
out-of-order bno btree record 371 (10214511 5) block 2/484040
out-of-order bno btree record 372 (10215269 5) block 2/484040
out-of-order bno btree record 373 (10217219 6) block 2/484040
out-of-order bno btree record 374 (10217899 13) block 2/484040
out-of-order bno btree record 375 (10217988 2) block 2/484040
out-of-order bno btree record 376 (10218113 1) block 2/484040
out-of-order bno btree record 377 (10218171 5) block 2/484040
out-of-order bno btree record 378 (10218326 2) block 2/484040
out-of-order bno btree record 379 (10218916 10) block 2/484040
block (2,40844054-40844054) multiply claimed by bno space tree, state - 1
...
block (2,41286501-41286501) multiply claimed by bno space tree, state - 1
- found root inode chunk
Phase 3 - for each AG...
- scan and clear agi unlinked lists...
- process known inodes and perform inode discovery...
- agno = 0
data fork in ino 131839596 claims free block 175500578
...
data fork in ino 131839596 claims free block 175497624
- agno = 1
- agno = 2
data fork in ino 1077084864 claims free block 175301133
...
data fork in ino 1077612567 claims free block 175480632
- agno = 3
- process newly discovered inodes...
Phase 4 - check for duplicate blocks...
- setting up duplicate extent list...
- check for inodes claiming duplicate blocks...
- agno = 0
- agno = 1
- agno = 2
- agno = 3
Phase 5 - rebuild AG headers and trees...
- reset superblock...
Phase 6 - check inode connectivity...
- resetting contents of realtime bitmap and summary inodes
- traversing filesystem ...
- traversal finished ...
- moving disconnected inodes to lost+found ...
Phase 7 - verify and correct link counts...
done


Monto /Varios con mount -a y el log de sistema dice:

Jul 13 18:55:49 localhost kernel: XFS (sdb4): Mounting V5 Filesystem
Jul 13 18:55:50 localhost kernel: XFS (sdb4): Ending clean mount


Arranco el aMule, que chequea la integridad de los archivos en descarga (se tira un buen rato con uno de 1GB) y no se ven errores en el log del sistema. Aparentemente, todo funciona bien.


La franja horaria es GMT +2. Ahora son las 09:36.

Powered by vBulletin™
Copyright © vBulletin Solutions, Inc. All rights reserved.


Esta página está bajo una licencia de Creative Commons, salvo que no se indique lo contrario.
Creative Commons License

Valid CSS!