Ada*_*zek 6 mount fuse usb-drive android mtp
我想使用simple-mtpfs将我的 Samsung Galaxy S7安装到一个文件夹,但我无法像以前那样执行此操作(在之前的 Fedora 和较旧的 Galaxy S4 上)。
\n\n如果我简单地将S7插入我的计算机,我可以使用Nautilius浏览它,但我无法在终端中像普通文件夹一样访问它,这正是我想要实现的目标。
\n\n每次我插入 S7 时,我都会检查两次它是否在 MTP 模式下工作,所以这不是问题。
\n\n过去,我只需插入 S4 并输入:
\n\nsimple-mtpfs /home/adam/S4\nRun Code Online (Sandbox Code Playgroud)\n\n现在,我可以执行它,甚至我的手机要求我确认 MTP 选择,但目录 S7 仍然是空的。
\n\n我也尝试以 root 或普通用户身份并通过设备号安装它,但没有结果。
\n\n# simple-mtpfs --list-devices\n1: SamsungGalaxy models (MTP)\n\n$ simple-mtpfs --device 1 /home/adam/S7\n# simple-mtpfs --device 1 /media/s7\n\n$ simple-mtpfs /dev/libmtp-3-1 /home/adam/s7\n# simple-mtpfs /dev/libmtp-3-1 /media/s7\nRun Code Online (Sandbox Code Playgroud)\n\n我什至尝试按照 udev 规则来做到这一点:
\n\n# dmesg | tail\n[16821.258485] usb 3-1: Product: SAMSUNG_Android\n[16821.258487] usb 3-1: Manufacturer: SAMSUNG\n[16821.258489] usb 3-1: SerialNumber: 98867?????????????\n[16827.556099] usb 3-1: USB disconnect, device number 29\n[16830.383366] usb 3-1: new high-speed USB device number 30 using xhci_hcd\n[16830.548882] usb 3-1: New USB device found, idVendor=04e8, idProduct=6860\n[16830.548887] usb 3-1: New USB device strings: Mfr=2, Product=3, SerialNumber=4\n[16830.548903] usb 3-1: Product: SAMSUNG_Android\n[16830.548905] usb 3-1: Manufacturer: SAMSUNG\n[16830.548907] usb 3-1: SerialNumber: 98867?????????????\n\n# touch /etc/udev/rules.d/10-phone.rules\nRun Code Online (Sandbox Code Playgroud)\n\n/etc/udev/rules.d/10-phone.rules的内容设置为:
\n\nSUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProduct}="6860", SYMLINK="S7"\nRun Code Online (Sandbox Code Playgroud)\n\n重新加载规则后,我有/dev/S7并且我尝试安装它:
\n\n# udevadm control --reload-rules\n\n# ls -l /dev/S7\nlrwxrwxrwx. 1 root root 15 10-20 15:03 /dev/S7 -> bus/usb/003/075\n\n# ls -l /dev/libmtp-3-1\nlrwxrwxrwx. 1 root root 15 10-20 15:03 /dev/libmtp-3-1 -> bus/usb/003/075\n\n# simple-mtpfs /dev/S7 /media/s7\nRun Code Online (Sandbox Code Playgroud)\n\n而且还是没有任何结果。安装没有给出错误,但我要安装的目录仍然是空的。
\n\n有关我的设置的详细信息:
\n\n# uname -r\n4.7.7-200.fc24.x86_64\n\n# rpm -qa | grep mtp\nsimple-mtpfs-0.2-6.fc24.x86_64\nlibmtp-1.1.11-1.fc24.x86_64\ngvfs-mtp-1.28.3-1.fc24.x86_64\n\n# rpm -qa | grep fuse\nfuse-libs-2.9.7-1.fc24.x86_64\nglusterfs-fuse-3.8.4-1.fc24.x86_64\nfuse-2.9.7-1.fc24.x86_64\ngvfs-fuse-1.28.3-1.fc24.x86_64\nRun Code Online (Sandbox Code Playgroud)\n\n插入手机并输入simple-mtpfs /media/s7后,从系统日志(Fedora 的journalctl)中提取:
\n\n# journalctl -n 53\n-- Logs begin at \xc5\x9bro 2016-10-19 21:29:20 CEST, end at sob 2016-10-22 09:26:43 CEST. --\npa\xc5\xba 22 09:24:31 PRZEDNICZEK01 kernel: usb 3-1: USB disconnect, device number 10\npa\xc5\xba 22 09:24:31 PRZEDNICZEK01 PackageKit[1559]: get-updates transaction /384_eccedcee from uid 1000 finished with success after 45ms\npa\xc5\xba 22 09:24:32 PRZEDNICZEK01 kernel: usb 3-1: new high-speed USB device number 11 using xhci_hcd\npa\xc5\xba 22 09:24:32 PRZEDNICZEK01 kernel: usb 3-1: New USB device found, idVendor=04e8, idProduct=6860\npa\xc5\xba 22 09:24:32 PRZEDNICZEK01 kernel: usb 3-1: New USB device strings: Mfr=2, Product=3, SerialNumber=4\npa\xc5\xba 22 09:24:32 PRZEDNICZEK01 kernel: usb 3-1: Product: SAMSUNG_Android\npa\xc5\xba 22 09:24:32 PRZEDNICZEK01 kernel: usb 3-1: Manufacturer: SAMSUNG\npa\xc5\xba 22 09:24:32 PRZEDNICZEK01 kernel: usb 3-1: SerialNumber: 98867?????????????\npa\xc5\xba 22 09:24:32 PRZEDNICZEK01 gvfsd[1813]: PTP: reading event an error 0x02ff occurredDevice 0 (VID=04e8 and PID=6860) is a Samsung Galaxy models (MTP).\npa\xc5\xba 22 09:24:32 PRZEDNICZEK01 gvfsd[1813]: LIBMTP ERROR: couldnt parse extension samsung.com/devicestatus:0\npa\xc5\xba 22 09:24:32 PRZEDNICZEK01 tracker-miner-fs.desktop[2001]: (tracker-miner-fs:2001): Tracker-WARNING **: Could not find parent node for URI:\'mtp://[usb:003,011]/\'\npa\xc5\xba 22 09:24:32 PRZEDNICZEK01 tracker-miner-fs.desktop[2001]: (tracker-miner-fs:2001): Tracker-WARNING **: NOTE: URI theme may be outside scheme expected, for example, expecting \'file://\' when given \'http://\' prefix.\npa\xc5\xba 22 09:24:32 PRZEDNICZEK01 tracker-miner-fs.desktop[2001]: (tracker-miner-fs:2001): Tracker-WARNING **: Could not find parent node for URI:\'mtp://[usb:003,011]/\'\npa\xc5\xba 22 09:24:32 PRZEDNICZEK01 tracker-miner-fs.desktop[2001]: (tracker-miner-fs:2001): Tracker-WARNING **: NOTE: URI theme may be outside scheme expected, for example, expecting \'file://\' when given \'http://\' prefix.\npa\xc5\xba 22 09:24:32 PRZEDNICZEK01 tracker-miner-fs.desktop[2001]: (tracker-miner-fs:2001): Tracker-CRITICAL **: Could not set mount point in database \'urn:nepomuk:datasource:5e7b19a6b9795726a5c47a99a89757bf\', GDBus.Error:org.freedesktop.Tracker1.SparqlError.Internal: UNIQUE constraint \npa\xc5\xba 22 09:24:32 PRZEDNICZEK01 tracker-miner-fs.desktop[2001]: (tracker-miner-fs:2001): Tracker-CRITICAL **: Could not set mount point in database \'urn:nepomuk:datasource:5c7e6bb78b9a6691c3ecea3925b2971d\', GDBus.Error:org.freedesktop.Tracker1.SparqlError.Internal: UNIQUE constraint \npa\xc5\xba 22 09:24:34 PRZEDNICZEK01 org.gnome.Shell.desktop[1832]: (gnome-shell:1832): Gjs-WARNING **: JS ERROR: TypeError: is null\npa\xc5\xba 22 09:24:34 PRZEDNICZEK01 org.gnome.Shell.desktop[1832]: ContentTypeDiscoverer<._onContentTypeGuessed/<@resource:///org/gnome/shell/ui/components/autorunManager.js:133\npa\xc5\xba 22 09:24:34 PRZEDNICZEK01 org.gnome.Shell.desktop[1832]: _proxyInvoker/asyncCallback@resource:///org/gnome/gjs/modules/overrides/Gio.js:86\npa\xc5\xba 22 09:24:34 PRZEDNICZEK01 gvfsd[1813]: ** (process:3243): WARNING **: send_infos_cb: No such interface \'org.gtk.vfs.Enumerator\' on object at path /org/gtk/vfs/client/enumerator/18 (g-dbus-error-quark, 19)\npa\xc5\xba 22 09:24:34 PRZEDNICZEK01 gvfsd[1813]: ** (process:3243): WARNING **: send_infos_cb: No such interface \'org.gtk.vfs.Enumerator\' on object at path /org/gtk/vfs/client/enumerator/18 (g-dbus-error-quark, 19)\npa\xc5\xba 22 09:24:34 PRZEDNICZEK01 gvfsd[1813]: ** (process:3243): WARNING **: send_infos_cb: No such interface \'org.gtk.vfs.Enumerator\' on object at path /org/gtk/vfs/client/enumerator/18 (g-dbus-error-quark, 19)\npa\xc5\xba 22 09:24:34 PRZEDNICZEK01 gvfsd[1813]: ** (process:3243): WARNING **: send_done_cb: No such interface \'org.gtk.vfs.Enumerator\' on object at path /org/gtk/vfs/client/enumerator/18 (g-dbus-error-quark, 19)\npa\xc5\xba 22 09:24:35 PRZEDNICZEK01 PackageKit[1559]: get-updates transaction /385_decdbbba from uid 1000 finished with success after 45ms\npa\xc5\xba 22 09:26:37 PRZEDNICZEK01 kernel: usb 3-1: usbfs: process 3385 (simple-mtpfs) did not claim interface 0 before use\npa\xc5\xba 22 09:26:37 PRZEDNICZEK01 kernel: usb 3-1: reset high-speed USB device number 11 using xhci_hcd\npa\xc5\xba 22 09:26:38 PRZEDNICZEK01 kernel: usb 3-1: usbfs: process 3385 (simple-mtpfs) did not claim interface 0 before use\npa\xc5\xba 22 09:26:38 PRZEDNICZEK01 kernel: usb 3-1: usbfs: process 3250 (events) did not claim interface 0 before use\npa\xc5\xba 22 09:26:40 PRZEDNICZEK01 kernel: usb 3-1: USB disconnect, device number 11\npa\xc5\xba 22 09:26:40 PRZEDNICZEK01 kernel: usb 3-1: new high-speed USB device number 12 using xhci_hcd\npa\xc5\xba 22 09:26:40 PRZEDNICZEK01 kernel: usb 3-1: New USB device found, idVendor=04e8, idProduct=6860\npa\xc5\xba 22 09:26:40 PRZEDNICZEK01 kernel: usb 3-1: New USB device strings: Mfr=2, Product=3, SerialNumber=4\npa\xc5\xba 22 09:26:40 PRZEDNICZEK01 kernel: usb 3-1: Product: SAMSUNG_Android\npa\xc5\xba 22 09:26:40 PRZEDNICZEK01 kernel: usb 3-1: Manufacturer: SAMSUNG\npa\xc5\xba 22 09:26:40 PRZEDNICZEK01 kernel: usb 3-1: SerialNumber: 98867?????????????\npa\xc5\xba 22 09:26:41 PRZEDNICZEK01 gvfsd[1813]: PTP: reading event an error 0x02ff occurredDevice 0 (VID=04e8 and PID=6860) is a Samsung Galaxy models (MTP).\npa\xc5\xba 22 09:26:41 PRZEDNICZEK01 gvfsd[1813]: LIBMTP ERROR: couldnt parse extension samsung.com/devicestatus:0\npa\xc5\xba 22 09:26:41 PRZEDNICZEK01 tracker-miner-fs.desktop[2001]: (tracker-miner-fs:2001): Tracker-WARNING **: Could not find parent node for URI:\'mtp://[usb:003,012]/\'\npa\xc5\xba 22 09:26:41 PRZEDNICZEK01 tracker-miner-fs.desktop[2001]: (tracker-miner-fs:2001): Tracker-WARNING **: NOTE: URI theme may be outside scheme expected, for example, expecting \'file://\' when given \'http://\' prefix.\npa\xc5\xba 22 09:26:41 PRZEDNICZEK01 tracker-miner-fs.desktop[2001]: (tracker-miner-fs:2001): Tracker-WARNING **: Could not find parent node for URI:\'mtp://[usb:003,012]/\'\npa\xc5\xba 22 09:26:41 PRZEDNICZEK01 tracker-miner-fs.desktop[2001]: (tracker-miner-fs:2001): Tracker-WARNING **: NOTE: URI theme may be outside scheme expected, for example, expecting \'file://\' when given \'http://\' prefix.\npa\xc5\xba 22 09:26:41 PRZEDNICZEK01 tracker-miner-fs.desktop[2001]: (tracker-miner-fs:2001): Tracker-CRITICAL **: Could not set mount point in database \'urn:nepomuk:datasource:0e6a8582e05ac627e4014d1ca1e6ec87\', GDBus.Error:org.freedesktop.Tracker1.SparqlError.Internal: UNIQUE constraint \npa\xc5\xba 22 09:26:41 PRZEDNICZEK01 tracker-miner-fs.desktop[2001]: (tracker-miner-fs:2001): Tracker-CRITICAL **: Could not set mount point in database \'urn:nepomuk:datasource:5c7e6bb78b9a6691c3ecea3925b2971d\', GDBus.Error:org.freedesktop.Tracker1.SparqlError.Internal: UNIQUE constraint \npa\xc5\xba 22 09:26:41 PRZEDNICZEK01 dbus-daemon[1760]: [session uid=1000 pid=1760] Activating service name=\'org.gnome.Shell.HotplugSniffer\' requested by \':1.16\' (uid=1000 pid=1832 comm="/usr/bin/gnome-shell " label="unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023")\npa\xc5\xba 22 09:26:41 PRZEDNICZEK01 dbus-daemon[1760]: [session uid=1000 pid=1760] Successfully activated service \'org.gnome.Shell.HotplugSniffer\'\npa\xc5\xba 22 09:26:42 PRZEDNICZEK01 org.gnome.Shell.desktop[1832]: (gnome-shell:1832): Gjs-WARNING **: JS ERROR: TypeError: is null\npa\xc5\xba 22 09:26:42 PRZEDNICZEK01 org.gnome.Shell.desktop[1832]: ContentTypeDiscoverer<._onContentTypeGuessed/<@resource:///org/gnome/shell/ui/components/autorunManager.js:133\npa\xc5\xba 22 09:26:42 PRZEDNICZEK01 org.gnome.Shell.desktop[1832]: _proxyInvoker/asyncCallback@resource:///org/gnome/gjs/modules/overrides/Gio.js:86\npa\xc5\xba 22 09:26:43 PRZEDNICZEK01 gvfsd[1813]: ** (process:3399): WARNING **: send_infos_cb: No such interface \'org.gtk.vfs.Enumerator\' on object at path /org/gtk/vfs/client/enumerator/17 (g-dbus-error-quark, 19)\npa\xc5\xba 22 09:26:43 PRZEDNICZEK01 gvfsd[1813]: ** (process:3399): WARNING **: send_infos_cb: No such interface \'org.gtk.vfs.Enumerator\' on object at path /org/gtk/vfs/client/enumerator/17 (g-dbus-error-quark, 19)\npa\xc5\xba 22 09:26:43 PRZEDNICZEK01 gvfsd[1813]: ** (process:3399): WARNING **: send_infos_cb: No such interface \'org.gtk.vfs.Enumerator\' on object at path /org/gtk/vfs/client/enumerator/17 (g-dbus-error-quark, 19)\npa\xc5\xba 22 09:26:43 PRZEDNICZEK01 gvfsd[1813]: ** (process:3399): WARNING **: send_done_cb: No such interface \'org.gtk.vfs.Enumerator\' on object at path /org/gtk/vfs/client/enumerator/17 (g-dbus-error-quark, 19)\npa\xc5\xba 22 09:26:43 PRZEDNICZEK01 PackageKit[1559]: get-updates transaction /386_acdeddea from uid 1000 finished with success after 48ms\nRun Code Online (Sandbox Code Playgroud)\n
无论如何,这是一个老问题了,现在到了 2023 年,我可以通过 Firefox 以及 Ubuntu Desktop 22.04.x LTS 中的命令行(gnome-terminal)管理 Android 版本 9 的三星手机。
当手机通过 USB 连接(并自动安装)时,我使用此命令找到它的路径,
find /run/user/*/gvfs -maxdepth 1 -name 'mtp:*'
Run Code Online (Sandbox Code Playgroud)
一些标准命令不起作用,但后来我使用gio,例如
gio mount ...
gio copy ...
Run Code Online (Sandbox Code Playgroud)
man gio详情请参阅。
我做了一个小shell脚本,可以安装、读取、写入和卸载手机。它是根据我的特定需求定制的,但它可能会帮助您创建自己的 shellscript,所以如果您愿意,我可以将我的 shellscript 复制到这个答案中。