您尚未登录。

#1 2021-02-25 11:10:49

ifnk
会员
注册时间: 2021-01-25
帖子: 93

archlinux 连接安卓手机的问题

我在写安卓,使用 android studio ,可以 正常 真机调试了 ,然后 在android studio 下, 插拔手机  ,设备 也能正常 显示/不显示

然后我想在 archlinux 下 访问 我的安卓手机 的 文件夹目录

百度了 使用 jmtpfs ~/dudu (dudu文件夹是我创建用来挂在安卓手机设备的) ,是可以 的

现在 问题是  当我 使用 jmtpfs ~/dudu 挂载了 以后 ,我 把 安卓手机 拔掉 usb数据线 ,然后 dudu 文件夹就 没有办法访问了 ,
就算我 在插上 数据线 ,dudu 文件夹也没有办法 访问 ,

我 在 wiki 上面 看到 了 fusermount -u ~/dudu 卸载 安卓设备命令 ,但是我执行 的时候 报
fusermount: failed to unmount /home/ifnk/dudu: Device or resource busy
设备繁忙错误  ,我就算把 android studio 关了 (我认为是被占用了)  ,但是还是报 这个错

然后 我 用 jmtpfs ~/dudu 重新挂载一下 安卓手机 ,也不成功 报

Device 0 (VID=04b7 and PID=88f2) is UNKNOWN in libmtp v1.1.18.
Please report this VID/PID and the device model to the libmtp development team
Android device detected, assigning default bug flags
fuse: failed to access mountpoint /home/ifnk/dudu: Input/output error

只有将 archlinux 重启以后 才能 重新挂载 成功 安卓手机 设备

不知道 各位 有没有好的解决办法

期望的 结果是 我 jmtpfs ~/dudu  后, 我 可以 访问 dudu 文件夹, 当我 拔掉手机 在插上的时候 ,我还是能访问 dudu 文件夹

离线

#2 2021-02-25 11:19:13

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,384
个人网站

Re: archlinux 连接安卓手机的问题

是被占用的。使用 fuser -m xxx 和  lsof -Pn | grep xxx 找找看。
另外如果你使用图形界面的文件管理器的话,要不要试试 gvfs-mtp?

离线

#3 2021-02-25 13:54:26

ifnk
会员
注册时间: 2021-01-25
帖子: 93

Re: archlinux 连接安卓手机的问题

依云 说:

是被占用的。使用 fuser -m xxx 和  lsof -Pn | grep xxx 找找看。
另外如果你使用图形界面的文件管理器的话,要不要试试 gvfs-mtp?


我使用 命令  fuser -m ~/dudu(dudu文件夹是我要挂载 安卓手机存储的)  返回的错误是

无法分析 /home/ifnk/dudu: 输入/输出错误

然后 我 使用  lsof -Pn | grep ~/dudu  报的错是

lsof: WARNING: can't stat() fuse.jmtpfs file system /home/ifnk/dudu
      Output information may be incomplete.

离线

#4 2021-02-25 14:03:02

ifnk
会员
注册时间: 2021-01-25
帖子: 93

Re: archlinux 连接安卓手机的问题

依云 说:

是被占用的。使用 fuser -m xxx 和  lsof -Pn | grep xxx 找找看。
另外如果你使用图形界面的文件管理器的话,要不要试试 gvfs-mtp?


唉, 现在又可以 了 ,我第一次 使用 lsof -Pn | grep ~/dudu 的时候 他给我报的错 是 有 两 个 ranger 的字眼
应该是我 ranger 的问题 ,但是 ranger 是命令行的 程序 呀, 我 那时候 已经 按 q 退出 ranger 了
然后 我就按 win+q (我用的是i3wm) 把 之前打开过ranger 的那个命令行 (alacritty )  退出了

然后 在执行 命令  就是 楼上发给你的那些

我刚刚 使用  fusermount -u ~/dudu  命令
执行就 成功了
然后 我在 重新挂载 jmtpfs ~/dudu 就 可以 访问 了

我现在 有个问题 是  为什么 ranger 会 占用  ~/dudu 文件夹呢 ? 我 就短暂的使用 了 ranger 而已 呀(使用ranger 把 ~/dudu 挂载安卓手机的文件夹里面的一张图片 按 yy 复制 ,然后 回到我 的 ~/desktop 桌面 pp 粘贴), 然后 就 按 q 退出了
然后 就 这样占用 了 几个小时 (从早晨9点到 下午13点)

离线

#5 2021-02-25 14:33:55

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,384
个人网站

Re: archlinux 连接安卓手机的问题

哦对,你的挂载点不能访问了,fuser 就检查不彻底。

ranger 占用目录很正常:你从那个目录运行的 ranger 吧,它的当前工作目录是目录,所以被占用、无法卸载了。
守护进程通常会在开始运行时把当前工作目录切换到 / 就是为了避免这种情况。
普通程序(尤其是 ranger、vim、zsh 这种终端程序)就需要你自己注意了。

离线

#6 2021-02-25 14:47:17

ifnk
会员
注册时间: 2021-01-25
帖子: 93

Re: archlinux 连接安卓手机的问题

