Версия Ubuntu, которую я имею (14.04.1) автоматически, монтирует мой цифровой фотоаппарат и генерирует поле, приглашающее меня сказать, что сделать с ним. Так как я был неудовлетворен всеми представленными опциями, я записал сценарий, который делает точно, что я хочу, с помощью gphoto2, чтобы получить доступ к камере и получить файлы от него. Одна проблема состоит в том, что, даже если я указал, 'ничего не делают' к полю, камера остается смонтированной и таким образом, что касается gphoto2, недоступен потому что не выпущенный. Для выпуска его, я должен открыть или найти дисплей папки и конкретно извлечь камеру. Я не обеспокоился бы этим шагом и просто позволил бы своему запущенному скрипту. Я задаюсь вопросом, существует ли способ сделать это.
Если Вы не хотите играть с udev
(который является системной вещью), можно использовать эти udisk
интерфейс для размонтирования камеры.
камера будет обычно монтироваться в фиксированном месте, как /media/user/1234-5678/
или подобный (YMMV, зависит от того, как камера форматирует карту); и как устройство, скажите /dev/sdc1/
.
Теперь, можно размонтировать его из сценария с помощью
udisksctl unmount -b /dev/sdc1
, проблема состоит в том, что устройство может измениться; мое решение имеет это небольшое волшебство
udisksctl unmount -b $(mount | grep 1234-5678 | cut -d" " -f1)
, который будет работать при условии, что идентификатор карты не изменяется.
Для Ubuntu 17.10, 18.04, и, необходимо будет использовать утилиту gio
(который заменил gvfs-mount
).
gio mount -l
покажет Вам монтируемые диски.
, Если Вам включили камеру, она могла бы быть похожей на это:
$ gio mount -l
Drive(0): DA4032
Type: GProxyDrive (GProxyVolumeMonitorUDisks2)
Volume(0): Canon Digital Camera
Type: GProxyVolume (GProxyVolumeMonitorGPhoto2)
Mount(0): Canon Digital Camera -> gphoto2://%5Busb%3A002,002%5D/
Type: GProxyShadowMount (GProxyVolumeMonitorGPhoto2)
Mount(1): Canon Digital Camera -> gphoto2://%5Busb%3A002,002%5D/
Type: GDaemonMount
копирование местоположения после эти ->
позволит Вам размонтировать его через gio mount -u
(размонтирование при рассмотрении справки: gio help mount
gio mount -u gphoto2://%5Busb%3A002,002%5D/
размонтирует камеру через оболочку. Теперь, для автоматизации этого необходимо будет создать systemd сценарий.