stringtranslate.com

GVfs

GVfs (abreviatura de GNOME virtual file system ) es el sistema de archivos virtual del espacio de usuario de GNOME diseñado para funcionar con la abstracción de E/S de GIO , una biblioteca disponible en GLib desde la versión 2.15.1. Instala varios módulos que las aplicaciones utilizan automáticamente al utilizar las API de libgio. También hay soporte para FUSE que permite que las aplicaciones que no utilizan GIO accedan a los sistemas de archivos GVfs.

Una causa de confusión es el hecho de que la abstracción del sistema de archivos que utiliza el núcleo de Linux también se denomina capa del sistema de archivos virtual (VFS). Sin embargo, se trata de un nivel inferior.

El modelo GVfs difiere de, por ejemplo, GnomeVFS , al que reemplaza, en que los sistemas de archivos deben montarse antes de ser utilizados. Hay un demonio maestro ( gvfsd) que maneja la coordinación de los montajes y, luego, cada montaje está (normalmente) en su propio proceso demonio (aunque los montajes pueden compartir procesos demonio).

GVfs viene con un conjunto de back-ends, que incluyen soporte para basura, SFTP , FTP , WebDAV , SMB y datos locales a través de la integración de Udev , OBEX , MTP y otros. [2] GVfs no parece soportar el protocolo de archivos transferidos a través de shell (FISH).

GVfs también contiene módulos para GIO que implementan monitores de volumen y la configuración del controlador del esquema URI de GNOME.

Hay un conjunto de argumentos para el programa de línea de comandos "gio" que le permite ejecutar comandos (como cat, ls, stat, mount, etc.) en archivos en los montajes GVfs.

Los recursos adjuntos se exponen a través de una sintaxis URI , por ejemplo smb://server01/gamedata o ftp://username:[email protected]/public_html, pero también se montan de la manera tradicional en el directorio ~/.gvfs/o [3] [4] para que estén disponibles para las aplicaciones que utilizan comandos POSIX estándar y E/S./run/user/$UID/gvfs$XDG_RUNTIME_DIR/gvfs

Detalles técnicos

La opción x-gvfs-showpara el proceso gvfs-udisks2-volume-monitor determina si se muestra o no un dispositivo montado [5] en Archivos de GNOME . Captura de pantalla de Discos de GNOME .

Además de las API de utilidad general, como las de compatibilidad con redes y D-Bus, GIO también proporciona una API VFS para las aplicaciones. GVfs proporciona implementaciones que van más allá y permiten acceder a archivos y almacenamiento mediante muchos protocolos. GVfs proporciona implementaciones para varios sistemas de archivos de red como módulos cargables. Además, GVfs también proporciona compatibilidad con carpetas de red, papelera o recientes, para la grabación de CD y para monitorear dispositivos y volúmenes interesantes en la computadora.

El objetivo de GVfs ha sido superar las deficiencias de GnomeVFS [6] y proporcionar una API que sea tan buena que los desarrolladores la prefieran a las llamadas POSIX sin formato. Entre otras cosas, eso significa utilizar GObject. También significa no clonar la API POSIX, sino proporcionar interfaces de nivel superior centradas en documentos. GTK puede utilizarla directamente, por ejemplo, en el selector de archivos.

Las aplicaciones utilizan GVfs indirectamente, mediante la carga por parte de GIO del módulo GVfs que implementa los puntos de extensión de GIO. El demonio principal de GVfs, gvfsd, genera otros demonios de montaje para cada conexión individual. La compatibilidad de GVfs con la monitorización de volumen se incluye en un módulo cargable independiente.

La implementación real de GVfs se distribuye entre varios procesos.

GVfs puede usar FUSE para montar su VFS directamente en el sistema de archivos. [7] Consta de dos partes: [8]

  1. una biblioteca compartida que se carga mediante aplicaciones que admiten GIO
  2. GVfs en sí, que contiene una colección de demonios que se comunican entre sí y con el módulo GIO a través de D-Bus .

Una colección de utilidades de línea de comandos (como gvfs-mount, gvfs-less) funciona con recursos VFS. [9]

Consulte https://wiki.gnome.org/Projects/gvfs/backends para obtener la documentación oficial.

Conexión en caliente

Los dispositivos conectados a través de eSATA o USB se supone que son físicamente conectables en caliente . Cuando un dispositivo se conecta físicamente o se retira físicamente del sistema informático, el núcleo Linux lo detecta y envía un evento al espacio de usuario. systemd-udevdRecibe dichos eventos y responde a ellos de acuerdo con su configuración bastante completa:

El demonio udisks2 udisksdsirve como interfaz para los dispositivos de bloques del sistema, implementado a través de D-Bus. Se encarga de operaciones como la consulta, el montaje, el desmontaje, el formateo o la desconexión de dispositivos de almacenamiento, como discos duros o unidades USB. Este paquete también proporciona la utilidad, que se puede utilizar para activar estas operaciones desde la línea de comandos (si PolicyKitudisksctl lo permite ).

Embalaje

En Debian, GVfs está empaquetado en cuatro paquetes: gvfs, gvfs-daemons, gvfs-bin y gvfs-backends.

Véase también

Referencias

  1. ^ "Versión 1.56.1". 18 de octubre de 2024. Consultado el 21 de octubre de 2024 .
  2. ^ Notas de la versión 6.1 de GNOME 2.22: GVfs y GIO
  3. ^ "gvfsd-fuse.1 - manned.org". manned.org . Consultado el 18 de abril de 2018 .
  4. ^ "Punto de montaje predeterminado de la carpeta remota de Nautilus". askubuntu.com . Consultado el 18 de abril de 2018 .
  5. ^ ab "udisks2/que-se-muestra.txt"..
  6. ^ "Planes para el reemplazo de gnome-vfs". mail.gnome.org . Consultado el 18 de abril de 2018 .
  7. ^ "informe de estado de gvfs". mail.gnome.org . Consultado el 18 de abril de 2018 .
  8. ^ "Uso de GNOMEvfs para manipular archivos", Linux.com
  9. ^ "OpenSolaris 2009.06 - página de manual para gvfs-mount (opensolaris sección 1) - Comandos de Unix y Linux". www.unix.com . Consultado el 18 de abril de 2018 .
  10. ^ "lista de archivos del paquete gvfs-daemons".
  11. ^ "lista de archivos del paquete udisks2".
  12. ^ David Zeuthen (28 de mayo de 2014). "Montaje moderno con Udisks2".

Enlaces externos