Как заставить gvfs автоматически монтировать съемные устройства, когда не используется Unity или Gnome Shell

В 13.04 я переключился с использования Unity на использование сеанса Gnome с i3. Моя установка основана на , этой .

$ cat /usr/share/xsessions/gnome-i3.desktop
[Desktop Entry]
Name=GNOME with i3
Comment=A GNOME fallback mode session using i3 as the window manager.
Exec=gnome-session --session=i3
TryExec=gnome-session
Icon=
Type=Application

$ cat /usr/share/gnome-session/sessions/i3.session
[GNOME Session]
Name=gnome-i3
RequiredComponents=gnome-settings-daemon;i3;

Еще в 13.04, а также в 13.10 автомонтирование работало так же, как в Unity. Если бы я подключил съемный диск (например, флэш-накопитель USB), он установился бы на /media/$USER/$VOLUME_LABEL.

Под 14.04 это все еще работает, если я использую Unity, но больше не работает в моем предпочтительном сеансе Gnome + i3.

Если я запускаю nautilus (в сеансе Gnome + i3) после подключения накопителя, я вижу неустановленный накопитель на левой панели, но у него нет кнопки извлечения. Оно также не отображается в выходных данных df. Если я затем нажму на диск, появится кнопка извлечения, и она также появится на выходе df. Таким образом, кажется, что nautilus устанавливает объемы «по требованию».

Я также обнаружил, что могу запустить gvfs-mount -oi, чтобы увидеть события gvfs по мере их возникновения, и когда диск подключен, он генерирует пару событий, как это:

Drive connected:    'Lexar USB Flash Drive'
  Drive(0): Lexar USB Flash Drive
    Type: GProxyDrive (GProxyVolumeMonitorUDisks2)
    ids:
     unix-device: '/dev/sdg'
...

Volume added:       'ALLMYDATAZ'
  Volume(0): ALLMYDATAZ
    Type: GProxyVolume (GProxyVolumeMonitorUDisks2)
    ids:
     class: 'device'
     unix-device: '/dev/sdg1'
     uuid: 'BE64-1766'
     label: 'ALLMYDATAZ'
    themed icons:  ...
    symbolic themed icons:  ...
    can_mount=1
    can_eject=1
    should_automount=1
    sort_key=gvfs.time_detected_usec.1404417627659873

(Обратите внимание на should_automount=1, но он все еще не может быть смонтирован автоматически.)

Затем я могу вручную смонтировать диск с помощью gvfs-mount -d /dev/sdg1.

Итак ... есть ли какой-то ранее существующий инструмент, который связывает их вместе, монтируя unix-device всех событий «Добавленный объем», которые имеют should_automount=1? То есть монтировать съемные тома по мере их добавления в систему?

Обратите внимание, что я не ищу способ монтировать объекты при входе в систему или при запуске системы. Я хочу, чтобы они монтировались при подключении.

3
задан 4 July 2014 в 00:24

1 ответ

Так как этот вопрос не получил ответов, я шел вперед и записал , gvfs-автомонтируются .

При выполнении его прислушается к "добавленным к объему" событиям, и если добавленный объем имеет набор "should_automount", монтирует его. Это также генерирует настольное уведомление, когда объем смонтирован.

3
ответ дан 4 July 2014 в 00:24

Другие вопросы по тегам:

Похожие вопросы: