69 votes

Comment synchroniser vers Android ?

Comment puis-je me connecter à mon appareil Android pour synchroniser de la musique (ou autre chose) avec rsync ?

1voto

am70 Points 113

Je sais que l'auteur de la question voulait utiliser rsync, mais si l'idée est de synchroniser des répertoires, je recommande fortement d'utiliser syncthing. Beaucoup, beaucoup, d'avantages :

  • il fonctionnera en continu, pas besoin de le déclencher de temps en temps;
  • il synchronisera de nombreux dossiers différents, vers de nombreux appareils différents, en même temps;
  • vous pouvez utiliser syncthing comme partie d'une solution de sauvegarde pour votre téléphone portable, en deux étapes : (1) vous synchronisez toutes les données importantes de votre téléphone vers un hôte externe (2) vous mettez en place une solution de sauvegarde sur cet hôte.

Je synchronise personnellement toutes les données importantes de n'importe quel appareil que je possède vers au moins un autre appareil, éventuellement deux, situés dans des endroits physiquement différents; au moins l'un de ces appareils a des disques en raid; j'ajoute alors snapper à un appareil, de sorte que les anciennes versions de tous les fichiers sont conservées; ou vous pouvez utiliser une fonctionnalité de syncthing pour obtenir les mêmes résultats.

Une dernière note d'avertissement. Si vous manquez d'espace sur un appareil, cet appareil arrêtera syncthing, mais vous n'aurez aucune erreur de sa part, donc vous devriez vérifier de temps en temps. Si vous utilisez snapper, il est assez facile de remplir les disques, caveat emptor.

1voto

AwesomeARC Points 11

Utilisation de Termux

Termux apporte tout un tas d'utilitaires de ligne de commande Linux à Android, y compris rsync et openssh.

Vous pouvez configurer un serveur SSH sur votre appareil Android, puis utiliser rsync via SSH, à condition que votre PC et votre appareil Android soient connectés au même réseau WLAN.

Le wiki de Termux explique clairement les étapes requises pour configurer SSH et utiliser rsync.

Pour résumer :

  1. Configurer Termux

    • Installer Termux

    • Accorder l'accès au système de fichiers de Termux (permission Stockage) depuis les paramètres Android

    • Ouvrir Termux

    • Configurer un mot de passe

      $ passwd
      Nouveau mot de passe : 
      Retapez le nouveau mot de passe : 
      Le nouveau mot de passe a été configuré avec succès.
    • Mettre à jour la liste des packages

      $ apt update
    • Facultativement, mettre à jour également les packages existants (cela a résolu un problème de compatibilité dans mon cas)

      $ apt upgrade
  2. Configurer openssh

    • Installer openssh

      $ apt install openssh
    • Démarrer le démon ssh

      $ sshd

      Il écoute sur le port 8022 par défaut.

  3. Installer rsync

    $ apt install rsync

Pour commencer, tout ce dont vous avez besoin est :

  • Votre nom d'utilisateur sur Termux

    $ whoami
    u0_a223
  • L'adresse IP de l'appareil Android

    $ ip -4 a | grep wlan0 | tail -1
        inet 192.168.1.101/16 brd 192.168.255.255 scope global wlan0

    qui, dans ce cas, est 192.168.1.101.

Maintenant, vous pouvez faire presque tout avec rsync. Par exemple, si vous souhaitez copier le répertoire ~/Music de votre PC vers le /sdcard de l'appareil Android, vous pourriez faire quelque chose comme :

$ rsync -e 'ssh -p 8022' -aP ~/Music u0_a223@192.168.1.101:/sdcard

Lorsqu'on vous demande un mot de passe, saisissez celui que vous avez configuré précédemment.

1voto

gearcoded Points 231

J'ai essayé rsync via MTP, mais dans mon cas, la vitesse était vraiment lente. Si vous voulez essayer, voici une suggestion. Ma solution est basée sur la source suivante :

https://bbs.archlinux.org/viewtopic.php?id=261904

J'utilise Kubuntu, donc, il n'y a pas de dossier MTP dans le dossier /run/user/1000/gvfs/. J'ai téléchargé le paquet suivant :

https://li.nux.ro/download/nux/dextop/el7/x86_64/simple-mtpfs-0.2-3.el7.nux.x86_64.rpm

Voici le fichier binaire qui a fonctionné sur Kubuntu 20.04. Vous pouvez le trouver dans le dossier bin et le décompresser dans un dossier. Malheureusement, sur Plasma, il se peut qu'il ne monte pas le périphérique tant que nous n'avons pas tué un processus spécifique. Ensuite, vous pouvez utiliser la commande fuser.

Tout d'abord, vous devez trouver votre périphérique avec la commande lsusb :

$ lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 8087:0a2a Intel Corp. Bluetooth wireless interface
Bus 001 Device 011: ID 2717:ff48 Xiaomi Inc. Mi/Redmi series (MTP + ADB)
Bus 001 Device 003: ID 04f2:b3fd Chicony Electronics Co., Ltd HD WebCam (Asus N-series)
Bus 001 Device 006: ID 04fc:05d8 Sunplus Technology Co., Ltd Wireless keyboard/mouse
Bus 001 Device 004: ID 1bcf:08a0 Sunplus Innovation Technology Inc. Gaming mouse [Philips SPK9304]
Bus 001 Device 002: ID 05e3:0608 Genesys Logic, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Ici, nous devons copier l'adresse MAC 2717:ff48 du périphérique Xiaomi. Exécutez les lignes suivantes et remplacez 2717:ff48 par l'adresse MAC de votre périphérique :

DATA=`lsusb | grep '2717:ff48'`
echo $DATA
# Reading the bus number:
BUS=`echo ${DATA:4:3}`
# Reading the device number:
DEV=`echo ${DATA:15:3}`
# Killing the process which is using the device (if any)
fuser -k /dev/bus/usb/$BUS/$DEV

Ensuite, vous pouvez exécuter le fichier binaire et spécifier votre chemin pour le dossier monté :

./simple-mtpfs --device 1 /tmp/xiaomi

Cependant, comme la vitesse était vraiment lente, j'ai abandonné, utilisé un lecteur de carte, et synchronisé les fichiers depuis un dossier local vers le périphérique USB. Peut-être que c'était l'option la plus simple. Dans mon cas, c'est la meilleure option car le dossier de destination contient certains fichiers à supprimer, et pour prolonger la durée de vie d'une carte SD, il vaut mieux ne pas supprimer ou créer de nouveaux fichiers lorsque ce n'est pas nécessaire.

SistemesEz.com

SystemesEZ est une communauté de sysadmins 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