sábado, 10 de mayo de 2008

HAL

1. Resumen

A partir de la versión 5, CentOS no usa más el demonio hotplug.

# cat /proc/sys/kernel/hotplug
#
Los subsistemas disponibles son:

HAL – La Capa de Abstracción de Hardware (en inglés, The Hardware Abstracting Layer)

gnome-volume-manager – El control de volumen de Gnome (sirve de interfaz a HAL)

gnome-mount – La aplicación de Gnome que monta los volúmenes (es llamada por gnome-volume-manager).

Hasta CentOS 4, si usted conectaba un pendrive en su computadora, este se montaba automáticamente bajo el directorio /media, aún si usted estaba corriendo en el nivel 3 (modo texto). Sin embargo, debido a esta nueva disposición de subsistema, esto no se mantiene de la misma forma para CentOS 5.

2. ¿Cómo obtener el montaje automático fuera de Gnome/KDE?

Aquí el punto clave es el demonio gnome-volume-manager. Todo lo que tenemos que hacer es iniciarlo:

$ gnome-volume-manager --sm-disable
No hay necesidad de iniciarlo en el fondo ("&”), pues el se hace un fork a si mismo. Además recomendamos que usted inicie gnome-volume-manager como el usuario con el cual pretende acceder al dispositivo, pues gnome-mount montará el volumen utilizando el uid que está corriendo el proceso gnome-volume-manager para las opciones de uid/usuario del montaje.

De esta forma, si usted esta corriendo IceWM (por ejemplo), todo lo que usted necesita iniciar es gnome-volume-manager –sm-disable al inicio de la sesión (.Xclients-default, .Xclients etc).

Recuerde usar gnome-volume-properties para configurar gnome-volume-manager.

3. ¿Cómo decirle a gnome-mount que monte las cosas a su forma?

Una de las cosas sobre gnome-mount (al cual gnome-volume-manager llama para hacer el montaje) es que este tiene bastantes omisiones y un desagradable error. Sin desear echar a perder la sorpresa, hay un molesto error que nos detiene a la hora de configurar el uso de gconftool-2. gnome-mount adicionará sus opciones de montaje DESPUÉS de las especificadas con gconftool-2, lo cual hace que algunas de las opciones no estén disponibles.

Nota.Usted puede usar la opción --write-settings de gnome-mount, y entonces "gconf-edit” para cambiar los valores dados a un determinado volumen, sin tener la necesidad de utilizar directamente "gconftool-2”.

La parte mañosa es que gnome-mount adicionará la opción de "usuario” para el sistema de archivo cuando lo este montando. Esta opción implica noexec,nodev,nosuid. Debido a que será adicionada después de los valores que usted suministre, si usted especifica exec para la llave volume/UUID/mount_options de gconf, usted terminará de todas formas con el sistema de archivo montado como noexec.

Otro detalle que talvés necesite cambiar es el punto de montaje. gnome-mount por defecto monta en /media/ETIQUETA.

La forma de cambiar esto está en usar /etc/fstab. La opción de montaje provista en /etc/fstab será adicionada DESPUÉS de las definidas por gnome-mount, así que ahora usted ya tiene el control.

Para comprender mejor las cosas, vamos a imaginar el uso de un pendrive, con un sistema de archivo ext3 y etiquetado con "MIPENDRIVE". Si usted lo conecta simplemente, terminará con algo como lo siguiente:

/dev/sda1 on /media/MIPENDRIVE type ext3 (rw,noexec,nosuid,nodev,user=myusername)
Ahora digamos que lo necesitamos montar con exec. Todo lo que necesitamos hacer es adicionar la siguiente línea a /etc/fstab:

LABEL=MIPENDRIVE /media/MIPENDRIVE ext3 defaults,user,exec,noauto 0 0

Importante.Recuerde adicionar la opción exec DESPUÉS de user o users, de otra forma esto no funcionará.

Otro detalle mañoso es en el uso de fstab, gnome-mount ya no crea más el punto de montaje automáticamente. Así que usted debe asegurarse de haberlo creado.

Usando esta misma lógica, usted puede decirle a gnome-mount que use un punto de montaje diferente. Esto es particularmente interesante si usted está utilizando alguna unidad de disco extraible (como: Dell RD1000):

LABEL=RD1000disk /backup ext2 defaults,users,noauto 0 0
La opción noauto aplicará a mount -a. gnome-volume-manager aun la montará automáticamente, así que no hay que temer aquí.

4. ¿Cómo probar sus cambios en gnome-mount (diagnósticos)?

Una de las formas sencillas de probar sus cambios en gnome-mount es llamándolo manualmente.

Primero, usted tendrá que detener/matar gnome-volume-manager, pues no querrá tenerlo en el camino. Luego, puede llamar gnome-mount directamente, para el dispositivo dado:

gnome-mount -vbd /dev/sda1
La bandera -v significa argumentación, de esta forma usted obtendrá algunos mensajes que le ayudarán a su diagnóstico. Luego usted puede desmontar (umount) el dispositivo y llamar
gnome-mount nuevamente, hasta que tenga lo que desea.

Cuando haya terminado, usted debe desmontar (umount) el volumen, desconectar el dispositivo y solo entonces reiniciar gnome-volume-manager, de otra forma usted se verá envuelto en un pequeño desastre.

Si todo esto falla:

1.Detenga/mate gnome-volume-manger
2.Detenga el demonio hal (service haldaemon stop)
3.Desconecte el dispositivo.
4.Inicie el demonio hal (service haldaemon start)
5.Inicie gnome-volume-manager (gnome-volume-manager –sm-disable)
6.Conecte el dispositivo.

No hay comentarios: