Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
instalación raid
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Spanish
View previous topic :: View next topic  
Author Message
forestux
n00b
n00b


Joined: 11 Feb 2014
Posts: 5
Location: detrás del cable

PostPosted: Tue Feb 11, 2014 6:15 pm    Post subject: instalación raid Reply with quote

Muy buenas, y enhorabuena por el foro.
Mi consulta es la siguiente:
He realizado pŕacticamente al pie de la letra el manual de instalación de gentoo http://www.gentoo.org/doc/es/gentoo-x86+raid+lvm2-quickinstall.xml
Por cierto que el manual, como otros tantos de este portal, es fabuloso: estoy aprendiendo un montón leyendo y rompiendo cosillas aquí en casa.
Lo hice sobre un viejo intel pentium IV al que "tuneé" con un poco más de RAM, y al que he añadido un segundo disco IDE en el segundo puerto IDE, mediante un segundo cable.
Lo único que he variado del manual ha sido, hasta donde recuerdo, formatear las particions sensibles en etx4 en vez de ext3, y evitar un volumen lógico /var/tmp (en el primer intento comprobé cómo, habiendo creado un vl /var/tmp ahí caía la instantánea de portage, y al haberla creado de sólo 2 GB se me quedaba corta). Bueno, y dado que el segundo disco es mayor que el primero, ajusté el tamaño de las particiones en él al tamaño del primero, y, creé una a mayores (/extra) que aún no he montado en fstab.Al contrario que en el manual, pues, mi sdb4 es ya una particion extendida que contiene dos lógicas (sdb5, espejo de sda4, y sdb6, la citada /extra). Por último, el md4 lo hice raid 1 ( --level=1 en listado de código 2.10 del manual).
El caso es que ahora, al reiniciar, la máquina me avisa de que no encuentra el intramfs; el mensaje en cuestión es el siguiente:

Code:
Booting 'Gentoo Linux'

root (hd0,0)
Filesystem type is ext2fs, partition type 0xfd
kernel /boot/kernel root /dev/sad3
[Linux-bzImage, setup=0x3a00, size=0x54b760]
initrd /boot/intramfs
Error 15: File not found


No es mayor problema el iniciar el sistema editando grub, borrándole la línea que apunta a initramfs, y apuntando root a md3
Code:
root (hd0,0)
kernel /boot/kernel root0/dev/md3
## (Y borrada la línea correspondiente a initramfs


En el inicio se puede leer el siguiente mensaje:

Code:
!!dmadm: No arrays found in config file or automatically


No obstante, el sistema arranca correctamente. Puesto a investigar, he podido comprobar que el nodo md4 no existe (y fue creado durante la instalación de acuerdo al listado de código 2.11 del manual), y sin embargo aparece un md127 que está funcionando correctamente:

Code:
darkness~# cat /proc/mdstat
Personalities : [raid1] [raid10] [raid6] [raid5] [raid4]
md127 : active raid1 sdb5[1] sda4[0]
      33686428 blocks super 1.2 [2/2] [UU]
     
md1 : active raid1 sdb1[1] sda1[0]
      131008 blocks [2/2] [UU]
     
md3 : active raid1 sdb3[1] sda3[0]
      4194240 blocks [2/2] [UU]
     
unused devices: <none>


De modo que no existe el nodo md4, y es sustituído por md127, que, por lo demás, funciona correctamente:

Code:
darkness~# mdadm -D /dev/md127
/dev/md127:
        Version : 1.2
  Creation Time : Sun Feb  9 16:13:39 2014
     Raid Level : raid1
     Array Size : 33686428 (32.13 GiB 34.49 GB)
  Used Dev Size : 33686428 (32.13 GiB 34.49 GB)
   Raid Devices : 2
  Total Devices : 2
    Persistence : Superblock is persistent

    Update Time : Tue Feb 11 19:02:17 2014
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           Name : livecd:4
           UUID : 748b4a76:8f516ac1:d94c9bd6:d410ab0f
         Events : 17

    Number   Major   Minor   RaidDevice State
       0       8        4        0      active sync   /dev/sda4
       1       8       21        1      active sync   /dev/sdb5


