Montaje de un disco USB en una ubicación permanente

13

Tengo un disco duro USB que quiero montar en el arranque y en una ubicación específica. ¿Cómo puedo hacer que la unidad se monte y permanezca disponible (por ejemplo, para copias de seguridad locales, etc.) aunque nadie haya iniciado sesión?

Parece que udev o algo similar se apodera del disco. Si pongo una entrada en / etc / fstab que intenta montar específicamente este disco (por UUID), entonces ese proceso de montaje y el proceso de montaje udev parecen terminar en una batalla entre ellos y el disco no se monta.

Don faulkner
fuente
¿Puedes agregar la línea que agregaste /etc/fstab? ¿Hay algún mensaje de registro cuando conecta su unidad? Tal vez ayude a aumentar el nivel de registro /etc/udev/udev.conf.
qbi
¿Cómo se ve la línea fstab? Debería verse así "UUID = 48a26dbe-e707-4e45-bd55-fc7936292ee1 / data ext4 errors = remount-ro 0 2"
LassePoulsen

Respuestas:

7

Monta el disco usando udev. Colocar las reglas de este wiki en /etc/udev/user.rulesy reiniciar el sistema (o vuelva a conectar el disco duro USB). Hay varios favores de reglas en la wiki (es por eso que no las enumeré aquí), elija la que mejor se adapte a sus necesidades (por ejemplo, necesita un usuario normal específico para poder desmontarla).

La lectura /lib/udev/rules.d/80-udisks.rulesle ayudará a comprender qué está haciendo udev en su disco duro.

Además de las reglas de udev que mencioné anteriormente, creo que hay otro enfoque que puede tomar: instruir a udisks (a través de udev) para que dejen el disco solo y luego lo monten a través de fstab.

Este código funciona en mi sistema

ACTION!="add|change", GOTO="my_udisks_end"
SUBSYSTEM!="block", GOTO="my_udisks_end"

ENV{ID_TYPE}!="disk", GOTO="my_udisks_end"
ENV{ID_BUS}!="ata", GOTO="my_udisks_end"
ENV{DEVTYPE}!="partition", GOTO="my_udisks_end"

KERNEL=="sd*|hd*", ENV{UDISKS_PRESENTATION_NOPOLICY}="1"

LABEL="my_udisks_end"

pero es genérico e incluye todas las particiones. Para poder apuntar a su disco duro / partición particular, use udevadm info --query=all -n /dev/sdXy luego coincida con algunos de esos atributos particulares en las reglas de udev.

Un buen recurso para ayudarte en esto es escribir reglas de udev . Lamentablemente contiene información desactualizada ( udevinfofue reemplazada por udevadm indo). Sin embargo, le aseguro que es una lectura que vale la pena: udev es una pieza central de la arquitectura hoy en día y puede lograr mucho al usarla. También es bastante flexible.

También es fácil cometer errores en las reglas de udev :). Use udevadm test $(udevadm info -q path -n /dev/sdX)para echar un vistazo a lo que está haciendo udev.

Li Lo
fuente
Increíble. Esto se parece mucho a lo que estaba buscando. Parece que tengo algo de lectura que hacer ...
Don Faulkner
1

Puede intentar hacer referencia a él por / dev / ... en lugar de por UUID. Es muy probable que sea / dev / sdb *, puede verificar esto yendo a Sistema -> Administración -> Monitor de sistema y haciendo clic en la pestaña 'Sistemas de archivos'. Deberá haber insertado primero la unidad USB y dejar que se monte automáticamente. Reemplace 'UUID = uuid' con '/ dev / sdb *' en / etc / fstab. Siempre es una buena idea hacer una copia de seguridad de fstab antes de editarlo.

dv3500ea
fuente
44
¡Hacer referencia a dispositivos de almacenamiento masivo directamente a dispositivos-nodos es una mala idea! La configuración del BIOS y los dispositivos eliminados pueden arruinar el orden del dispositivo.
LassePoulsen
Probablemente tenga razón, pero tenía la impresión de que el UUID se regenera cada vez que se extrae un dispositivo USB y se vuelve a enchufar. Esto significaría que fstab necesitaría editarse cada vez que se quita el dispositivo y se vuelve a enchufar.
dv3500ea
En realidad, me equivoqué, UUID sigue siendo el mismo.
dv3500ea
3
UUID es la ID única de filsystems y tiene que ver con la ubicación o dispositivo del bus. Incluso sobrevivirá si copia un sistema de archivos completo de un dispositivo a otro.
LassePoulsen
1
La permanencia del sistema de archivos es lo que estaba buscando con mount-by-uuid. Este es mi dispositivo de "copia de seguridad local", y quiero que la copia de seguridad (o donde sea que la monte) siempre tenga este sistema de archivos, incluso si agrego o reorganizo los dispositivos. Esa es la ventaja del montaje by-uuid o by-label.
Don Faulkner el