依云 说:

哦对,你的挂载点不能访问了,fuser 就检查不彻底。

ranger 占用目录很正常:你从那个目录运行的 ranger 吧,它的当前工作目录是目录,所以被占用、无法卸载了。
守护进程通常会在开始运行时把当前工作目录切换到 / 就是为了避免这种情况。
普通程序(尤其是 ranger、vim、zsh 这种终端程序)就需要你自己注意了。

谢谢你 ! 我明白了 ,我在问下 我 想用 yay -S deepin-wine-wechat 安装 微信 ,但是 报 好多 错

输入数字 (默认=1):  -> 找不到所有需要的包:
    lib32-libpsl (被这些包需要: deepin-wine-wechat -> lib32-libpulse-nosystemd-git -> lib32-glib2-git -> lib32-libelf-minimal-git -> lib32-curl-git)
    lib32-brotli (被这些包需要: deepin-wine-wechat -> lib32-libpulse-nosystemd-git -> lib32-glib2-git -> lib32-libelf-minimal-git -> lib32-curl-git)
    lib32-tdb (被这些包需要: deepin-wine-wechat -> lib32-libpulse-nosystemd-git)

是为什么呢? 我 为了 yay 能快一点 改了 清华源
yay --aururl "https://aur.tuna.tsinghua.edu.cn" --save
是因为 清华源 没有 微信的这些包么?
我之前 安装 的是 那个 微信 uos  统信 魔改版 ,但是那个 太不好用了 ,之前的聊天记录 都没有了 ……

离线

#7 2021-02-25 16:20:08

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,384
个人网站

Re: archlinux 连接安卓手机的问题

ifnk 说:
依云 说:

哦对,你的挂载点不能访问了,fuser 就检查不彻底。

ranger 占用目录很正常:你从那个目录运行的 ranger 吧,它的当前工作目录是目录,所以被占用、无法卸载了。
守护进程通常会在开始运行时把当前工作目录切换到 / 就是为了避免这种情况。
普通程序(尤其是 ranger、vim、zsh 这种终端程序)就需要你自己注意了。

谢谢你 ! 我明白了 ,我在问下 我 想用 yay -S deepin-wine-wechat 安装 微信 ,但是 报 好多 错

输入数字 (默认=1):  -> 找不到所有需要的包:
    lib32-libpsl (被这些包需要: deepin-wine-wechat -> lib32-libpulse-nosystemd-git -> lib32-glib2-git -> lib32-libelf-minimal-git -> lib32-curl-git)
    lib32-brotli (被这些包需要: deepin-wine-wechat -> lib32-libpulse-nosystemd-git -> lib32-glib2-git -> lib32-libelf-minimal-git -> lib32-curl-git)
    lib32-tdb (被这些包需要: deepin-wine-wechat -> lib32-libpulse-nosystemd-git)

是为什么呢? 我 为了 yay 能快一点 改了 清华源
yay --aururl "https://aur.tuna.tsinghua.edu.cn" --save
是因为 清华源 没有 微信的这些包么?
我之前 安装 的是 那个 微信 uos  统信 魔改版 ,但是那个 太不好用了 ,之前的聊天记录 都没有了 ……

你没启用 multilib 仓库。去改 /etc/pacman.conf。

离线

#8 2021-02-25 17:28:51

ifnk
会员
注册时间: 2021-01-25
帖子: 93

Re: archlinux 连接安卓手机的问题

依云 说:
ifnk 说:
依云 说:

哦对,你的挂载点不能访问了,fuser 就检查不彻底。

ranger 占用目录很正常:你从那个目录运行的 ranger 吧,它的当前工作目录是目录,所以被占用、无法卸载了。
守护进程通常会在开始运行时把当前工作目录切换到 / 就是为了避免这种情况。
普通程序(尤其是 ranger、vim、zsh 这种终端程序)就需要你自己注意了。

谢谢你 ! 我明白了 ,我在问下 我 想用 yay -S deepin-wine-wechat 安装 微信 ,但是 报 好多 错

输入数字 (默认=1):  -> 找不到所有需要的包:
    lib32-libpsl (被这些包需要: deepin-wine-wechat -> lib32-libpulse-nosystemd-git -> lib32-glib2-git -> lib32-libelf-minimal-git -> lib32-curl-git)
    lib32-brotli (被这些包需要: deepin-wine-wechat -> lib32-libpulse-nosystemd-git -> lib32-glib2-git -> lib32-libelf-minimal-git -> lib32-curl-git)
    lib32-tdb (被这些包需要: deepin-wine-wechat -> lib32-libpulse-nosystemd-git)

是为什么呢? 我 为了 yay 能快一点 改了 清华源
yay --aururl "https://aur.tuna.tsinghua.edu.cn" --save
是因为 清华源 没有 微信的这些包么?
我之前 安装 的是 那个 微信 uos  统信 魔改版 ,但是那个 太不好用了 ,之前的聊天记录 都没有了 ……

你没启用 multilib 仓库。去改 /etc/pacman.conf。


我装好了,但是没有办法打开…… 估计是 我装的 i3wm 的原因 。。。。

离线

页脚