Quisiera corregir tanto el arranque (grub) como el asunto del nodo.
He entrado de nuevo desde el cd live, creando de nuevo el nodo, sigo en las mismas; en cuando a grub, no encuentro su archivo de config por ningún lado.
¿Alguna idea?
Si necesitáis algún pastebin más no dudéis en pedirlo.
Muchas gracias de antemano.


Last edited by forestux on Tue Feb 11, 2014 10:20 pm; edited 1 time in total
Back to top
View user's profile Send private message
Stolz
Moderator
Moderator


Joined: 19 Oct 2003
Posts: 2957
Location: Valencia, Spain

PostPosted: Tue Feb 11, 2014 8:01 pm    Post subject: Reply with quote

El archivo de configuración de grub es /boot/grub/grub.conf. Si no lo encuentras es posible que no tengas montada la partición /boot.

Sobre LVM2 no tengo ni idea pero sobre los raids, prueba lo siguiente para actualizar el nº minor:

Code:
umount /dev/md127
mdadm --stop /dev/md127
mdadm --assemble --update=super-minor /dev/md4 /dev/sda4 /dev/sdb5
cat /proc/mdstat


Si aparece /dev/md4 y siempre que creases los raids con la opción --metadata=0.90 puedes hacer que la autodetección del kernel recuerde que el nodo del raid formado por /dev/sda4 y /dev/sdb5 debe ser /dev/md4. Para ello debes crear el fichero /etc/mdadm.conf con el siguiente comando

Code:
mdadm --detail --scan >> /etc/mdadm.conf


y asegurarte de que dicho fichero contiene la version de metadata, es decir, algo así (obviamente tu UUID será diferente).
Code:
ARRAY /dev/md4 metadata=0.90 UUID=f9481701:e4g3a1b4:bc99eh69:92cb911f


Por cierto, ¿cómo es que el raid md4 está formado por /dev/sda4 y /dev/sdb5 y no por ejemplo /dev/sda4 y /dev/sdb4 o /dev/sda5 y /dev/sdb5? ¿No usas discos idénticos?
Back to top
View user's profile Send private message
forestux
n00b
n00b


Joined: 11 Feb 2014
Posts: 5
Location: detrás del cable

PostPosted: Tue Feb 11, 2014 10:43 pm    Post subject: Reply with quote

La ruta de grub.conf la conozco... Indagaré a ver si /boot está o no montada.
En cuanto a los raids, te comento:
al tratar de desmontar /dev/md127 me arroja que no está montada... El segundo comando que comentas (detener /dev/md127) arroja también error, relacionado precisamente con LVM:
Code:
mdadm: cannot exclusive access to /dev/md127: Perhaps a running process, mounted filesystem or active volume group?

Buscaré a ver la manera de detener el grupo de volúmenes a ver, y probaré entonces.
Por supuesto el resto de comandos ni probar.
En cualquier caso, de acuerdo al manual, /dev/md4 lo había creado sin la opción --metadata=0.90

En cuanto a tu duda te cuento que sdb es el doble del tamaño de sda (80 GB frente a 40), por lo que creé una extendida en sdb (sdb4) que me acoje dos lógicas: sdb5, que es a la que apunta sda4, y sdb6, con 40 GB extras que ya veré para que uso.

Mi intención es montar una base de datos casera a la que los compañeros del curro podamos acceder -soy agente medioambiental- para anotar diversas actuaciones relacionadas con el trabajo: desde denuncias, decomisos, etc. hasta actuaciones en incendios forestales -aquí en CyL somos nosotros losque acudimos a los incendios en calidad de jefes de extinción, y no los bomberos, como en Cataluña o Madrid -, pasando por llevar el pan a un pueblo bloqueado por la nieve, o dando la chapa con el medio ambiente a los rapaces en los colegios, que hacemos de todo. De esa manera, a la larga, tendremos una buena base de datos de actuaciones de la que podremos echar mano para estadísticas, etc. La base de datos, en raid1, la tendré a prueba de fallos, y posiblemente use ese tamaño extra de sdb para subir fotos de las actuaciones, dejando claro a los compañeros que de esas fotos ya pueden guardar buena copia porque no hay redundancia para /extra, por si se estruja el disco... :roll:

