Android Enthusiasts Asked by user2490003 on November 17, 2021
I am trying to use rsync
to transfer some files from my Android phone (Samsung Galaxy S10+ / Android V10) to my local machine (OSX / Mojave).
I did the following:
Installed SSH/SFTP server on my Android device and started the server
Verified that I am able to ssh
into the phone (although it logs me in as user u0_a312
and not my_user
?)
$ ssh [email protected] -p 2222
The authenticity of host '[192.168.0.16]:2222 ([192.168.0.16]:2222)' can't be established.
RSA key fingerprint is SHA256:3mNL574rJyHCOGm1e7Upx4NHXMg/YnJJzq+jXhdQQxI.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.0.16]:2222' (RSA) to the list of known hosts.
Password authentication
Password:
:/ $ whoami
u0_a312
rsync
from my local OSX machine to copy remote Android files to my laptoprsync -avzhP -e "ssh -p 2222" [email protected]:/storage/6632-6330/DCIM/Camera/* .
Password authentication
Password:
exec request failed on channel 0
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at /BuildRoot/Library/Caches/com.apple.xbs/Sources/rsync/rsync-52.200.1/rsync/io.c(453) [receiver=2.6.9]
As you can see, I ran into an error on step 3. From some basic snooping on forums, it seems like rsync
needs to be installed on the Android remote device.
(That’s also backed up by the fact that which rsync
returns nothing when executed from the Android shell)
However:
rsync
on the phone? Is this even the right solution here?rsync
process "just worked". Did something change with the standard installation of Android with regards to rsync
?First on Android each app has an own user-id/account, hence u0_a312
is the user of the app that runs the ssh server. Regular Linux user accounts like myuser
don't exist on Android.
Based on the path /storage/6632-6330/
I would assume that you are trying to access the external sd-card.
On a non-rooted device write access to ext-sd is not possible on Android using standard Linux/Unix file programs (this is only possible via Android Java API). Only if the ssh/ftp server + rsync was specially adopted to use this API it can work.
On Android 10/11 the situation is even getting worse because of the new "Scoped storage" system. Not sure if it is still possible to get full access to all files on the external ad-card.
Answered by Robert on November 17, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP