Я пытаюсь смонтировать один из новых телефонов Nexus 5x на моем ноутбуке через MTP. Когда я подключаю его, nautilus распознает его как Nexus 5x, и опция появляется слева. Однако, когда я нажимаю на нее, область, где обычно появляются файлы, пуста, хотя там должны быть файлы, и я не могу создать файлы. Интересно, что lsusb возвращает:
Bus 004 Device 002: ID 8087:8000 Intel Corp.
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 8087:8008 Intel Corp.
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 5986:055c Acer, Inc
Bus 001 Device 002: ID 0cf3:3004 Atheros Communications, Inc.
Bus 001 Device 023: ID 18d1:4ee1 Google Inc. Nexus 4
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Как ни странно, lsusb считает, что это nexus 4, а nautilus правильно видит 5x. Может это просто пока не поддерживается? Я нашел следующее в моем системном журнале:
Oct 27 20:26:25 kernel: [584014.476624] usb 1-3: new high-speed USB device number 23 using xhci_hcd
Oct 27 20:26:25 kernel: [584014.606208] usb 1-3: New USB device found, idVendor=18d1, idProduct=4ee1
Oct 27 20:26:25 kernel: [584014.606217] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Oct 27 20:26:25 kernel: [584014.606221] usb 1-3: Product: Nexus 5X
Oct 27 20:26:25 kernel: [584014.606225] usb 1-3: Manufacturer: LGE
Oct 27 20:26:25 kernel: [584014.606228] usb 1-3: SerialNumber: 0067460eb26d49e8
Oct 27 20:26:25 systemd-udevd[13357]: failed to execute '/lib/udev/socket:@/org/freedesktop/hal/udev_event' 'socket:@/org/freedesktop/hal/udev_event': No such file or directory
Oct 27 20:26:25 org.gtk.vfs.Daemon[3123]: PTP: reading event an error 0x02ff occurredUnable to open ~/.mtpz-data for reading, MTPZ disabled.
Oct 27 20:26:25 org.gtk.vfs.Daemon[3123]: Device 0 (VID=18d1 and PID=4ee1) is a Google Inc (for LG Electronics/Samsung) Nexus 4/5/7/10 (MTP).
Oct 27 20:26:25 org.gtk.vfs.Daemon[3123]: Error 1: Get Storage information failed.
Oct 27 20:22:10 gnome-session[3211]: (deja-dup-monitor:4213): GLib-CRITICAL **: Source ID 3199 was not found when attempting to remove it
Oct 27 20:26:26 gnome-session[3211]: (nautilus:13398): Gtk-CRITICAL **: gtk_icon_theme_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
Oct 27 20:26:26 gnome-session[3211]: (nautilus:13398): GLib-GObject-WARNING **: invalid (NULL) pointer instance
Oct 27 20:26:26 gnome-session[3211]: (nautilus:13398): GLib-GObject-CRITICAL **: g_signal_connect_object: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
Oct 27 20:26:26 dbus[2053]: [system] Activating via systemd: service name='org.freedesktop.hostname1' unit='dbus-org.freedesktop.hostname1.service'
Oct 27 20:26:26 systemd[1]: Starting Hostname Service...
Oct 27 20:26:26 systemd-udevd[13404]: failed to execute '/lib/udev/socket:@/org/freedesktop/hal/udev_event' 'socket:@/org/freedesktop/hal/udev_event': No such file or directory
Oct 27 20:26:26 org.gtk.Private.GPhoto2VolumeMonitor[3123]: (process:3493): GVFS-GPhoto2-WARNING **: device (null) has no BUSNUM property, ignoring
Oct 27 20:26:26 dbus[2053]: [system] Successfully activated service 'org.freedesktop.hostname1'
Oct 27 20:26:26 systemd[1]: Started Hostname Service.
Я использую Ubuntu 15.04 на Eurocom Electra 2.
Кроме того, может ли кто-нибудь с большей репутацией, чем я, создать тег nexus-5x? спасибо @KGIII
Редактировать: я пробовал монтировать с помощью mtpfs; ошибки похожи на то, что я видел в логах, и монтирование не происходит.
$ mtpfs nexus5x/
Unable to open ~/.mtpz-data for reading, MTPZ disabled.
Listing raw device(s)
Device 0 (VID=18d1 and PID=4ee1) is a Google Inc (for LG Electronics/Samsung) Nexus 4/5/7/10 (MTP).
Found 1 device(s):
Google Inc (for LG Electronics/Samsung): Nexus 4/5/7/10 (MTP) (18d1:4ee1) @ bus 1, dev 25
Attempting to connect device
ignoring libusb_claim_interface() = -6PTP_ERROR_IO: failed to open session, trying again after resetting USB interface
LIBMTP libusb: Attempt to reset device
Android device detected, assigning default bug flags
Error 1: Get Storage information failed.
Error 2: PTP Layer error 02fe: get_handles_recursively(): could not get object handles.
Error 2: Error 02fe: PTP: Protocol error, data expected
Listing File Information on Device with name: (NULL)
LIBMTP_Get_Storage() failed:-1
Я также пытался загрузить новейшую библиотеку libmtp из исходного кода, но она все еще не работает - я говорю, кажется, потому что я не совсем уверен, что должно произойти. Я пробовал mtp-файлы:
libmtp version: 1.1.10
Device 0 (VID=18d1 and PID=4ee1) is a Google Inc (for LG Electronics/Samsung) Nexus 4/5/7/10 (MTP).
mtp-files: Successfully connected
Android device detected, assigning default bug flags
Listing File Information on Device with name: (NULL)
Error 1: Get Storage information failed.
OK.
gvfs-backends
пакет? Рекомендуется только как зависимость от nautilus, поэтому он может быть не установлен. Кроме того, очевидно, что многие телефоны в одной и той же «семье» могут использовать одну и ту же запись в способе, которым Linux идентифицирует телефоны на USB, поэтому я не буду слишком обеспокоен тем, что оно получит абсолютно правильное имя везде. Вы также можете установить mtp-tools и mtpfs и исследовать их из командной строки.Ответы:
На самом деле, это работает!
Когда вы подключаете N5X (экран разблокирован) к вашей Linux-машине, N5X по умолчанию заряжается через USB (я думаю, это функция безопасности). N5X появится в вашем файловом менеджере Linux, но не покажет внутреннюю память. Если вы потянете вниз тень уведомления на N5X, вы увидите, что она показывает зарядку через USB. Если вы выберете это, вам должны быть предложены другие варианты, включая MTP для передачи файлов, PTP для передачи фотографий и MIDI.
Спасибо Давхарук.
РЕДАКТИРОВАТЬ Я определенно согласен с комментариями. Полностью запутанный. Я был тоже.
источник