1 votes

Installer rsync sur Android pour transférer des fichiers d'Android vers OSX

Je suis en train d'essayer d'utiliser rsync pour transférer quelques fichiers de mon téléphone Android (Samsung Galaxy S10+ / Android V10) vers ma machine locale (OSX / Mojave).

J'ai fait ce qui suit:

  1. Installé Serveur SSH/SFTP sur mon appareil Android et démarré le serveur

  2. Vérifié que je peux me connecter en ssh sur le téléphone (bien qu'il me connecte en tant qu'utilisateur u0_a312 et non mon_utilisateur?)

    $ ssh mon_utilisateur@192.168.0.16 -p 2222

    L'authenticité de l'hôte '[192.168.0.16]:2222 ([192.168.0.16]:2222)' ne peut être établie.
    Empreinte de clé RSA: SHA256:3mNL574rJyHCOGm1e7Upx4NHXMg/YnJJzq+jXhdQQxI.
    Êtes-vous sûr de vouloir continuer la connexion (yes/no) ? yes
    Avertissement : ajout de l'hôte '[192.168.0.16]:2222' (RSA) à la liste des hôtes connus.
    Authentification par mot de passe
    Mot de passe:
    / $ whoami u0_a312
  3. Essayé d'exécuter rsync depuis ma machine OSX locale pour copier des fichiers Android distants sur mon ordinateur portable

    rsync -avzhP -e "ssh -p 2222" mon_utilisateur@192.168.0.16:/storage/6632-6330/DCIM/Camera/* .

    Authentification par mot de passe Mot de passe: L'exécution de la requête a échoué sur le canal 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]

Comme vous pouvez le voir, j'ai rencontré une erreur à l'étape 3. En fouillant un peu sur les forums, il semble que rsync doit être installé sur le périphérique Android distant.

(Cela est également confirmé par le fait que which rsync ne renvoie rien lorsqu'il est exécuté depuis l'interpréteur de commandes Android)

Cependant:

  • Comment puis-je installer rsync sur le téléphone? Est-ce même la bonne solution ici?
  • Je n'ai jamais eu besoin de le faire sur mon téléphone précédent (Galaxy S7), le processus rsync ci-dessus "fonctionnait simplement". Quelque chose a-t-il changé dans l'installation standard d'Android concernant rsync ?

0 votes

Je n'ai jamais essayé cela, mais peut-être que Syncopoli pourrait aider. Il se décrit comme "Un client rsync qui fonctionne", donc espérons que ça fonctionne.

0 votes

Bien sûr, vous avez besoin du binaire rsync côté Android pour que la synchronisation fonctionne. rsync n'a jamais fait partie de l'installation standard d'Android. // Vous pouvez utiliser Termux à la fois pour sshd et rsync. Simple. Ou placez le binaire rsync quelque part dans votre $PATH. // Une autre idée est d'utiliser rclone des deux côtés avec un serveur intégré sftp. // Pourquoi vous connectez-vous en tant qu'utilisateur u0_a312 (l'UID de l'application) et non en tant que my_user, le concept d'utilisateurs et de connexion dans Android: android.stackexchange.com/questions/209918

0 votes

Répondre ici bien aide sur comment installer

2voto

pr0nin Points 353

Tout d'abord sur Android, chaque application a son propre identifiant utilisateur/compte, donc u0_a312 est l'utilisateur de l'application qui exécute le serveur ssh. Les comptes d'utilisateurs Linux réguliers comme myuser n'existent pas sur Android.

En se basant sur le chemin /storage/6632-6330/, je suppose que vous essayez d'accéder à la carte SD externe.

Sur un appareil non rooté, l'accès en écriture à la carte SD externe n'est pas possible sur Android en utilisant des programmes de fichiers Linux/Unix standards (cela n'est possible que via l'API Java Android). Seulement si le serveur ssh/ftp + rsync a été spécialement adapté pour utiliser cette API, cela peut fonctionner.

Sur Android 10/11, la situation est encore plus difficile en raison du nouveau système de "stockage contrôlé". Je ne suis pas sûr s'il est toujours possible d'avoir un accès complet à tous les fichiers sur la carte SD externe.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X