Forum Linux.débutant copier un dossier entre deux ordinateurs

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
1
1
mar.
2018

Bonsoir,

comment copier un dossier, et ses sous-dossiers et tous les fichiers des sous-dossiers entre deux ordinateurs ?

J'utilise :

    scp /home/arnauld/Music/* root@10.0.242.1:/home/music/

Mais j'ai l'impression que certains sous-dossiers et leurs fichiers ne sont pas copiés…Y-a-t-il une meilleur commande ?

Merci.

  • # rsync te synchronise les fichiers, filezilla te permet d'utiliser une interface graphique

    Posté par  . Évalué à 6.

    Pour scp, il faut utiliser l'option -r, sauf que si tu as commencé à copier, tu risques de devoir tout recommencer …

    rsync te permet de synchroniser des dossiers et sous dossiers sur une même machine ou sur deux machines différentes. Tu devrais trouver des infos là : https://doc.ubuntu-fr.org/rsync

    Si tu ne comprends pas, n'hésite pas à repasser par ici.

    Sinon, si tu préfères les interfaces graphiques, tu peux utiliser filezilla

  • # attention au root

    Posté par  . Évalué à 3.

    rien à voir avec la question mais tu devrais utiliser un utilisateur lambda pour ce genre de chose et utiliser plutôt user@machine_distante:path.
    De mémoire le fichier appartient alors à root avec ta commande sur ta machine distante. Tu auras dnc potentiellement des problème de droit pour lire ta musique.

    • [^] # Re: attention au root

      Posté par  . Évalué à 0.

      "Tu auras dnc potentiellement des problème de droit pour lire ta musique."

      J'ai fait un :

      sudo chmod 755 -R /home/music

      arnauld

      • [^] # Re: attention au root

        Posté par  . Évalué à 5.

        Tes fichiers de musique ont besoin d'être exécutables ?

        • [^] # Re: attention au root

          Posté par  . Évalué à 1.

          Tes fichiers de musique ont besoin d'être exécutables ?
          ```Qu'aurais-je du faire ?
          

          arnauld

          • [^] # Re: attention au root

            Posté par  . Évalué à 5.

            Ça dépend de qui doit pouvoir lire ou écrire dans ce dossier. Mais une chose est sûre les droits d'exécution sont abusifs.
            Pour enlever tous les droits d'exécution et d'entrée dans les dossiers (lecture écriture pour le propriétaire, lecture pour le groupe et le reste du monde)
            chmod -R 644 /home/music
            Et remettre le droit d'entrée dans les dossiers pour tout le monde
            chmod -R +X /home/music

            • [^] # Re: attention au root

              Posté par  . Évalué à 1. Dernière modification le 03/03/18 à 17:42.

                  chmod -R 644 /home/music
                  Et remettre le droit d'entrée dans les dossiers pour tout le monde
                  chmod -R +X /home/music
              

              Merci.

              arnauld

          • [^] # Re: attention au root

            Posté par  . Évalué à 5.

            La notation octale a la peau dur malgré l’incompréhension de son fonctionnement par la grande majorité des utilisateurs.

            La notation symbolique a été inventée depuis longtemps à cause de ça, par exemple le symbole pour lecture est 'r' (read), l'écriture 'w' (write), l'exécution 'x' (execute).
            Si tu veux appliquer des droits à au propriétaire (user) tu utilises la lettre 'u' au groupe la lettre 'g' au reste du monde la lettre 'o' (others).

            Ex : chmod u=rw,go=r toto Propriétaire (User) = read et write, group et others = read only.

            '=' tu appliques un droit
            '+' tu ajoutes un droit, ex sur l'exemple précédent ajouter le droit d'écriture au groupe : chmod g+w toto
            '-' tu retires un droit, ex sur l'exemple précédent supprimer le droit de lecture au monde : chmod o-r toto

            [kangs<<test>>:0s:tmp]$ touch toto
            [kangs<<test>>:1s:tmp]$ chmod u=rw,go=r toto
            [kangs<<test>>:0s:tmp]$ ll toto
            -rw-r--r--+ 1 kangs users 0  1 mars  19:17 toto
            [kangs<<test>>:0s:tmp]$ chmod g+w toto
            [kangs<<test>>:0s:tmp]$ ll toto
            -rw-rw-r--+ 1 kangs users 0  1 mars  19:17 toto
            [kangs<<test>>:0s:tmp]$ chmod o-r toto
            [kangs<<test>>:0s:tmp]$ ll toto
            -rw-rw----+ 1 kangs users 0  1 mars  19:17 toto
            

            Ça se mémorise vite et tu évites les erreurs bêtes, après ça ce n'est que la base, man chmod pour plus d'infos.

            • [^] # Re: attention au root

              Posté par  . Évalué à 2.

              La notation octale a pour gros avantage d'être plus concise, ce qui explique que je l'utilise assez souvent.

              • [^] # Re: attention au root

                Posté par  . Évalué à 3.

                Je pense surtout que tu aimes le calcul mental, chacun son truc ;)

                • [^] # Re: attention au root

                  Posté par  . Évalué à 2. Dernière modification le 02/03/18 à 09:03.

                  Disons que d'une manière plus générale, je préfère faire travailler la tête que les doigts, donc si je peux économiser un ou deux frappes clavier je suis preneur ;).

                  C'est une des raisons d'ailleurs qui en général me font préférer Ruby à Python : on a pas une manière imposée de faire en ruby, contrairement à Python qui pour faire certaines choises impose sa façon de faire qui n'est pas forcément la plus concise par rapport à d'autres langages.

              • [^] # Re: attention au root

                Posté par  (site Web personnel) . Évalué à 2.

                Yep, sauf que je ne sais pas faire en octal

                chmod -R ugo+rX

                À noter le 'X' et non le 'x'… Cela change du tout au tout ! Je laisse au lecteur la joie de découvrir la différence…

    • [^] # Re: attention au root

      Posté par  . Évalué à 3.

      Ce n'est effectivement généralement pas très recommandé de laisser la possibilité à root de se connecter en ssh (il y a l'option PermitRootLogin dans les fichiers de config pour empêcher ça), surtout si l'authentification par mot de passe est autorisée.

      Mais bon, visiblement la machine est sur un réseau locale, sans doute accessible que depuis celui-ci…

      • [^] # Re: attention au root

        Posté par  . Évalué à 1. Dernière modification le 01/03/18 à 12:04.

        "Mais bon, visiblement la machine est sur un réseau locale, sans doute accessible que depuis celui-ci…"

        Effectivement c'est sur mon réseau domestique. Je voulais créer un dossier "music" sur mon Raspberry Pi où tourne mon serveur Yunohost avec Ampache et mettre dans ce dossier "music" ma musique. Ca a marché. Merci des conseils, je débute sous Linux…

        arnauld

  • # Autre solution: sshfs

    Posté par  . Évalué à 6.

    C'est résolu, mais au cas ou…

    Il est aussi possible de faire du "partage" de dossier distant via sshfs. La page Wikipedia montre les commandes à utiliser pour le mettre en place, ainsi qu'une façon pour que ce soit mois en place automatiquement au boot si souhaité.

    De la, il est ensuite possible soit de consulter les fichiers à distance, soit de les copier sur ou depuis sa machine, via une interface graphique (ou un shell, d'ailleurs) comme si c'était en local (en terme d'interface, je veux dire, les contraintes habituelles du réseau sont naturellement toujours présentes).

    Comparé aux partages windows, je dirais que c'est plus simple à mettre en place et que ça entraîne moins d'installations de dépendances. De mon point de vue.

    • [^] # Re: Autre solution: sshfs

      Posté par  . Évalué à 3. Dernière modification le 01/03/18 à 11:55.

      Cette solution est intéressante lorsque l'on veut un montage permanent. Pour du one shot, un scp/rsync/filezilla sont bien plus rapides (surtout si à la fin on utilise rsync pour synchroniser le répertoire monté et le répertoire sur le disque local).

  • # Wildcard

    Posté par  . Évalué à 2. Dernière modification le 01/03/18 à 15:09.

    Le wildcard ('*') ne sélectionne pas les éléments masqués (commençant par un '.'), il est donc normal que tu ailles l'impression qu'il manque des fichiers. La solution est celle précedemment indiquée : l'option de récursivité '-r'.

  • # nc et tar

    Posté par  (site Web personnel) . Évalué à 1.

    D'abord côté destination :

    nc -l 1234 | tar -xzv

    Puis côté source :

    tar -cz . | nc 192.168.32.229 1234
    • [^] # Re: nc et tar

      Posté par  . Évalué à 2.

      C’est marrant, je connaissais avec ssh.

      ssh compte1@ordi1:tar czf - repertoire_a_sauver | ssh compte2@ordi2:tar xzf -

      En fonction de la puissance des machines et de la rapidité du réseau, ça peut aller plus vite sans compression.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.