No sé si me habré metido en un berenjenal al que no pueda hacer frente, pero desde luego que ganas de aprender -y a mi edad no viene siendo habitual- no me faltan.

Mañana no podré hacer nada -trabajo todo el día- pero en cuanto vuelva por casa te cuento lo que fui haciendo.
Muchas gracias por la pronta respuesta, de un luser apasionado de GNU/Linux.
Back to top
View user's profile Send private message
Stolz
Moderator
Moderator


Joined: 19 Oct 2003
Posts: 2957
Location: Valencia, Spain

PostPosted: Tue Feb 11, 2014 11:49 pm    Post subject: Reply with quote

Para poder renombrar el raid éste debe estar detenido. Para poder detenerlo éste no debe estar en uso. El comando umount solo era para cerciorase de que no está en uso y no pasa nada por que falle. El problema parece ser que LVM está usando el raid y por eso no puede detenerse. Como dije antes, soy un ignorante respecto a LVM por lo que no te puedo ayudar sobre como hacer que deje de usar el raid para poder detenerlo y renombrarlo. A ver si algún compañero del foro te puede orientar mejor sobre eso.

En cualquier caso, si los raids no han sido creados con --metadata=0.90 entonces el nombre de los raids se comporta de forma diferente y la autodeteccion por parte del kernel no está soportada. Aquí tienes información sobre como asignar un nombre a los raids con --metadata=1.X y sobre cómo montarlos:

https://bugzilla.redhat.com/show_bug.cgi?id=606481

Está en inglés, si no te aclaras intentaré buscarte la información en Español.

Saludozzzzzzzz
Back to top
View user's profile Send private message
forestux
n00b
n00b


Joined: 11 Feb 2014
Posts: 5
Location: detrás del cable

PostPosted: Thu Feb 13, 2014 8:42 pm    Post subject: Reply with quote

Stolz wrote:
Para poder renombrar el raid éste debe estar detenido. Para poder detenerlo éste no debe estar en uso. El comando umount solo era para cerciorase de que no está en uso y no pasa nada por que falle. El problema parece ser que LVM está usando el raid y por eso no puede detenerse. Como dije antes, soy un ignorante respecto a LVM por lo que no te puedo ayudar sobre como hacer que deje de usar el raid para poder detenerlo y renombrarlo. A ver si algún compañero del foro te puede orientar mejor sobre eso.

En cualquier caso, si los raids no han sido creados con --metadata=0.90 entonces el nombre de los raids se comporta de forma diferente y la autodeteccion por parte del kernel no está soportada. Aquí tienes información sobre como asignar un nombre a los raids con --metadata=1.X y sobre cómo montarlos:

https://bugzilla.redhat.com/show_bug.cgi?id=606481

Está en inglés, si no te aclaras intentaré buscarte la información en Español.

Saludozzzzzzzz


No fui capaz de desmontar el grupo de volúmenes (mira que le he dado vueltas a san google). Podía desmontar volúmenes tales como home, tmp y algún otro, pero /dev/mapper/var y /dev/mapper/usr se me resistían, arrojándome el mensaje de que estaban en uso.
Hasta que se me ocurrió la idea de irme a init 1.
Se desmontan todos los volúmenes lógicos contenidos en /dev/mapper, pero /dev/md3 no lo hace. El error, aunque no es le mismo, es similar:
Code:
mdadm: cannot get exclusive access to /dev/md3:Perhaps a running process, mounted filesytem or active volume group?

Ahí dentro, a lo que entendí en la instalación, caen dev, sys y proc... Como para desmontarse.
Pero teniendo detenido md127, he podido arrojar el comando:

