有这样一个问题:
有很多答案。在问题正文中,原帖者问如何mount
通过 WiFi 访问 Android 文件系统,这正是我想要做的。然而没有一个答案包含命令mount
。
我如何mount
通过 WiFi 访问手机的外部存储,以便可以使用命令ls
并获取每个文件的最后访问时间的具体结果?
与“漂亮”的 GUI 图片相比,我更喜欢使用 CLI 和命令mount
来对分区进行操作,例如/phone
。然后像 这样的命令ls /phone
实际上就可以正常工作。
不需要通过 GUI 复制和粘贴文件。只需简单的ls
命令。最简单的方法就是目标。
回复评论
Ubuntu 中有许多 FTP 客户端工具可供使用。但是它们带有自己的一组在解释器中运行的 shell/bash 类命令。我想使用常规 bash/shell 命令并从 调用脚本/etc/cron.daily
。
每天早上,Cron 任务都会自动启动mount
手机。然后轮询上次访问时间针对数千个文件。然后使用最后四次访问时间和umount
手机更新 bash 数组。
应该有不除了每天早上恢复笔记本电脑之外的用户输入(对于其他工作来说,这已经完成了)/etc/cron.daily
。
答案1
满足curlftpfs
(包curlftpfs
) - “将 ftp 主机挂载为本地目录”。首先将您的 Android 设备设置为 ftp 服务器,例如使用您链接的问题中解释的应用程序之一,然后在主机上执行以下操作:
curlftpfs server:port/directory /mountpoint
要卸载,请使用:
fusermount -u /mountpoint
示例/etc/fstab
行如下所示:
curlftpfs#server:port/directory /mountpoint fuse auto,user,uid=1000,allow_other,_netdev 0 0
不幸的是,自 2015 年以来,存在一个错误,libcurl3-gnutls
导致curlftpfs
文件操作非常慢,请参阅以下资源:
来源/进一步阅读
答案2
首先,我尝试了两个最流行的 Android 应用,用于通过 WiFi 共享文件FTP 服务器和无线 FTP 服务器:
- https://play.google.com/store/apps/details?id=com.theolivetree.ftpserver&hl=en_CA
- https://play.google.com/store/apps/details?id=com.medhaapps.wififtpserver.pro&hl=en_CA
两者与 Nautilus 配合得很好。除了没有一个像我预计的那样将“上次访问日期”转发给 Nautilus。两者都显示“未知”而不是有效日期。
正如其他答案中提到的那样,curlftpfs
它不起作用所以我尝试了:
sudo apt-get install sshfs
但是,这两个 Android WiFi 文件共享应用都不允许我登录。发给技术支持的电子邮件确认他们不支持安全外壳,只支持众所周知不安全的 FTP。
无论您使用哪个应用程序,您都需要创建一个目录来挂载远程文件夹。我使用了:
mkdir /mnt/phonesudo
chown rick:rick /mnt/phone
“rick” 是用户 ID。
您需要登录路由器并设置 IP 地址(就我而言192.168.0.11) 静态,这样每次手机连接到路由器时它都不会改变。这里有一个链接可以给你一个想法,但你的无疑会有所不同:
由于 Android 上的 FTP 服务器不支持 SSH,因此下一步请尝试此处推荐的 SimpleSSH:
- https://www.techrepublic.com/article/how-to-install-an-ssh-server-on-your-android-phone/
但是 SimpleSSH 在 Google Play Store 上似乎不太受欢迎?请使用评分很高的版本SSH/SFTP 服务器 - 终端从香蕉工作室:-https://play.google.com/store/apps/details?id=net.xnano.android.sshserver
在测试和崩溃期间,您需要卸载驱动器:
$fusermount -u /mnt/phone
安装后SSH/SFTP 服务器 - 终端使用此命令:
$ echo rick | sshfs -o password_stdin -p 2222 [email protected]:/ /mnt/phone
$ cd "/mnt/phone/Music/Uriah Heep/The Magician's Birthday"
rick@alien:/mnt/phone/Music/Uriah Heep/The Magician's Birthday$ ll
total 79000
-rw-rw-rw- 1 root root 8204186 Mar 10 2016 01 Sunrise.m4a
-rw-rw-rw- 1 root root 5375331 Mar 10 2016 02 Spider Woman.m4a
-rw-rw-rw- 1 root root 7599684 Mar 10 2016 03 Blind Eye.m4a
-rw-rw-rw- 1 root root 10355301 Mar 10 2016 04 Echoes In The Dark.m4a
-rw-rw-rw- 1 root root 8087257 Mar 10 2016 05 Rain.m4a
-rw-rw-rw- 1 root root 9605474 Mar 10 2016 06 Sweet Lorraine.m4a
-rw-rw-rw- 1 root root 9141838 Mar 10 2016 07 Tales.m4a
-rw-rw-rw- 1 root root 22511187 Mar 10 2016 08 The Magician's Birthday.m4a
$ stat "07 Tales.m4a"
File: '07 Tales.m4a'
Size: 9141838 Blocks: 17856 IO Block: 4096 regular file
Device: 31h/49d Inode: 11 Links: 1
Access: (0666/-rw-rw-rw-) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2016-03-10 17:22:24.000000000 -0700
Modify: 2016-03-10 17:22:24.000000000 -0700
Change: 2016-03-10 17:22:24.000000000 -0700
Birth: -
瞧!我现在可以看到我的项目需要的最后访问日期。不幸的是,我发现 Android 存在人类历史上最大的安全漏洞。尽管基于 Linux 内核,但 Google 决定禁用文件打开和读取的日期。
我欢迎所有关于这个答案的评论/问题