文件管理器功能
本文概述了扩展文件管理器功能和特性所需的其他软件包,尤其是在使用窗口管理器(如 Openbox)时。还提供了在不受影响的情况下,无需密码即可访问分区和可移动媒体的功能。
概览
仅文件管理器无法提供完整桌面环境(如 Plasma 或 Xfce)用户所习惯的功能和特性。这是因为需要额外的软件包才能使给定的文件管理器能够
- 显示和访问其他分区
- 显示、挂载和访问可移动媒体(例如 USB 闪存盘、光盘和数码相机)
- 启用与其他已安装操作系统的网络/共享网络
- 启用缩略图
- 压缩和解压缩文件
- 自动挂载可移动媒体
当文件管理器作为完整桌面环境的一部分安装时,通常会自动安装大多数这些软件包。因此,如果为独立的窗口管理器安装了文件管理器,那么与窗口管理器本身的情况一样,只会提供基本的基础。然后,用户必须确定要添加的功能和特性的性质和范围。
附加功能
当使用轻量级环境时,文件管理器功能越多,所需的内存就越多。另请参阅 udisks。
挂载
GVFS 使用的文件夹
/usr/lib/
包含gvfsd-*
文件,其中*
指的是各种受支持的文件系统类型。/usr/share/gvfs/mounts/
包含 GVFS 的挂载规则。要使用自己的规则,请创建~/.gvfs/mounts
。
其他安装包通常遵循 gvfs-* 模式,例如
- gvfs-mtp:使用 MTP 的媒体播放器和移动设备
- gvfs-gphoto2:使用 PTP 的数码相机和移动设备
- gvfs-afc:Apple 移动设备
文件管理器守护进程
大多数图形文件管理器都具有自动挂载程序运行时插入的设备的功能。如果支持,你可以通过在守护进程模式(即作为后台进程)下运行文件管理器,将此功能用于系统范围的解决方案。例如,当在 Openbox 中使用 PCManFM 时,以下命令将添加到 ~/.config/openbox/autostart
文件中
pcmanfm -d &
还需要配置文件管理器本身以进行卷管理(例如,当检测到特定文件类型挂载时,它将执行什么操作以及将启动哪些应用程序)。
独立
另一种选择是安装单独的挂载应用程序。使用此方法的优点是
- 与文件管理器相比,作为后台/守护进程进程运行时,可能需要更少的内存
- 它不是文件管理器特定的,允许自由添加、删除和切换它们
- 挂载不需要安装 gvfs,从而减少内存使用量。如果已安装,则可以屏蔽其守护进程,并且仅在需要时启动。例如,作为 mtp 的后备方案,这很有用,因为某些实现可能无法正常工作。
网络
- obexftpAUR:蓝牙设备挂载和文件传输(参见 蓝牙)
- gvfs-smb:适用于非 KDE 桌面的 Windows 文件和打印机共享(参见 Samba)
- kdenetwork-filesharing:适用于 KDE 的 Windows 文件和打印机共享(参见 Samba#KDE)
- sshfs:基于 SSH 文件传输协议的 FUSE 客户端
Windows 访问
如果使用 gvfs-smb,要访问 Windows/Cifs/Samba 文件共享,首先打开文件管理器,然后在路径名中输入以下内容,并根据需要更改 server_name
和 share_name
smb://server_name/share_name
Apple 访问
gvfs 中包含 AFP 支持。要访问 AFP 文件,首先打开文件管理器,然后在路径名中输入以下内容,并根据需要更改 server_name
和 share_name
afp://server_name/share_name
sftp 访问
gvfs 中还包含 SFTP 支持。要通过 sftp 访问文件夹,请打开文件管理器,然后在路径名中输入以下内容,并根据需要更改 user@server_name
和 folder_name
sftp://user@server_name/folder_name
WebDAV
对于 WebDAV,请安装 gvfs-dnssd。
davs://user@server_name/folder_name
缩略图预览
即使已安装列出的软件包,某些文件管理器也可能不支持缩略图。请查看相关文件管理器的文档。
你可能看不到远程存储(包括 MTP)的缩略图。检查文件管理器的设置,例如,对于 Thunar,必须将“显示缩略图:始终”设置为“始终”。
Dolphin 和 Konqueror 以外的文件管理器
这些软件包适用于大多数文件管理器,例如 PCManFM、SpaceFM、Thunar 和 xfeAUR。例外情况是在 KDE 桌面环境中使用的 Dolphin 和 Konqueror。
- tumbler:图像文件。在某些情况下,必须也安装此软件包才能将缩略图功能扩展到其他文件类型。
- ffmpegthumbnailer:视频文件
- ffmpeg-audio-thumbnailerAUR:音频文件
- webp-pixbuf-loader:
.webp
图像 - poppler-glib:Adobe
.pdf
文件 - freetype2:字体文件
- libgsf:
.odf
文件 - raw-thumbnailerAUR:
.raw
文件 - totem:视频文件和标记的音频文件(仅限 GNOME Files 和 Caja)
- evince 或 atril:
.pdf
文件 - gnome-epub-thumbnailer:
.epub
和.mobi
电子书文件 - mcomixAUR:
.cbr
漫画书存档 - folderpreviewAUR:目录缩略图
- f3d:3D 文件,包括 glTF、stl、step、ply、obj、fbx。
Dolphin 和 Konqueror (KDE)
参见 Dolphin#文件预览。
使用 PCManFM 获取其他文件类型的缩略图
PCManFM 开箱即用地支持图像缩略图。但是,为了查看其他文件类型的缩略图,PCManFM 使用位于 /usr/share/thumbnailers
中的文件提供的信息。提供缩略图的软件包通常会在 /usr/share/thumbnailers
中添加相应的 .thumbnail 文件。例如,为了获取 OpenDocument 文件的缩略图,你可以从官方存储库安装 libgsf。对于视频文件的缩略图,需要软件包 ffmpegthumbnailer。对于 PDF 文件,你可以从官方存储库安装 evince,它提供 evince-thumbnailer
以及 /usr/share/thumbnailers
中的相应文件。但是,如果你不想安装 evince
,你也可以使用 imagemagick 的 convert
命令复制 evince-thumbnailer
的功能。这可以通过在 /usr/share/thumbnailers
中创建一个带有 .thumbnailer 扩展名的新文件(例如:imagemagick-pdf.thumbnailer
)来实现,其内容如下
[Thumbnailer Entry] TryExec=convert Exec=convert %i[0] -background "#FFFFFF" -flatten -thumbnail %s %o MimeType=application/pdf;application/x-pdf;image/pdf;
convert
仅生成第一页的缩略图。这是 convert
特定的语法,与缩略图文件的语法无关。按照此示例,你可以通过创建自己的 .thumbnail 文件来指定自定义缩略图。请记住,%i
指的是输入文件(将制作其缩略图的文件),%o
指的是输出文件(缩略图图像),%s
指的是缩略图的大小。这些参数将由 PCManFM 自动替换为相应的数据并传递给缩略图程序。
压缩文件
要在文件管理器中提取压缩文件(如 tarball(.tar
和 .tar.gz
)),首先需要安装 GUI 归档器,例如 file-roller。有关更多信息,请参阅 应用程序列表/实用程序#归档和压缩工具。还必须安装其他软件包(如 unzip)以支持使用 zipped .zip
文件。安装归档器后,可以右键单击文件管理器中的文件以进行归档或提取。
压缩文件挂载在文件夹 /run/user/$(id -u)/gvfs/
下,挂载点自动创建,其名称包含文件的完整路径,其中所有 /
都替换为 %252F
,:
替换为 %253A
十六进制代码。
挂载的压缩文件 /full/path/to/file/name.zip
的路径示例
/run/user/$(id -u)/gvfs/archive:host=file%253A%252F%252F%252Ffull%252Fpath%252Fto%252Ffile%252Fname.zip
NTFS 读/写支持
请参阅 NTFS 文章。
桌面通知
某些文件管理器使用桌面通知来确认各种事件和状态,例如可移动媒体的挂载、卸载和弹出。
在不同的文件系统(外部驱动器)上启用回收站功能
为每个用户在文件系统的顶层创建 回收站目录 .Trash-<uid>
例如(挂载点:/media/sdc1,uid:1000,gid:1000)
# mkdir /media/sdc1/.Trash-1000
并 chown
它们
# chown 1000:1000 /media/sdc1/.Trash-1000
故障排除
尝试挂载驱动器时显示“未授权”
使用 udisks 的文件管理器需要 polkit 身份验证代理。请参阅 polkit#身份验证代理。
访问分区需要密码
访问其他分区或挂载的可移动媒体需要输入密码很可能是由于 udisks2 的默认权限设置。更具体地说,权限可能仅设置为 root 帐户,而不是用户帐户。有关详细信息,请参阅 Udisks#配置。
目录未在文件管理器中打开
你可能会发现,应用程序(不是文件管理器),例如 Audacious 或 Visual Studio Code,被设置为打开目录的默认应用程序——一个应用程序,在其桌面条目中指定它可以处理 inode/directory
MIME 类型,就可以成为默认应用程序。你可以使用以下命令查询打开目录的默认应用程序
$ xdg-mime query default inode/directory
为了确保目录在文件管理器中打开,请运行以下命令
$ xdg-mime default my_file_manager.desktop inode/directory
其中 my_file_manager.desktop
是你的文件管理器的桌面条目——例如 org.gnome.Nautilus.desktop
。
/usr/share/applications/mimeapps.list
[Default Applications] inode/directory=my_file_manager.desktop
D-Bus
某些其他应用程序改为使用 org.freedesktop.FileManager1
D-Bus 协议(例如 Firefox)。以下显示了当前安装的,支持此协议的服务列表
$ grep -R FileManager1 /usr/share/dbus-1/services
要更改打开的文件管理器,请将文件复制到 $XDG_DATA_HOME/dbus-1/services
。此外,在更改生效之前,请终止当前实现 D-Bus 服务的程序。
手动在 /etc/fstab 中创建的挂载点未显示
由于此 gvfs 提交,你需要将挂载点创建在 /media/your-user-name/
中。