I tried to sync ogg-audio-files to my android device like this:
rsync -av piano /run/user/1000/gvfs/mtp\:host\=%5Busb%3A002%2C005%5D/SanDisk/Music/
===> rsync -av piano/ /run/user/1000/gvfs/mtp:host=%5Busb%3A002%2C007%5D/SanDisk/Music/
sending incremental file list
rsync: failed to set times on "/run/user/1000/gvfs/mtp:host=%5Busb%3A002%2C007%5D/SanDisk/Music/.": Operation not supported (95)
...
foo-bar/one.ogg
...
rsync: mkstemp "/run/user/1000/gvfs/mtp:host=%5Busb%3A002%2C007%5D/SanDisk/Music/foo-bar/one.ogg.0gzy9t" failed: Operation not supported (95)
Run Code Online (Sandbox Code Playgroud)
But only the directory got created. No file was transfered:
===> find /run/user/1000/gvfs/mtp:host=%5Busb%3A002%2C007%5D/SanDisk/Music/piano
/run/user/1000/gvfs/mtp:host=%5Busb%3A002%2C007%5D/SanDisk/Music/piano/foo-bar
Run Code Online (Sandbox Code Playgroud)
How to rsync between my android device and my Ubuntu PC?
我找到了一个解决方法:我从 Android 设备上拔下 micro-SC 卡,然后将其插入笔记本电脑的 SD 卡读卡器中。但是我不需要这样做的解决方案会很好。
不确定您是否需要一个已取得 root 权限的设备(我只运行已取得 root 权限的 LineageOS,不熟悉其他版本)。在 LineageOS 中,默认存在/system/xbin/rsync ,否则,将手机连接到 PC 并启动终端并在 PC 终端中执行以下所有命令:
sudo apt install wget adb wget -O rsync.bin http://github.com/pts/rsyncbin/raw/master/rsync.rsync4android adb Push rsync.bin /data/local/tmp/rsync adb shell chmod 755 /data/local/tmp/rsync adb shell cp /data/local/tmp/rsync /sdcard/rsync.bin adb shell /data/local/tmp/rsync --version
adb shell 'exec >/sdcard/rsyncd.conf && echo gid = 0 && echo uid = 0 && echo 地址 = 127.0.0.1 && echo 端口 = 1873 && echo "[root]" && echo path = / && echo 使用 chroot = false && echo 只读 = false'
# 在普通 Android 上 adb shell /data/local/tmp/rsync --daemon --no-detach --config=/sdcard/rsyncd.conf --log-file=/proc/self/fd/2 # 在 LineageOS 上 adb shell rsync --daemon --no-detach --config=/sdcard/rsyncd.conf --log-file=/proc/self/fd/2
adb 转发 tcp:6010 tcp:1873
rsync -av --progress --stats --partial rsync://localhost:6010/root/sdcard/DCIM 。
对于几个简单的解决方案,您可以尝试以下之一:
| 归档时间: |
|
| 查看次数: |
2004 次 |
| 最近记录: |