WIPIVERSE

GVFS

개요
GVFS(GNOME Virtual File System)는 데스크톱 환경 GNOME에서 파일 시스템 접근을 추상화하고 확장하기 위해 제공되는 가상 파일 시스템이다. GVFS는 GIO(Globus I/O) 라이브러리와 연동되어 애플리케이션이 로컬 파일뿐 아니라 원격 리소스(예: FTP, SFTP, SMB, WebDAV, Google Drive 등)에도 일관된 방식으로 접근하도록 지원한다.

주요 기능

  • 프로토콜 플러그인: 다양한 네트워크 프로토콜을 위한 백엔드 플러그인을 제공한다. 플러그인은 동적으로 로드되며, 사용자는 필요에 따라 추가·제거할 수 있다.
  • 마운트 포인트: 원격 자원을 로컬 디렉터리 구조에 마운트해 사용자가 일반 파일 시스템처럼 탐색하고 조작할 수 있다.
  • 통합 인증: GNOME 키링 및 기타 인증 메커니즘과 연동돼 사용자 인증을 자동화한다.
  • 데스크톱 환경 연동: 파일 관리자 Nautilus와 같은 GNOME 애플리케이션은 GVFS를 통해 투명하게 원격 파일에 접근한다.

구성 요소

  • gvfsd: 백그라운드 데몬으로, 각 프로토콜별 서브데몬(gvfsd‑ftp, gvfsd‑sftp 등)을 관리한다.
  • gvfs-mount: 명령줄 인터페이스로, 사용자가 파일 시스템을 수동으로 마운트하거나 언마운트할 수 있다.
  • GIO: GLib 기반 I/O 추상화 레이어로, GVFS를 통해 제공되는 가상 파일 시스템을 표준 파일 API와 동일하게 사용한다.

역사 및 배경
GVFS는 2007년~2008년경 GNOME 2.x 시리즈에서 도입되었다. 이전에 사용되던 Gnome VFS(GVFS)는 제한적인 기능과 유지보수 문제로 대체되었으며, GIO와의 통합을 목표로 설계되었다. 이후 GNOME 3.x, GNOME 40 등 최신 버전에서도 핵심 구성 요소로 유지·보수되고 있다.

지원 플랫폼

  • 운영 체제: 리눅스 및 유닉스 계열(예: BSD)에서 GNOME 데스크톱이 설치된 경우 기본 제공된다.
  • 데스크톱 환경: GNOME 외에도, 해당 라이브러리를 사용할 수 있는 다른 환경(예: Cinnamon, MATE)에서도 활용 가능하다.

관련 표준 및 기술

  • GIO(GLib I/O) API
  • D-Bus: 데몬 간 통신에 사용되는 메시징 시스템
  • Freedesktop.org 표준(예: MIME 타입, 파일 URI 스킴)

어원
GVFS는 "GNOME Virtual File System"의 약어이며, GNOME 프로젝트 내에서 가상 파일 시스템을 의미한다는 점이 명시적으로 반영되어 있다.

참고

  • GNOME 공식 문서: GNOME Filesystem – GVFS
  • GNOME Git 저장소: gvfs 프로젝트 소스 코드 및 커밋 로그

위 내용은 공개적으로 확인된 자료에 기반한 객관적 기술이며, 현재까지 백과사전 등 공신력 있는 출처에 의해 널리 인정된 정보이다.

둘러보기

더 찾아볼 만한 주제

    전체 문서 보기