ACTUALIZAR
Corríjame si me equivoco : para trabajar en mi computadora, con una distribución GNU / Linux llamada Debian, conozco dos formas de ingresar un comando, iniciar una aplicación, abrir un archivo, etc.
- una interfaz de línea de comando donde ingreso texto
- una interfaz gráfica de usuario [también conocida como GUI ]: una interfaz que proporciona "ventanas", símbolos, etc.
Algo se llama "Administrador de ventanas". Como uso GNU / Linux, trabajo en el sistema X-Window [que yo sepa].
Publicación original
Situación : deshabilité el montaje automático /etc/fstab
para memorias USB [p /dev/sdb1
. Ej .]. El montaje requiere ser root
, o al menos una sudo
entrada en la línea de comando, pero no en un administrador de ventanas (!) . No quiero decir automount
, me refiero a "hacer clic en el símbolo" en un administrador de ventanas abre el dispositivo en la GUI sin ninguna pregunta, donde en la CLI uno debe ser root.
Pregunta : ¿Cómo funciona el montaje en una GUI "debajo del capó"? ¿Existe un config
archivo para los gestores de ventanas en general o hay que configurarlo individualmente?
Entiendo y uso el mount
comando, creo entender cómo leer y configurar /etc/fstab
y saber dónde mirar qué significan las entradas allí y en el /etc/mtab
medio.
fuente
Respuestas:
Esta es mi comprensión de la situación, pero no soy un experto, por lo que es menos técnico que las otras respuestas. Esto es lo que entiendo después de usar estos sistemas durante muchos años, no los he estudiado en detalle.
Aquí hay tres jugadores principales y entre ellos gestionan las monturas:
FUSIBLE: Esto está en el centro de todo, como se describe en su página de wikipedia :
Entonces, básicamente, esto es lo que permite a los usuarios sin privilegios montar sistemas de archivos.
gvfs
: En la familia Gnome de entornos de escritorio (que incluye Gnome, Mate, Cinnamon), este es (entre otras cosas) un demonio que montará automáticamente las unidades recién conectadas. Lo hace a través de FUSE. Creo (pero puede estar equivocado) que el equivalente para la familia KDE se llama KIOLos principales procesos de
gvfs
son (tomados deman gvfs
):udev
: Este es un sistema que detecta nuevos dispositivos y le permite ejecutar scripts / comandos cuando están conectados. Por ejemplo, esudev
que detecta una nueva pantalla y puede reflejar su escritorio en ella:Específicamente,
gvfs
parece funcionar a través degvfs-udisks2-volume-monitor
un monitor de volumen basado en udiscos.udisks
sin embargo, se basa enudev
(verman 7 udisks
).Entonces, básicamente (lea "simplificación horrible") lo que sucede es que cuando conecta su unidad, la
udev
detecta y alerta algvfs
demonio que luego lo montará como un dispositivo FUSE.FUSE y
udev
será el mismo para todos los entornos de escritorio, lo que cambia es el demonio DE que monitoreaudev
y monta la unidad como un sistema de archivos FUSE.fuente
Depende de su entorno de ventanas (GNOME / KDE / etc.), Pero en GNOME, por ejemplo, verá los demonios ejecutándose llamados,
gvfs-*-volume-monitor
. Estos demonios son responsables de montar dispositivos cuando se ejecuta el entorno de escritorio, no tienen nada que ver/etc/fstab
y funcionan de manera completamente independiente.En cuanto a un archivo de configuración, hay algunos archivos que están relacionados con esto que viven en el directorio personal del usuario que ejecuta el DE,
$HOME/.local/share/gvfs-metadata
.Este U&L Q&A titulado: ¿Qué es gvfs y por qué debería quererlo en mi sistema? , intenta explicar qué es GVFS. Hace un buen trabajo al explicarlo. Pero creo que lo que realmente está preguntando se aborda más en este Q&A de U&L titulado: Montaje de discos USB automáticamente (Cómo funciona) .
fuente
HAL
... Encontré algunas soluciones parathunar
[que uso] etc. El artículo apuntó en una dirección. ¡Gracias por eso! - pero todavía estoy buscando un denominador común ...La respuesta simple es que hacen trampa. Ellos no usan el
fstab
. Por lo general, usan unudev
gancho para capturar eventos de inserción, montan el disco manualmenteroot
, lo que se puede pasardbus
para notificar a su administrador de archivos que tiene un disco nuevo o pueden usarsuid
utilidades en lugar dedbus
desmontarlo. Desafortunadamente, no hay opciones de configuración estándar para esto, y dado que el movimiento del escritorio cree en ocultar la complejidad, no documentan esto en la documentación del usuario, solo en la documentación del desarrollador, y asumen un solo sistema de usuario, por lo que las unidades USB solo funcionan para primer usuario en iniciar sesión en un servidor X.fuente
PolicyKit (o Polkit) es un kit de herramientas de nivel de aplicación para definir y manejar la política que permite que los procesos no privilegiados hablen a procesos privilegiados .
Es un marco para centralizar el proceso de toma de decisiones con respecto a la concesión de acceso a operaciones privilegiadas (como llamar al método Mount ()) para aplicaciones no privilegiadas (de escritorio).
Se utiliza un agente de autenticación para hacer que el usuario de una sesión pruebe que el usuario de la sesión realmente es el usuario (autenticándose como usuario) o un usuario administrativo (autenticándose como administrador).
GVFS es un sistema de archivos virtual que permite el montaje de sistemas de archivos locales y remotos como usuario junto con el soporte de basura. También hay soporte FUSE que permite que las aplicaciones que no usan GIO accedan a los sistemas de archivos GVFS, pero la mayoría de los DE también se autentican a través de Policykit para otras cosas, como hibernar y apagar la computadora, y para NetworkManager, por lo que no necesitan use FUSIBLE.
Está formado por dos partes:
El paquete gvfs necesita ser instalado, junto con polkit-gnome para las reglas de polkit. Asegúrese de que haya instalado un agente de autenticación gráfica y que se inicie automáticamente.
Los archivos de configuración para administrar privilegios deben ser diferentes para cada distribución. Arch Wiki te dice que crees un archivo debajo
/usr/share/polkit-1/rules.d/
. En Debian, están ubicados en/etc/polkit-1/
.Fuentes: Policykit en Debian || Polkit en Arch Wiki || GVFS en Arch Wiki || ¡GVFS en GNOME Wiki!
fuente
Un elemento común que está buscando es FUSE , el gvfs de GNOME, por ejemplo, lo usa bajo el capó. 1 Esta es la interfaz con el kernel, y creo que es común a todos los sistemas de montaje sin privilegios (automáticos) en Linux [pero vea los comentarios]. Los DE individuales no crearían su propia versión de esto, ya que eso requeriría parches del kernel.
De hecho, el enlace de la página de inicio está desactualizado, porque como se señaló aquí , FUSE se convirtió en parte del núcleo oficial hace unos años, pero describe los orígenes y propósitos del proyecto (no es solo para un montaje sin privilegios).
La razón por la que varios sistemas pueden diferir en estilo más allá de esto es la misma razón por la que tiene varios entornos de escritorio: representan diferentes visiones de cómo / qué debería ser la GUI. Se ocupan de la forma y la función de la interfaz de usuario, pero FUSE hace el montaje real y el nivel de kernel. Nota que se fusionan en realidad no hace parte de la "auto", se trata más de la parte "no privilegiados", pero la pieza de automóvil es bastante simple: todo lo que tiene que hacer es encuesta, por ejemplo,
/dev
. He escrito una aplicación de montaje que funciona de esta manera; solo observa la aparición de nuevos nodos. 2 Esa parte es tal vez un centenar de líneas de C ++. Easy-peasy: no hay necesidad real de una API común en ese nivel.1 O puede, si está haciendo una montura realmente sin privilegios. La respuesta de Teresa puede cubrir enfoques más nuevos para permitir el acceso a monturas normales.
2 Como observa Hildred, las devoluciones de llamadas udev serían un método mejor y menos pirateado.
fuente