Code:
mdadm --assemble --update=super-minor /dev/md4 /dev/sda4 /dev/sdb5


Claro que ya me habías avisado de que, no habiendo sido creado md4 con la opción --metadata=0.90, el resultado era de esperar:

Code:
mdadm: --update=super-minor not understood for 1.x metadata


El enlace que me pasaste me resultó muy instructivo -he entendido la discusión en mi mal inglés-, y lo revisaré de nuevo. De acuerdo con lo que he entendido, creo que si soy capaz de que el sistema arranque con initramfs se arreglará el asunto, independientemente de que el kernel no soporte la autodetección de los raids. Y si no probaré a renombrar el raid.
Sigo aprendiendo cosas; arreglar los errores es ya casi secundario.
Lamentablemente no dispongo de todo el tiempo que me gustaría, pero estamos en ello.
Muchas gracias.
Back to top
View user's profile Send private message
Stolz
Moderator
Moderator


Joined: 19 Oct 2003
Posts: 2957
Location: Valencia, Spain

PostPosted: Fri Feb 14, 2014 9:40 am    Post subject: Reply with quote

Siendo nuevo (y no siendolo) una forma fácil de generar y usar automáticamente el fichero initramfs es usar el paquete sys-kernel/genkernel para compilar el kernel. Con él en vez de los clásicos

Code:
make -j4 && make modules_install && cp /usr/src/linux/arch/x86_64/boot/bzImage /boot


puedes hacer

Code:
genkernel all
.

Esto, además de compilarte el kernel que tengas en /usr/src/linux y sus módulos, también te creará el fichero initramfs y te copiará todo a /boot además de crearte automáticamente una entrada en fichero grub.conf con los parámetros adecuados para usar tanto el kernel como el initramfs.

Puedes gestionar qué cosas se te incluirán en el initramfs editando el fichero /etc/genkernel.conf. Este es el aspecto del mío
Code:
OLDCONFIG="yes"
MENUCONFIG="yes"
CLEAN="no"
MRPROPER="no"
MOUNTBOOT="yes"
SYMLINK="no"
SAVE_CONFIG="yes"
USECOLOR="yes"
CLEAR_CACHE_DIR="no"
POSTCLEAR="0"
MAKEOPTS="-j5"
LVM="no"
LUKS="no"
GPG="no"
DMRAID="no"
BUSYBOX="yes"
MULTIPATH="no"
ISCSI="no"
UNIONFS="1"
FIRMWARE="no"
DISKLABEL="yes"
BOOTLOADER="grub"
SPLASH="yes"
SPLASH_THEME="custom"

Obviamente tu tendrás que poner LVM="yes".

Durante años no usé genkernel porque pensé que solo servía para autoconfigurar el kernel y a mi me gusta controlar todo lo que se activa en mi kernel. Ahora lo uso principlamente para que me genere el fichero initramfs y me olvido de comandos cpio, dracut, etc.

Más info: https://wiki.gentoo.org/wiki/Initramfs/HOWTO
Back to top
View user's profile Send private message
opotonil
l33t
l33t


Joined: 17 Jun 2005
Posts: 791
Location: 127.0.0.1

PostPosted: Fri Feb 14, 2014 8:56 pm    Post subject: Reply with quote

Por lo que recuerdo cuando reinicie tras instalar tambien cambio el nombre de los nodos del raid, no creo que yo les diera los nombres que tengo:
Code:

# ls -l /dev/md?*
brw-rw---- 1 root disk 9, 124 feb 14 21:26 /dev/md124
brw-rw---- 1 root disk 9, 125 feb 14  2014 /dev/md125
brw-rw---- 1 root disk 9, 126 feb 14 21:26 /dev/md126
brw-rw---- 1 root disk 9, 127 feb 14  2014 /dev/md127
-rw-r--r-- 1 root root      3 feb 14  2014 /dev/mdev.seq


Asi que decidi usar por ejemplo en el fstab los enlaces que se crean en /dev/md/
Code:

