File manager functionality (Русский)
В этой статье описываются дополнительные программные пакеты, необходимые для расширения возможностей и функций файловых менеджеров, в частности, где используются оконные менеджеры такие как Openbox. Если необходимо, также предусмотрена возможность доступа к разделам и съемным носителям информации (например флешкам) без пароля.
Обзор
Файловый менеджер сам по себе не будет предоставлять возможности, к которым привыкли пользователи сред рабочего стола, таких как Xfce или KDE. Это потому, что дополнительные пакеты программного обеспечения надо будет включить в данный файловый менеджер для:
- Отображения и доступа к другим разделам
- Отображения, монтирования, и доступа к съёмным носителям (таким, как USB-флешки, оптические диски, и цифровые камеры)
- Включения обмена информацией с помощью сети/общих сетей, с другими установленными операционными системами
- Включения миниатюр для файлов
- Создания и распаковки файлов из архива
- Автоматического монтирования сменных носителей
Если файловый менеджер устанавливается как часть полного окружения рабочего стола, эти пакеты, как правило, устанавливаются автоматически. Следовательно, если файловый менеджер был установлен для автономного оконного менеджера, то, как и в случае с самим оконным менеджером, будут предоставляться только базовые функции. Дальше пользователь сам определяет характер и степень функциональных возможностей, которые нужно добавить.
Дополнительные возможности
Если вы планируете использовать легковесную среду, имейте в виду, что чем больше возможностей и функций у файлового менеджера, тем больше он использует памяти. Смотрите также udisks.
Монтирование
- Виртуальная Файловая Система Gnome (gvfs) предоставляет функции монтирования и корзины. GVFS использует udisks2 для монтирования, он является рекомендуемым решением для большинства файловых менеджеров.
Каталоги, которые использует GVFS:
-
/usr/lib/gvfs/
содержит файлыgvfsd-*
, где*
относится к различным поддерживаемым типам файловых систем. -
/usr/share/gvfs/mounts/
содержит правила монтирования для GVFS. Для использования собственных правил, создайте~/.gvfs/mounts
.
Дополнительные пакеты для установки обычно имеют имя в формате gvfs-*, например:
- gvfs-mtp: медиа-плееры и мобильные устройства, которые используют MTP
- gvfs-gphoto2: цифровые фотоаппараты и мобильные устройства, которые используют PTP
- gvfs-afc: мобильные устройства Apple
Демон файлового менеджера
Во-первых, просто добавьте в автозагрузку файловый менеджер или запустите его в режиме демона (то есть в качестве фонового процесса). Например, при использовании PCManFM в Openbox, следующая команда может быть добавлена в файл ~/.config/openbox/autostart
:
pcmanfm -d &
Также нужно настроить сам файловый менеджер в отношении управления томами (например, то, что он будет делать и какие приложения будут запущены, когда некоторые типы файлов будут обнаружены при монтировании).
Автономный режим
Другой вариант заключается в установке отдельного приложения для монтирования разделов. Преимущество такого варианта:
- Может потребоваться меньше памяти для запуска в качестве фонового процесса/демона по сравнению с файловым менеджером
- Не специфично для файлового менеджера, что позволяет его свободно добавлять, удалять и менять
- gvfs можно не устанавливать, что уменьшит использование памяти.
Сети
- obexftpAUR: Монтирование устройств Bluetooth и передача файлов (смотрите Bluetooth)
- gvfs-smb: Совместное использование принтеров и файлов Windows для Не-KDE рабочих сред (смотрите Samba)
- kdenetwork-filesharing: Совместное использование принтеров и файлов Windows для KDE (смотрите Samba#KDE)
- sshfs: FUSE-клиент на основе протокола передачи файлов SSH
Доступ к Windows
При использовании gvfs-smb, чтобы получить доступ к общим файлам Windows/CIFS/Samba сначала откройте файловый менеджер, и введите следующую команду в адресной строке, изменив имя_сервера
и имя_общего_ресурса
соответственно:
smb://имя_сервера/имя_общего_ресурса
Доступ к Apple
Поддержка AFP включена в gvfs, для доступа к файлам AFP начала откройте файловый менеджер, и введите следующую команду в адресной строке, изменив имя_сервера
и имя_общего_ресурса
соответственно:
afp://имя_сервера/имя_общего_ресурса
Превью изображений
Некоторые файловые менеджеры не поддерживают миниатюры даже при установке указанных пакетов. Сверьтесь с документацией интересующего вас файлового менеджера.
Другие файловые менеджеры, кроме Dolphin и Konqueror
Эти пакеты применяются для большинства файловых менеджеров, таких как PCManFM, SpaceFM, Thunar и xfeAUR. Исключение составляют Dolphin и Konqueror, использующиеся в среде рабочего стола KDE.
- tumbler: Графические файлы. Необходимо поставить чтобы расширить возможности для отображения миниатюр файлов других типов
-
poppler-glib: Adobe файлы
.pdf
- ffmpegthumbnailer: Видео файлы
- freetype2: Файлы шрифтов
-
libgsf: Файлы
.odf
-
raw-thumbnailerAUR:
.raw
файлы - totem: Видео файлы и тэги аудио файлов (только GNOME Files, Nemo и Caja)
-
evince или atril:
.pdf
файлы -
gnome-epub-thumbnailer:
.epub
b.mobi
файлы -
mcomixAUR:
.cbr
comicbook архивы - folderpreviewAUR: предпросмотр папок
- f3d: 3D-файлы, в том числе glTF, stl, step, ply, obj, fbx.
Dolphin и Konqueror (KDE)
Смотрите Dolphin#File previews.
Использование PCManFM для получения превью для других типов файлов
PCManFM поддерживает превью из коробки. Однако для поддержки миниатюр для других типов файлов PCManFM использует информацию из файлов, расположенных в /usr/share/thumbnailers
. Пакеты, предоставляющие генератор превью, обычно добавляют соответствующий файл .thumbnailer в /usr/share/thumbnailers
. Например, чтобы получить превью для файлов OpenDocument, вы можете установить пакет libgsf из официальных репозиториев. Для преью видеофайлов нужен пакет ffmpegthumbnailer. Для PDF-файлов можно установить evince, который предоставляет evince-thumbnailer
и соответствующий файл в /usr/share/thumbnailers
. Однако если вы предпочтёте не устанавливать evince
, вы также можете воссоздать функциональность evince-thumbnailer
с помощью команды convert
из пакета imagemagick. Это достигается путём создания файла с расширением .thumbnailer (например, imagemagick-pdf.thumbnailer
) в каталоге /usr/share/thumbnailers
с таким содержимым:
[Thumbnailer Entry] TryExec=convert Exec=convert %i[0] -background "#FFFFFF" -flatten -thumbnail %s %o MimeType=application/pdf;application/x-pdf;image/pdf;
convert
сгенерирует превью только для первой страницы. Этот синтаксис специфичен для convert
и не имеет отношения к другим генераторам превью.По этому примеру вы можете указать собственные генераторы превью, создавая свои файлы .thumbnailer. Имейте в виду, что %i
относится к входному файлу (файлу, для которого будет создана его миниатюра), %o
к выходному файлу (миниатюре изображения) и %s
к размеру превью. В этих параметрах будут автоматически подставлены нужные значения и переданы генератору из PCManFM.
Запакованные файлы
Чтобы извлечь сжатые файлы, такие как "тарболы" (.tar
и .tar.gz
) с помощью файлового менеджера, сначала надо установить архиватор с графическим интерфейсом, например file-roller. Для получения дополнительной информации смотрите List of applications/Utilities#Archiving and compression tools. Дополнительный пакет, например unzip также должен быть установлен, для поддержки распаковки файлов .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-3G (Русский).
Настольные уведомления
Некоторые файловые менеджеры используют настольные уведомления для подтверждения различных событий и состояний, например: монтирование, размонтирование и отсоединение съемных носителей.
Включение функции корзины на разных файловых системах (внешние диски)
Создайте каталог Корзины .Trash-<uid>
для всех пользователей на верхнем уровне файловой системы:
Например (точка монтирования: /media/sdc1, uid: 1000, gid: 1000):
# mkdir /media/sdc1/.Trash-1000
и смените владельца с помощью chown
:
# chown 1000:1000 /media/sdc1/.Trash-1000
Решение проблем
При попытке монтирования дисков выдаётся "Not Authorized" (нет авторизации)
Файловые менеджеры, использующие udisks, требуют агент аутентификации polkit. Смотрите polkit#Authentication agents.
Для доступа к разделам требуется пароль
Необходимость ввода пароля для доступа к другим разделам или монтирования съемных носителей, вероятно, будет из-за настроек разрешения по умолчанию в udisks2. Более конкретно разрешение может быть установлен только в учетной записи администратора, а не учетной записи пользователя. Для подробностей смотрите Udisks#Настройка.
Каталоги не открываются в файловом менеджере
Вы можете обнаружить, что приложение, которое не является файловым менеджером, например Audacious, устанавливается в качестве приложения по умолчанию для открытия каталогов — приложение указывает MIME тип inode/directory
в его desktop записи по умолчанию. Вы можете узнать текущее приложение по умолчанию для открытия каталогов с помощью следующей команды:
$ xdg-mime query default inode/directory
Для того, чтобы убедиться, что каталоги открываются в файловом менеджере, выполните следующую команду:
$ xdg-mime default мой-файловый-менеджер.desktop inode/directory
где мой-файловый-менеджер.desktop
запись desktop является вашим файловым менеджером — например org.gnome.Nautilus.desktop
.
/usr/share/applications/mimeapps.list
[Default Applications] inode/directory=мой-файловый-менеджер.desktop
D-Bus
Некоторые приложения используют вместо этого D-Bus протокол org.freedesktop.FileManager1
(например Firefox). Следующая команда покажет список установленных служб, поддерживающих этот протокол:
$ grep -R FileManager1 /usr/share/dbus-1/services
Чтобы указать, какой файловый менеджер открывать, скопируйте соответствующий файл оттуда в $XDG_DATA_HOME/dbus-1/services
. Дополнительно, чтобы применить изменения, может понадобиться завершить программу, реализующую D-Bus службу в данный момент.