Thunar

来自 ArchWiki
(重定向自 Thunar Volume Manager

来自项目 主页

Thunar 是 Xfce 桌面环境的现代文件管理器。Thunar 从底层设计为快速且易于使用。其用户界面简洁直观,默认情况下不包含任何令人困惑或无用的选项。Thunar 快速响应,启动时间和文件夹加载时间都很好。

安装

安装 thunar 软件包。Thunar 是 xfce4 组的一部分,也是 Xfce 桌面环境的默认文件管理器。

插件和附加组件

  • Gnome Virtual File System — 如果已安装,Thunar 将显示回收站、可移动媒体和远程文件系统 (mtp/smb)。有关更多详细信息,请参阅 文件管理器功能#挂载
https://wiki.gnome.org/Projects/gvfs || gvfs
  • Thunar Archive Plugin — 插件,允许您使用上下文菜单项创建和提取存档文件。它不直接创建或提取存档,而是充当其他程序的前端,例如 File Roller (file-roller)、Ark (ark)、Xarchiver (xarchiver) 或 Engrampa (engrampa)。是 xfce4-goodies 的一部分。
https://goodies.xfce.org/projects/thunar-plugins/thunar-archive-plugin || thunar-archive-plugin
  • Thunar Media Tags Plugin — 插件,允许您查看有关媒体文件的详细信息。它还具有批量重命名器,并允许编辑媒体标签。它支持 ID3(MP3 文件格式的系统)和 Ogg/Vorbis 标签。是 xfce4-goodies 的一部分。
https://goodies.xfce.org/projects/thunar-plugins/thunar-media-tags-plugin || thunar-media-tags-plugin
  • Thunar Shares Plugin — 插件,允许您使用 Thunar 中的 Samba 快速共享文件夹,而无需 root 访问权限。另请参阅 如何配置方向
https://goodies.xfce.org/projects/thunar-plugins/thunar-shares-plugin || thunar-shares-plugin
https://goodies.xfce.org/projects/thunar-plugins/thunar-volman || thunar-volman
  • Tumbler — 用于生成缩略图的外部程序。另请安装 ffmpegthumbnailer 以启用视频缩略图。
https://gitlab.xfce.org/xfce/tumbler || tumbler
  • libgsf — GNOME 结构化文件库是一个用于读取和写入结构化文件格式的实用程序库。如果需要支持 odf 缩略图,请安装。
https://directory.fsf.org/wiki/Libgsf || libgsf
  • RAW thumbnailer — 一个轻量级且快速的 raw 图像缩略图生成器,用于显示 raw 缩略图。
https://github.com/erlendd/raw-thumbnailer || raw-thumbnailerAUR
  • Extra thumbnailers — Tumbler 的自定义缩略图生成器。
https://docs.xfce.org/xfce/tumbler/available_plugins/ || tumbler-extra-thumbnailersAUR
  • Folder thumbnailer — 通过 Tumbler 支持自定义文件夹缩略图。
https://github.com/j-james/thunar-folder-thumbnails || tumbler-folder-thumbnailerAUR
  • STL thumbnailer — 支持为 Tumbler 生成 STL 缩略图。
https://github.com/j-james/thunar-stl-thumbnails || tumbler-stl-thumbnailerAUR
  • webp-pixbuf-loadergdk-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 卷管理器

如果安装了 gvfsthunar-volman,则可以将 Thunar 配置为在连接媒体时自动运行命令。对于通常遵循 MTP 的移动设备,还需要额外的 gvfs-mtp 软件包。

提示: 要让 Thunar 处理自动挂载,必须在 守护进程模式 下启动 thunar。

配置

它也可以配置为在连接相机和音频播放器时执行某些操作。安装插件后

  1. 启动 Thunar 并转到编辑 > 首选项
  2. 在“高级”选项卡下,选中“启用卷管理”
  3. 单击配置并选中以下项目
    • 热插拔时挂载可移动驱动器。
    • 插入时挂载可移动媒体。
  4. 还要进行所需的更改(请参阅下面的示例)

这是使 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 * 目录

搜索文件和文件夹

要使用此操作,您需要安装 catfishplocatezeitgeist 依赖项对于想要使用预构建索引数据库的用户是可选的。

名称 命令 文件模式 如果选择包含则出现
搜索 catfish --path=%f * 目录

扫描病毒

要使用此操作,您需要安装 clamavclamtk

名称 命令 文件模式 如果选择包含则出现
扫描病毒 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 共享)。要启用此功能,请确保已安装 gvfssshfs(以及如果您需要 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,请尝试安装不同的自动挂载器,例如 udevilAURudiskie。后者应该是首选,因为它使用 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 设置为另一个文件夹。

参见