# ls -l /dev/md/
total 0
lrwxrwxrwx 1 root root 8 feb 14 21:26 server:1 -> ../md124
lrwxrwxrwx 1 root root 8 feb 14  2014 server:2 -> ../md125
lrwxrwxrwx 1 root root 8 feb 14 21:26 server:3 -> ../md126
lrwxrwxrwx 1 root root 8 feb 14  2014 server:5 -> ../md127

Code:

# cat /etc/fstab
/dev/md/server:1        /boot                   ext2            noauto,noatime  1 2
/dev/md/server:2        none                    swap            sw              0 0
/dev/md/server:3        /                       ext4            noatime         0 1

/dev/vg0/portage        /usr/portage            ext2            noatime         0 1
/dev/vg0/distfiles      /usr/portage/distfiles  ext2            noatime         0 1
/dev/vg0/src            /usr/src                ext2            noatime         0 1
/dev/vg0/var            /var                    ext4            noatime         0 1
/dev/vg0/tmp            /var/tmp                ext2            noatime         0 1
/dev/vg0/home           /home                   ext4            noatime         0 1


Tambien empece a usar genkernel para generar el initramfs facilmente pero me ha parecido muy como, igual que a @Stolz, y ahora lo uso siempre. Mi configuracion:
Code:

# cat /etc/genkernel.conf | egrep -i ^[a-z]
INSTALL="yes"
OLDCONFIG="yes"
MENUCONFIG="yes"
CLEAN="no"
MRPROPER="no"
MOUNTBOOT="yes"
SAVE_CONFIG="yes"
USECOLOR="yes"
MAKEOPTS="-j4"
MDADM="yes"
DISKLABEL="yes"
GK_SHARE="${GK_SHARE:-/usr/share/genkernel}"
CACHE_DIR="/var/cache/genkernel"
DISTDIR="${CACHE_DIR}/src"
LOGFILE="/var/log/genkernel.log"
LOGLEVEL=1
DEFAULT_KERNEL_SOURCE="/usr/src/linux"


La opcion MDADM="yes" creo que es el motivo por el que se necesita usar un initramfs. En mi caso el rootfs no esta en un LV asi que no necesito la opcion LVM="yes".

En cuanto al arranque uso grub2. Si no recuerdo mal, lo unico que tuve que hacer fue editar /etc/default/grub para descomentar y modificar la opcion GRUB_CMDLINE_LINUX_DEFAULT:
Code:

GRUB_CMDLINE_LINUX_DEFAULT="domdadm"


Salu2.

PD: Imagino que sea un error al copiar al foro: kernel /boot/kernel root /dev/sad3
_________________
Localnet
Films Localnet
Back to top
View user's profile Send private message
forestux
n00b
n00b


Joined: 11 Feb 2014
Posts: 5
Location: detrás del cable

PostPosted: Fri Feb 14, 2014 11:57 pm    Post subject: Reply with quote

Code:
# cat /proc/mdstat > ficherillo && mdadm --detail --scan >> ficherillo && cat ficherillo | wgetpaste
Your paste can be seen here: ht.............
   

Personalities : [raid1] [raid10] [raid6] [raid5] [raid4]
md4 : active raid1 sdb5[1] sda4[0]
      33686428 blocks super 1.2 [2/2] [UU]
     
md1 : active raid1 sdb1[1] sda1[0]
      131008 blocks [2/2] [UU]
     
md3 : active raid1 sdb3[1] sda3[0]
      4194240 blocks [2/2] [UU]
     
unused devices: <none>
ARRAY /dev/md/3_0 metadata=0.90 UUID=eb042f7e:68f7162a:cb201669:f728008a
ARRAY /dev/md/1_0 metadata=0.90 UUID=83816698:7a8b3631:cb201669:f728008a
ARRAY /dev/md4 metadata=1.2 name=livecd:4 UUID=748b4a76:8f516ac1:d94c9bd6:d410ab0f


