У меня iPhone 8, который изначально подключается через USB, так что папки Pictures и Documents доступны в Ubuntu 17.10. Однако это работает только один раз между перезагрузками Ubuntu.
Как устранить эту неполадку?
Это, должно быть, ошибка или проблема конфигурации, а не отсутствие или полная неработоспособность какого-либо программного обеспечения, поскольку оно действительно работает с первого раза после перезагрузки.
Что происходит, так это то, что если я отключаю и снова подключаю iPhone, папка Pictures не появляется снова в приложении Files. Папка Documents появляется при втором повторном подключении, но не появляется при третьем повторном подключении. Я не вижу никаких ошибок в dmesg.
Я вижу, что он распознается через USB.
[234230.482987] usb 1-1: USB disconnect, device number 6 [234250.239084] usb 1-1: new high-speed USB device number 7 using xhci_hcd [234250.385353] usb 1-1: New USB device found, idVendor=05ac, idProduct=12a8 [234250.385358] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [234250.385362] usb 1-1: Product: iPhone [234250.385365] usb 1-1: Manufacturer: Apple Inc. [234250.385369] usb 1-1: SerialNumber: **** (number skipped)
Я проверил эту ветку на Как получить доступ к снимкам с камеры iOS в Ubuntu 17.04?и беги
idevicepair validate
получил это:
ОШИБКА: Устройство вернуло необработанный код ошибки «-3»
запустить это
idevicepair unpair && idevicepair pair
и мне удалось успешно выполнить повторную проверку после ввода пароля моего iPhone, но папки больше не появились.
После очередного повторного подключения я вижу это
idevicepair validate
Устройство не найдено. Подключено ли оно?
Попытка получить к нему доступ через схему afc://SerialNumber в приложении «Файлы» сообщает мне, что
libimobiledevice Ошибка: Устройство не найдено. Убедитесь, что usbmuxd настроен правильно.
usbmuxd --version
usbmuxd 1.1.0
usbmuxd --verbose -f
[06:44:02.000][3] usbmuxd v1.1.0 starting up [06:44:02.000][0] Could not open lockfile
sudo usbmuxd --verbose -f
[06:47:04.774][3] usbmuxd v1.1.0 starting up [06:47:04.775][4] Creating socket [06:47:04.775][4] Initializing USB [06:47:04.781][4] Found new device with v/p 05ac:12a8 at 1-9 [06:47:04.781][3] Could not get old configuration descriptor for device 1-9: -5 [06:47:04.781][4] Setting configuration for device 1-9, from 0 to 4 [06:47:04.786][4] Found interface 1 with endpoints 04/85 for device 1-9 [06:47:04.810][4] Using wMaxPacketSize=512 for device 1-9 [06:47:04.810][3] Connecting to new device on location 0x10009 as ID 1 [06:47:04.810][4] 1 device detected [06:47:04.810][3] Initialization complete [06:47:04.810][3] Connected to v2.0 device 1 on location 0x10009 with serial number SerialNumber [06:47:04.810][4] preflight_worker_handle_device_add: Starting preflight on device SerialNumber... [06:47:04.810][4] New client on fd 13 [06:47:04.827][4] New client on fd 15 [06:47:04.829][4] Client 15 connection closed [06:47:04.829][4] Disconnecting client fd 15 [06:47:04.837][4] New client on fd 15 [06:47:04.838][4] Client 15 connection closed [06:47:04.838][4] Disconnecting client fd 15 [06:47:04.891][4] preflight_worker_handle_device_add: StartSession success for device SerialNumber [06:47:04.891][4] preflight_worker_handle_device_add: Finished preflight on device SerialNumber [06:47:04.892][4] Disconnecting client fd 13 [06:47:05.775][4] New client on fd 12 [06:47:05.775][4] New client on fd 13 [06:47:05.776][4] Client 13 connection closed [06:47:05.776][4] Disconnecting client fd 13 [06:47:05.776][4] New client on fd 13 [06:47:05.782][4] Disconnecting client fd 13 [06:47:05.812][4] New client on fd 13 [06:47:05.812][4] Client 13 connection closed [06:47:05.812][4] Disconnecting client fd 13 [06:47:05.812][4] New client on fd 13 [06:47:05.814][4] New client on fd 14 [06:47:05.817][4] New client on fd 15 [06:47:05.820][4] New client on fd 16 [06:47:05.820][4] Client 16 connection closed [06:47:05.820][4] Disconnecting client fd 16 [06:47:05.820][4] New client on fd 16 [06:47:05.820][4] Client 16 connection closed [06:47:05.820][4] Disconnecting client fd 16 [06:47:05.830][4] New client on fd 16 [06:47:05.830][4] Client 16 connection closed [06:47:05.830][4] Disconnecting client fd 16 [06:47:05.874][4] Disconnecting client fd 13 [06:47:05.875][4] New client on fd 13 [06:47:05.876][4] New client on fd 16 [06:47:05.876][4] Client 13 connection closed [06:47:05.876][4] Disconnecting client fd 13 [06:47:05.878][4] New client on fd 13 [06:47:05.878][4] Client 13 connection closed [06:47:05.878][4] Disconnecting client fd 13 [06:47:05.878][4] New client on fd 13 [06:47:05.879][4] Client 13 connection closed [06:47:05.879][4] Disconnecting client fd 13 [06:47:05.882][4] New client on fd 13 [06:47:05.882][4] Client 13 connection closed [06:47:05.883][4] Disconnecting client fd 13 [06:47:05.900][4] New client on fd 13 [06:47:05.901][4] Disconnecting client fd 16 [06:47:05.906][4] New client on fd 16 [06:47:05.907][4] Disconnecting client fd 15
Теперь папка «Документы» смонтирована и отображается, ноне картинки.
При повторном подключении появляется всплывающее диалоговое окно с сообщением об ошибке (из Файлов?)
Невозможно открыть папку для документов на iPhone. Неверный кэш, повторите попытку (обрабатывается внутренне)
[06:53:16.072][4] New client on fd 11 [06:53:16.073][4] Client 11 connection closed [06:53:16.073][4] Disconnecting client fd 11 [06:53:16.573][4] New client on fd 11 [06:53:16.574][4] Client 11 connection closed [06:53:16.574][4] Disconnecting client fd 11 [06:53:17.204][4] Found new device with v/p 05ac:12a8 at 1-10 [06:53:17.205][3] Could not get old configuration descriptor for device 1-10: -5 [06:53:17.205][4] Setting configuration for device 1-10, from 0 to 4 [06:53:17.258][4] Found interface 1 with endpoints 04/85 for device 1-10 [06:53:17.290][4] Using wMaxPacketSize=512 for device 1-10 [06:53:17.291][3] Connecting to new device on location 0x1000a as ID 2 [06:53:17.298][3] Connected to v2.0 device 2 on location 0x1000a with serial number SerialNumber [06:53:17.306][4] preflight_worker_handle_device_add: Starting preflight on device SerialNumber... [06:53:17.306][4] New client on fd 14 [06:53:17.353][4] New client on fd 16 [06:53:17.353][4] Client 16 connection closed [06:53:17.353][4] Disconnecting client fd 16 [06:53:17.377][4] New client on fd 16 [06:53:17.377][4] Client 16 connection closed [06:53:17.377][4] Disconnecting client fd 16 [06:53:17.415][4] preflight_worker_handle_device_add: StartSession success for device SerialNumber [06:53:17.415][4] preflight_worker_handle_device_add: Finished preflight on device SerialNumber [06:53:17.415][4] New client on fd 15 [06:53:17.415][4] New client on fd 16 [06:53:17.415][4] Client 15 connection closed [06:53:17.415][4] Disconnecting client fd 15 [06:53:17.416][4] Disconnecting client fd 14 [06:53:17.418][4] Disconnecting client fd 16
Но теперь afc:// начинает работать, и я наконец могу видеть папки в Файлах:
AirFair DCIM iTunesRestore PhotoData Purchases
Books Downloads LoFiCloudAssets Photos Radio
CloudAssets iTunes_Control MediaAnalysis PublicStaging Recordings
Итак, похоже, у меня есть обходной путь для доступа к папке Photos. Очевидно, я хотел бы, чтобы это работало без sudo clutches.
решение1
Обновление usbmuxd
решает проблему. Я скачал более новый пакет сhttps://packages.ubuntu.com/cosmic/usbmuxd(1.1.1~git20180428.b95a0a0-1) и установил его. Удивительно, но он оказался совместим с Ubuntu 18.04.
решение2
У меня это работает на Ubuntu 18.04:https://ubuntuforums.org/showthread.php?t=2376741&p=13779062#post13779062
$кот /lib/udev/rules.d/39-usbmuxd.rules # usbmuxd (Apple Mobile Device Muxer прослушивает /var/run/usbmuxd) # Инициализируйте устройства iOS в «деактивированном» состоянии конфигурации USB и активируйте usbmuxd ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="05ac", ATTR{idProduct}=="12[9a][0-9a-f]", ENV{USBMUX_SUPPORTED}="1", ATTR{bConfigurationValue}="0", OWNER="usbmux", TAG+="systemd", ENV{SYSTEMD_WANTS}="usbmuxd.service", RUN+="/bin/systemctl start usbmuxd" # Выйти из usbmuxd после удаления последнего устройства ACTION=="удалить", SUBSYSTEM=="usb", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", ENV{INTERFACE}=="255/*", RUN+="/bin/systemctl остановить usbmuxd"