Filesystems

root 使用者拒絕訪問 rsnapshot 中的 .gvfs?

  • December 5, 2012

rsnapshot以 root 身份執行,但出現以下錯誤。為什麼會發生這種情況?什麼是.gvfs

rsnapshot weekly                                                                    slave-iv
rsync: readlink_stat("/home/griff/.gvfs") failed: Permission denied (13)
IO error encountered -- skipping file deletion
rsync: readlink_stat("/home/xenoterracide/.gvfs") failed: Permission denied (13)
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1042) [sender=3.0.7]

.gvfs目錄是掛載點(有時)。您可能希望one_fs在您的 rsnapshot 配置中使用該選項(以便它傳遞--one-file-system給 rsync)。


Gvfs是庫級別的文件系統實現,在 Gnome 項目(特別是libgvfscommon)編寫的庫中實現。與此庫連結的應用程序可以使用文件系統 API 來訪問 ftp、sftp、webdav、samba 等。

Gvfs 就像FUSE一樣,它允許在使用者空間程式碼中實現文件系統。FUSE 需要核心的一次性合作(因此它僅在受支持的作業系統的受支持版本上可用),但隨後可以被任何應用程序使用,因為它插入到正常的文件系統 API。Gvfs 只能通過 Gnome 庫使用,但不需要核心的任何特殊協作,因此可以在更多作業系統上使用。

在 Ubuntu 10.04 上進行的快速實驗表明,當應用程序訪問 Gvfs 文件系統時,~/.gvfs它是文件系統的掛載點**gvfs-fuse-daemon**。該文件系統允許任何應用程序訪問 Gvfs 文件系統,而無需連結到 Gnome 庫。它是一個 FUSE 文件系統,其實現將普通文件系統呼叫重定向到 Gvfs 呼叫。

gvfs-fuse-daemon文件系統不允許對 root 使用者進行任何訪問,只允許對執行應用程序的使用者進行任何訪問(由每個單獨的文件系統來管理 root 使用者的權限;root 沒有所有權力的典型案例是 NFS,其中從root 通常映射到任何人)。

引用自:https://unix.stackexchange.com/questions/3606