Demasiado tarde para andar teclando por aquí, que mañana curro (me toca este finde) pero a ver si mañana saco un ratillo, tiro de historial de comandos y os cuento el proceso.
Gracias!!
Back to top
View user's profile Send private message
sag
Tux's lil' helper
Tux's lil' helper


Joined: 22 Sep 2004
Posts: 75

PostPosted: Sun Feb 16, 2014 6:00 pm    Post subject: Reply with quote

Una nota la documentaciones de Español e Ingles en la parte de crear el initramfs, difieren un poco.

Docuemntación español
http://www.gentoo.org/doc/es/gentoo-x86+raid+lvm2-quickinstall.xml
Code:

 A continuación construya un initramfs desde el cual iniciar el sistema:

Listado de Código 2.24: Construyendo un initramfs

# emerge genkernel
# genkernel --install --no-ramdisk-modules initramfs



Documentación en ingles
https://www.gentoo.org/doc/en/gentoo-x86+raid+lvm2-quickinstall.xml
Code:
Code Listing 2.24: Building an initramfs

# emerge genkernel
# genkernel --install --no-ramdisk-modules --lvm --mdadm initramfs


Yo he usando la documentación en ingles y me ha funcionado bien, eso si no he usado LVM.

Tambien la parte de configuración de Grub, ademas de usar 'domdadm' uso 'rootfstype=ext4'

Code:
GRUB_CMDLINE_LINUX_DEFAULT="rootfstype=ext4 domdadm"
Back to top
View user's profile Send private message
forestux
n00b
n00b


Joined: 11 Feb 2014
Posts: 5
Location: detrás del cable

PostPosted: Wed Feb 19, 2014 11:02 am    Post subject: Reply with quote

Muchas gracias por todas las ayudas.
Os comento cómo he resuelto el problema; asumo que no es muy ortodoxo, dado que en un servidor en producción no sería lo recomendable, pero al fin y al cabo yo estoy a aprender y el servidor lo tengo aquí, a mi lado, y de momento sólo "sirve" para quebrantarme la cabeza... :D
He iniciado el sistema desde cd minimal (live), para así de inicio tener detenido el array (no podía desmontarlo), y al inicio es detectado por el sistema, pero no montado, de modo que:
Code:
mdadm --stop /dev/md127
mdadm --remove /dev/127
mdadm --zero-superblock /dev/dsa4 /dev/sdb5

De ese modo he eliminado el raid y su valor de metadata.
Seguidamente creé de nuevo el raid de acuerdo con el manual de instalación, y añadiéndole el parámetro:
Code:
metadata=0.90

Y listo; al reinicio ya se monta como /dev/md4; me ha parecido más cómodo que ponerle un nombre, por así tener todos los raids con la misma nomenclatura (mdX)
En cuanto a grub, también desde cd live, lo eliminé, hice un
Code:
dd if=/dev/zero of=/dev/sda bs=446 count=1

Seguidamente instalé de nuevo grub de acuerdo con el manual en inglés:
Code:
emerge genkernel
 genkernel --install --no-ramdisk-modules --lvm --mdadm initramfs

Nota: edité mi genkernel.conf previamente de acuerdo con las instrucciones de Stolz, añadiendo soporte para dmadm y LVM.
Y violá: todo está ok.
Nota: evientemente para eliminar grub y volver a instalarlo lo hice desde entorno chroot con los raids montados.
Muchas gracias por vuestra ayuda.
La verdad es que con gentoo estoy aprendiendo un wevo... Recuerdo cuando mapeaba puertos del amule a los amigos y pensaba que sabía algo... :lol:
Soy curioso por naturaleza, y GNU/Linux (empecé por ubuntu, como casi todos, me quedo con Slackware que me encanta y ya la entiendo bien, pero Gentoo es ya de tirar cohetes) me ha enseñado que en estos temas soy un simple novato, y lo que es más importante, me ha animado, a mi edad, a volver a estudiar (joe que hacía 15 años que no abría un libro)
Muchas gracias, y de nuevo enhorabuena por el foro...
Por aquí me quedaré, y me leeréis de vez en cuando.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Spanish All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum