Специальные URI от Nautilus

Где эти специальные URI, используемые в Nautilus, определенные в Ubuntu?

recent:/// trash:/// x-nautilus-desktop:/// computer:/// burn:/// 

Они могут мгновенно открывать специальные местоположения в Наутилусе, введя их в строке пути.

И почему это не работает, когда я открываю Nautilus как root (впервые, когда я вижу, что у root нет привилегий что-то делать)?

2 Solutions collect form web for “Специальные URI от Nautilus”

EDIT После того, как я сделал еще несколько копаний, я обнаружил, что вы можете запустить nautilus как root и получить доступ к специальным URI с помощью dbus. Команда будет

 sudo dbus-launch nautilus 

И тогда все URI доступны. Честно говоря, я не 100%, почему это работает, но некоторые из исходной информации, которую я нашел ниже, могут по-прежнему быть полезными.


Причина, по которой эти URI существуют, заключается в том, что Nautilus использует виртуальную файловую систему под названием Gnome Virtual File System (gvfs), которая построена поверх другой виртуальной файловой системы FUSE. В частности, эти URI настраиваются в каталоге /usr/lib/gvfs/ именем gvfsd- *. Это двоичные файлы, поэтому не пытайтесь их редактировать.

Когда вы монтируете общий ресурс Samba с помощью Nautilus, он использует команду gvfsd-mount (хранящуюся в /usr/bin ) для монтирования указанного вами ресурса. Затем этот ресурс монтируется в /run/user/<UID>/gvfs/ где ваш идентификатор пользователя (обычно 1000 для однопользовательских систем).

Что касается того, что root может использовать эти URI, Ubuntu, и я предполагаю другие дистрибутивы, настраивает плавкий предохранитель, поэтому root не может использовать виртуальную файловую систему по соображениям безопасности. Вы заметите, что в папке /run/user нет директории 0 для пользователя root. Файл /etc/fuse.conf по умолчанию не настроен, чтобы разрешить пользователю root . Это означает, что если ваш пользователь монтирует общий ресурс, даже root-пользователь не может просматривать общий ресурс, не настраивая Fuse, чтобы разрешить его.

Я на самом деле не тестировал предоставление корневого доступа к файловой системе Fuse или специальным URI, но вам может быть повезло настроить ее, как описано в этой ссылке, или прочитать страницу руководства Fuse .

Извините за ответ RTFM, но я не смог найти окончательное решение, и это зависит от того, какую версию Ubuntu вы используете как некоторые из каталогов / команд, измененных в последних версиях.

Не много, но вот что-то для всех:

На терминале или Alt + F2:

 gksudo dbus-launch nautilus computer:/// 

В корневой системе вам не нужны «gksudo» или «dbus-launch»,

Некоторые примеры:

 computer:/// - objects for each mounted device, plus the network network:/// - available networks to browse burn:/// - a virtual folder for burning data CDs/DVDs smb:/// - available windows/samba network resources x-nautilus-desktop:/// - desktop objects and icons file:/// - local files trash:/// - local trash directory themes:/// - displays all the themes that are available in the GNOME Desktop fonts:/// - shows fonts recent:/// - shows recent files 

С другой стороны, на этом сайте показано, как создать URI для вашего скрипта или программы, которая работает на firefox и gnome. Есть довольно классный примерный сценарий, который вы можете использовать в качестве ссылки в зависимости от ваших потребностей.

Интеграция нового обработчика схемы URI в Gnome и Firefox

  • Терминал Ubuntu закрывается после запуска скрипта
  • Выключение так быстро на iMac
  • Может ли USB-накопитель на 8 ГБ запускать Linux? Если да, какой тип?
  • Почему я не могу подключиться к скрытому SSID в Edubuntu?
  • Сбой плагина Java на Ubuntu 16.04 / Firefox ESR 52.2.0
  • Ubuntu - на устройстве нет места (NTFS)
  • Как я могу определить, будет ли dd стирать мой жесткий диск?
  • Команда Linux для переключения пользователя с паролем в качестве параметра
  • wubi плюсы и минусы
  • Ubuntu 13.10 большая проблема с привилегиями
  • Почему для доступа к SD-карте требуется аутентификация?
  • Interesting Posts
    Linux и Unix - лучшая ОС в мире.