Thunar
来自项目主页
- Thunar 是 Xfce 桌面环境的现代文件管理器。Thunar 从零开始设计,旨在快速且易于使用。其用户界面简洁直观,默认情况下不包含任何令人困惑或无用的选项。Thunar 速度快、响应迅速,启动时间和文件夹加载时间都很好。
安装
安装 thunar 软件包。Thunar 是 xfce4 组的一部分,也是 Xfce 桌面环境的默认文件管理器。
插件和附加组件
- Gnome 虚拟文件系统 — 如果安装,Thunar 将显示回收站、可移动媒体和远程文件系统 (
mtp
/smb
)。有关更多详细信息,请参阅文件管理器功能#挂载。
- Thunar 归档插件 — 此插件允许您使用上下文菜单项创建和提取归档文件。它不直接创建或提取归档文件,而是充当其他程序(如 File Roller (file-roller)、Ark (ark)、Xarchiver (xarchiver) 或 Engrampa (engrampa))的前端。属于 xfce4-goodies 的一部分。
- Thunar 媒体标签插件 — 此插件允许您查看有关媒体文件的详细信息。它还具有批量重命名器,并允许编辑媒体标签。它支持 ID3(MP3 文件格式的系统)和 Ogg/Vorbis 标签。属于 xfce4-goodies 的一部分。
- https://goodies.xfce.org/projects/thunar-plugins/thunar-media-tags-plugin || thunar-media-tags-plugin
- Thunar 共享插件 — 此插件允许您从 Thunar 使用 Samba 快速共享文件夹,而无需 root 访问权限。另请参阅如何配置方向。
- Thunar 卷管理器 — 自动管理 Thunar 中的可移动设备。属于 xfce4 的一部分。
- Tumbler — 生成缩略图的外部程序。另请安装 ffmpegthumbnailer 以启用视频缩略图。
- https://gitlab.xfce.org/xfce/tumbler || tumbler
- libgsf — GNOME 结构化文件库是一个用于读取和写入结构化文件格式的实用程序库。如果需要支持 odf 缩略图,请安装。
- https://directory.fsf.org/wiki/Libgsf || libgsf
- RAW 缩略图生成器 — 一个轻量级且快速的 raw 图像缩略图生成器,用于显示 raw 缩略图。
- https://github.com/erlendd/raw-thumbnailer || raw-thumbnailerAUR
- 额外的缩略图生成器 — Tumbler 的自定义缩略图生成器。
- https://docs.xfce.org/xfce/tumbler/available_plugins/ || tumbler-extra-thumbnailersAUR
- 文件夹缩略图生成器 — 通过 Tumbler 支持自定义文件夹缩略图。
- https://github.com/j-james/thunar-folder-thumbnails || tumbler-folder-thumbnailerAUR
- STL 缩略图生成器 — 支持为 Tumbler 生成 STL 缩略图。
- https://github.com/j-james/thunar-stl-thumbnails || tumbler-stl-thumbnailerAUR
- webp-pixbuf-loader — gdk-pixbuf2 的可选依赖项,它为默认缩略图生成器添加了生成 webp 缩略图的支持。
- https://github.com/aruiz/webp-pixbuf-loader || webp-pixbuf-loader
配置
配置快捷键
要配置快捷键,请编辑文件 ~/.config/Thunar/accels.scm
。要配置 Thunar 的隐藏变量,请使用 xfconf-query -c thunar -l -v
。
更改默认排序行为
在 Thunar 中,可以更改默认排序顺序。必须编辑 /etc/xdg/xfce4/xfconf/xfce-perchannel-xml/thunar.xml
文件,甚至很可能需要创建它。以下是按名称升序排序的示例内容
/etc/xdg/xfce4/xfconf/xfce-perchannel-xml/thunar.xml
<?xml version="1.0" encoding="UTF-8"?> <channel name="thunar" version="1.0"> <property name="last-sort-order" type="string" value="GTK_SORT_ASCENDING" locked="*" unlocked="root"/> <property name="last-sort-column" type="string" value="THUNAR_COLUMN_NAME" locked="*" unlocked="root"/> </channel>
Thunar 卷管理器
如果同时安装了 gvfs 和 thunar-volman,则可以将 Thunar 配置为在连接媒体时自动运行命令。对于通常遵循 MTP 的移动设备,还需要额外的 gvfs-mtp 软件包。
配置
它也可以配置为在连接相机和音频播放器时执行某些操作。安装插件后
- 启动 Thunar 并转到编辑 > 首选项
- 在“高级”选项卡下,选中“启用卷管理”
- 单击配置并选中以下项目
- 热插拔时挂载可移动驱动器。
- 插入时挂载可移动媒体。
- 还要进行所需的更改(请参阅以下示例)
以下是使 Amarok 播放音频 CD 的示例设置。
Multimedia - Audio CDs: amarok --cdplay %d
自定义操作
本节介绍可以通过 编辑 -> 配置自定义操作
访问的有用自定义操作,这些操作存储在 ~/.config/Thunar/uca.xml
中。Thunar wiki 中列出了更多示例。此外,这篇博客文章提供了全面的自定义操作集合。
在此处打开终端
“在此处打开终端”是安装时的唯一操作。告诉 exo 使用哪个终端
~/.config/xfce4/helpers.rc
TerminalEmulator=terminal
名称 | 命令 | 文件模式 | 如果选择包含则显示 |
---|---|---|---|
在此处打开终端 | exo-open --working-directory %f --launch TerminalEmulator |
* | 目录 |
搜索文件和文件夹
要使用此操作,您需要安装 catfish。plocate 和 zeitgeist 依赖项对于想要使用预构建索引数据库的用户是可选的。
名称 | 命令 | 文件模式 | 如果选择包含则显示 |
---|---|---|---|
搜索 | catfish --path=%f |
* | 目录 |
扫描病毒
名称 | 命令 | 文件模式 | 如果选择包含则显示 |
---|---|---|---|
扫描病毒 | clamtk %F |
* | 全选 |
链接到 Dropbox
名称 | 命令 | 文件模式 | 如果选择包含则显示 |
---|---|---|---|
链接到 Dropbox | ln -s %f /path/to/DropboxFolder |
* | 目录、其他文件 |
请注意,当使用许多自定义操作将文件和文件夹符号链接到特定位置时,将它们放入上下文菜单的“发送到”文件夹中可能很有用,以避免菜单本身变得臃肿。这很容易实现,并且需要在 ~/.local/share/Thunar/sendto
中为每个要执行的操作创建一个 .desktop 文件。假设我们想将上面的 Dropbox 符号链接操作放入“发送到”,我们创建一个 dropbox_folder.desktop
文件,内容如下。新的应用操作将在重启 Thunar 后生效。
[Desktop Entry] Type=Application Version=1.0 Encoding=UTF-8 Exec=ln -s %f /path/to/DropboxFolder Icon=/usr/share/icons/dropbox.png Name=Dropbox
技巧和窍门
使用 Thunar 浏览远程位置
自 Xfce 4.8 (Thunar 1.2) 起,可以直接在 Thunar 中浏览远程位置(如 FTP 服务器或 Samba 共享)。要启用此功能,请确保已安装 gvfs 和 sshfs(以及如果您需要 SMB/CIFS 支持,则安装 gvfs-smb)。“网络”条目在 Thunar 的侧边栏中可见,可以使用位置对话框(使用 Ctrl+l
打开)中的以下 URI 方案打开远程位置:smb://、ftp://、ssh://、sftp://、davs:// & 后跟服务器主机名或 IP 地址。
没有 NFS 共享的 URI 方案,但如果您正确设置 fstab,Thunar 可以发出 mount
命令。
/etc/fstab
# nas1 server nas1:/c/home /media/nas1/home nfs noauto,user,_netdev,bg 0 0
这里重要的是 noauto
,它可以防止在您单击共享之前挂载共享;user
,它允许任何用户挂载(和卸载)共享;_netdev
,它使网络连接成为先决条件;最后,bg
,它将挂载操作放在后台,因此如果您的服务器需要一些启动时间,您将不必处理超时消息并重新单击直到它工作。
- 如果要永久存储远程文件系统位置的密码,则必须安装 GNOME Keyring。
- 可能有必要将挂载点指定为
/media
的子文件夹,以便 Thunar 为任何非 root 用户显示新设备。
在守护进程模式下启动
Thunar 可以在守护进程模式下运行。这有几个优点,包括 Thunar 启动速度更快、Thunar 在后台运行并且仅在必要时打开窗口(例如,当插入闪存驱动器时),以及让 Thunar 处理可移动媒体的自动挂载。
确保命令 thunar --daemon
在登录时自动启动。有关更多详细信息,请参阅 Xfce 和 自动启动。
解决冷启动缓慢问题
有些人仍然遇到 Thunar 首次启动需要很长时间的问题。这是由于 gvfs 检查网络,阻止 Thunar 启动,直到 gvfs 完成其操作。要更改此行为,请编辑 /usr/share/gvfs/mounts/network.mount
并将 AutoMount=true
更改为 AutoMount=false
。
隐藏侧边栏中的快捷方式
有一个隐藏菜单可以隐藏侧边栏中的快捷方式。
在侧边栏中没有快捷方式的地方(例如在“设备”部分标签上)单击鼠标右键。然后您将获得一个弹出菜单,您可以在其中取消选中您不想显示的项目。
在 Thunar 中分配键盘快捷键
参见GTK#键盘快捷键。
显示 fstab 中定义的分区
默认情况下,Thunar 不会在设备中显示 /etc/fstab
中定义的除根分区之外的任何分区。
我们可以通过将选项 x-gvfs-show
添加到我们希望显示的分区的 fstab 来更改此设置。
故障排除
自动挂载大型外部驱动器
如果 Thunar 拒绝挂载大型可移动媒体(大小 > 1TB),即使已安装 thunar-volman 和 gvfs,请尝试安装不同的自动挂载器,例如 udevilAUR 或 udiskie。后者应该是首选,因为它使用 udisks2,因此与 gvfs 兼容。要启动支持 udisks2 的 udiskie,请将以下行添加到您的自动启动文件
udiskie -2 &
Tumblerd 挂起,占用过多 CPU
Tumblerd,即监视文件系统并在需要制作缩略图时通知系统的服务,可能会陷入循环,使用 100% 的系统 CPU;请参阅错误报告。以下脚本是防止这种情况发生的临时解决方法。复制并粘贴到 .sh 文件中,将其保存在您主目录中的某个位置,将该文件标记为可执行文件,然后设置系统以在系统启动时自动启动它。
#!/bin/bash period=20 tumblerpath="/usr/lib/*/tumbler-1/tumblerd" # The * here should find the right one, whether 32 and 64-bit cpu_threshold=50 mem_threshold=20 max_strikes=2 # max number of above cpu/mem-threshold's in a row log="/tmp/tumblerd-watcher.log" if [[ -n "${log}" ]]; then cat /dev/null > "${log}" exec >"${log}" 2>&1 fi strikes=0 while sleep "${period}"; do while read pid; do cpu_usage=$(ps --no-headers -o pcpu -f "${pid}"|cut -f1 -d.) mem_usage=$(ps --no-headers -o pmem -f "${pid}"|cut -f1 -d.) if [[ $cpu_usage -gt $cpu_threshold ]] || [[ $mem_usage -gt $mem_threshold ]]; then echo "$(date +"%F %T") PID: $pid CPU: $cpu_usage/$cpu_threshold %cpu MEM: $mem_usage/$mem_threshold STRIKES: ${strikes} NPROCS: $(pgrep -c -f ${tumblerpath})" (( strikes++ )) if [[ ${strikes} -ge ${max_strikes} ]]; then kill "${pid}" echo "$(date +"%F %T") PID: $pid KILLED; NPROCS: $(pgrep -c -f ${tumblerpath})" strikes=0 fi else strikes=0 fi done < <(pgrep -f ${tumblerpath}) done
回收站/网络图标随机消失
确保所有 Thunar 实例都在 gvfs 之后启动。[1] 对于 thunar --daemon
,您可以创建一个包装器,该包装器等待 GVFS 处于活动状态
/usr/local/bin
应该在 $PATH
中的 /usr/bin
之前。/usr/local/bin/Thunar
#!/bin/bash if [[ $1 == --daemon ]]; then until pgrep gvfs >/dev/null; do sleep 1 done exec /usr/bin/Thunar "$@" else exec /usr/bin/Thunar "$@" fi
未认证以挂载文件系统
参见文件管理器功能#故障排除。
Thunar 新窗口或标签页打开速度过慢
可能是您在设置为 XDG_TEMPLATES_DIR
的文件夹下有许多文件。参见XDG 用户目录。
解决方案是将文件从 XDG_TEMPLATES_DIR
的任何文件夹移动到另一个文件夹,或将 XDG_TEMPLATES_DIR
设置为另一个文件夹。
参见
- Thunar 项目页面
- Thunar 卷管理器 项目页面
- 此插件列表
- 许多设置(例如在标题中显示完整路径)可通过
xfconf-query
获得。有关更多详细信息,请参阅此列表。