PCManFM 是一个非常快速和轻量级的文件管理器,也是 LXDE 的标准文件管理器。它使用 GTK 作为其 UI,并使用 GVFS (在 GNOME 的 GIO 库)提供虚拟文件系统功能,例如文件回收站功能和挂载远程文件系统的功能。
PCManFM-Qt是使用Qt的版本,是[LXQt]] 的标准文件管理器。尽管使用 Qt作为UI工具包,但PCManFM-Qt保留了GVFS,而非使用KDE的 KIO [1]。从本质上讲,这两个文件管理器都与桌面环境无关。
安装
安装下列软件包之一:
- GTK 2: pcmanfm包
- GTK 3: pcmanfm-gtk3包
- Qt6: pcmanfm-qt包
可选组件:
开发版本
AUR中提供开发版本:
- GTK 2: pcmanfm-gitAUR
- Qt6: pcmanfm-qt-gitAUR
桌面管理
如果要用PCManFM进行桌面管理,比如设置壁纸和显示桌面图标,使用这个命令:
$ pcmanfm --desktop
窗口管理器提供的桌面菜单会被PCManFM提供的桌面菜单所替换。如果要还原,在桌面首选项的高级选项卡中勾选点击桌面时显示窗口管理器提供的菜单
选项。
桌面首选项
如果使用窗口管理器提供的桌面菜单,请输入以下命令以随时设置或修改桌面首选项:
$ pcmanfm --desktop-pref
可以考虑给这条命令绑定快捷键或添加到原生桌面菜单中以方便使用。
新建图标
文件可以直接拖放到桌面上。至于应用程序快捷方式,需要把它们的.desktop
文件复制到~/Desktop
文件夹;不能拖放.desktop
文件,否则就会是移动而不是复制,这会导致这个应用从应用启动器中消失。如果用命令行就应该是这样:
$ cp /usr/share/applications/name-of-application.desktop ~/Desktop
例如,下面的命令为 lxterminal包 创建了一个桌面快捷方式:
$ cp /usr/share/applications/lxterminal.desktop ~/Desktop
使用 XDG user directories 程序能创建自己的目录,无需再配置$HOME
环境变量。
守护进程模式
如果你想在后台运行PCManFM ( 比如说要自动挂载移动硬盘等可移动介质),使用:
$ pcmanfm --daemon-mode
一次只能有一个 PCManFM 实例作为守护进程运行。
如果自动挂载失败,请参见 udisks.
开机自启
其他特性和功能
经验不足的用户应该意识到,单独的文件管理器 ,尤其是当安装一个独立窗口管理器(如 Openbox)将无法提供完整桌面环境(如 Xfce和KDE )的用户所习惯的特性和功能。有关详细信息,请查看文件管理器功能一文。
提示与技巧
获取其他文件类型缩略图
设置终端模拟器
在 Edit > Preferences > Advanced 里面的 Tools > Open Current Folder in Terminal,你可以配置 PCManFM 调用的终端模拟器。
集成压缩包管理器
可以在 Edit > Preferences > Advanced 中设置集成的压缩包管理器。目前 PCManFM和PCManFM-Qt都支持 file-roller包, xarchiver包 (或者 xarchiver-gtk2包), engrampa包, ark包 [2] [3]. PCManFM-Qt 还支持 lxqt-archiver包,这是 LXQt 的默认选择。
将自定义项目添加到上下文菜单
PCManFM 支持桌面文件规范扩展 (DES-EMA),它允许您将任意项目添加到文件和目录的上下文菜单中。要添加你自己的项目,请创建(如果不存在)~/.local/share/file-manager/actions/
文件夹并向其中添加.desktop
文件:
~/.local/share/file-manager/actions/action.desktop
[Desktop Entry] Type=Action Profiles=profile_id Name=Action name in English Name[cc]=Action name in Language Icon=Icon name # Example: Icon=text-editor [X-Action-Profile profile_id] MimeTypes=MIME-types (semicolon separated) Exec=command and arguments # Example: Exec=gedit %f
你可以通过列出其id(以分号分隔),将一个或多个配置文件绑定到单个操作。配置文件允许你指定要为哪些文件类型执行哪些命令,因此同一操作可以根据所选文件类型运行不同的命令。除了特定的 MIME 类型(例如:text/plain
文本文件),你可以使用以下常规类型:
-
all/allfiles
--文件; -
inode/directory
-- 文件夹 -
all/all
-- 文件和文件夹。
“创建新的...”模板
模板文件保存在 ~/Templates
,点击文件>新建...可以选择相应的模板。默认的模板是“创建文件夹”和“创建空白文件”。
缩略图
和其他一些文件管理器(例如 Nautilus)一样,PCManFM 将加载文件夹中所有图像的预览。为了不滥用 HDD,请将文件夹中的图像数量保持在 100 个之内。
故障排除
“打开方式”对话框窗口为空
如果您在打开方式对话框中没有看到任何可供选择的应用程序,那么你可以试着卸载 gnome-menus包 然后安装 lxmenu-data包。此外,设置如下环境变量:
XDG_MENU_PREFIX=lxde-
XDG_CURRENT_DESKTOP=LXDE
列表中没有 "应用"
删掉 $HOME/.cache/menus
文件夹里的东西,然后重新运行 PCManFM。
PCManFM 需要设置XDG_MENU_PREFIX
环境变量。变量的值应与/etc/xdg/menus/
文件夹中文件的开头部分匹配。
参考 #“打开方式”对话框窗口为空.
参考获取更多信息[4] 以及Linux Mint论坛的[5](特别推荐)
无图标
如果你用的是窗口管理器而不是桌面环境,而文件夹和文件没有图标,你需要指定 GTK 图标主题。
例如,你安装了 oxygen-icons包,在 ~/.gtkrc-2.0
或者 /etc/gtk-2.0/gtkrc
里添加这一行:
gtk-icon-theme-name = "oxygen"
或者,用一个不同的主题(gnome,hicolor和 locolor 三个主题除外)。用下面这个命令查看安装了的图标主题:
$ ls ~/.icons/ /usr/share/icons/
如果看着都不爽,那就用这个命令查看所有可以安装的图标主题,选一个来安装:
$ pacman -Ss icon-theme
鼠标按钮不能触发 "上一/下一 文件夹" 功能
用 Xbindkeys 来修复这个功能。
安装 xbindkeys包、xvkbdAUR,在 ~/.xbindkeysrc
里添加以下内容:
~/.xbindkeysrc
# Sample .xbindkeysrc for a G9x mouse. "/usr/bin/xvkbd -text '\[Alt_L]\[Left]'" b:8 "/usr/bin/xvkbd -text '\[Alt_L]\[Right]'" b:9
按键代码可以通过 xorg-xev包 获取。
最后在 ~/.xinitrc
里添加以下内容来在登录时触发 xbindkeys。
xbindkeys &
--desktop 参数不生效或使X-server崩溃
确保你有 ~/.config/pcmanfm
文件夹的所有权和写权限。
通过使用 --desktop-pref
参数或者修改 ~/.config/pcmanfm/default/pcmanfm.config
来设置桌面壁纸来解决问题。
终端模拟器的高级配置没有保存
请设置 libfm 配置文件的权限:
$ chmod -R 755 ~/.config/libfm $ chmod 644 ~/.config/libfm/libfm.conf
记住文件排序设置
在 View > Sort Files 里可以设置文件排序,但是如果要让 PCManFM 记住这个设置,需要打开 Edit > Preferences 然后再关掉,这样会让当前的sort_type 和 sort_by 的值写入 ~/.config/pcmanfm/LXDE/pcmanfm.conf
文件。
挂载设备时候提醒 "Not authorized"
在 /etc/polkit-1/rules.d/00-mount-internal.rules
文件里添加这个 polkit 规则:
/etc/polkit-1/rules.d/00-mount-internal.rules
polkit.addRule(function(action, subject) { if ((action.id == "org.freedesktop.udisks2.filesystem-mount-system" && subject.local && subject.active && subject.isInGroup("storage"))) { return polkit.Result.YES; } });
并且把你的用户添加到 storage
用户组里:
# usermod -aG storage username
不支持操作
如果您忘记安装可选的依赖项 gvfs包,请先检查,否则请参阅会话权限一文。
系统重新启动时忘记密码
如果合适,安装一个 keyring 应用程序,比如 GNOME/Keyring,KDE Wallet 或者 lxqt_walletAUR 用于 网络共享或SSH agent。