Forum Linux.mandriva Installation nouvelle machine: transfert des fichiers d'une autre machine

Posté par  .
Étiquettes : aucune
0
1
jan.
2006
Bonjour,

J'ai une nouvelle machine en mandriva 2006 X64.
J'ai une machine ancienne en mandriva cooker.
Les deux machines sont en réseau local.

Je cherche le moyen de transférer les fichiers de l'ancienne vers la nouvelle (/home de 5 utilisateurs + fichiers d'autres répertoires).

J'ai pensé qu'il fallait utiliser NFS, mais le partage de la racine ne donne pas le partage des sous-répertoires ... mettre chaque répertoire en partagé et assez long et je ne suis pas sur du résultat en conservant les fichiers avec les droits et les dates identiques.
(-alldirs dans le fichier exports ne fonctionnant pas)

J'ai vu dans des posts qu'il était probablement utile d'utiliser tar ... mais j'ai pas compris les syntaxes et si ces commandes étaient à utiliser avec nfs ou pas ...

Comment dois je m'y prendre pour viter de ressembler à un moine copiste ?
  • # Samba

    Posté par  . Évalué à 1.

    Je ne connais pas NFS.
    J'utilise pour ma part Samba (j'ai aussi une machine windows) qui fonctionne très bien.

    Pour plus d'infos :
    http://lea-linux.org/cached/index/Reseau-partfic-samba.html#
  • # Scp ?

    Posté par  . Évalué à 2.

    Si l'une des machines est équipée d'un serveur SSH, scp peut largement faire l'affaire.

    scp user@machine_source:/chemin/fichier machine_destination:/chemin

    ex : Copie récursive avec compression de tout le contenu de /home/
    scp -rC root@mandriva_cooker:/home/* root@mandriva_2006:/home/

    A noter ceci dit, mieux vaut transferer de grosses archives (genre tar.bz2) plutôt qu'une multitude de petits fichiers, car scp est plus rapide dans ce cas.

    man scp en cas de doute.

    M
    • [^] # Re: SSH ?

      Posté par  . Évalué à 1.

      Je suis nul ... je n'arrive pas à trouver comment lancer un serveur SSH !

      Un peu d'aide me serait utile car je ne trouve pas sshd.
      • [^] # Re: SSH ?

        Posté par  . Évalué à 2.

        Je suis nul

        Meuhh non !

        Je suppose que sur Mandriva on installe un serveur SSH avec une commande du genre "urpmi ssh-server" ou par l'outil graphique d'ajout et suppression de paquets.

        Idem pour le démarrage qui doit se faire avec un truc genre
        "/etc/init.d/ssh-je-sais-pas-quoi start" ou par un autre outil graphique (il est très possible qu'après l'installation il le lance tout seul)

        Pour tester : "ssh nomdemachine"

        M
        • [^] # Re: SSH ?

          Posté par  . Évalué à 1.

          J'ai installé ssh-serveur sur la machine origine (192.168.1.1).
          (il a généré des clés dans /etc/ssh/)

          dans sshd_config j'ai (lignes non commentées):
          Protocol 2,1
          # HostKey for protocol version 1
          HostKey /etc/ssh/ssh_host_key
          # HostKeys for protocol version 2
          HostKey /etc/ssh/ssh_host_rsa_key
          HostKey /etc/ssh/ssh_host_dsa_key
          PermitRootLogin yes
          X11Forwarding yes
          UsePrivilegeSeparation yes
          Subsystem sftp /usr/lib/ssh/sftp-server

          Après modification pour tester différentes options sur le paramètre PermitRootLogin ... je relance par :
          [root@Lucius ssh]# service sshd restart
          Arrêt de sshd : [ OK ]
          Lancement de sshd : [ OK ]
          [root@Lucius ssh]#

          sur la machine destination j'ai recopié toutes les clés publiques (via une clé USB).
          Je lance la commande en root :
          #scp -rC root@192.168.1.1:/home/* root@127.0.0.1:/home/
          réponse:
          root@192.168.1.1's password:

          Je tape le mot de passe de root de la machine origine sans succès et j'obtiens :
          Permission denied, please try again.
          Permission denied, please try again.
          Permission denied (publickey,password,keyboard-interactive).
          lost connection

          SI j'essaie en mettant les clés publiques avec le paramètre -i de la commande scp, j'ai le même résultat.

          Comment faire pour avoir une liaison non sécurisée qui me permettrait juste de faire le transfert ?
          • [^] # Re: SSH ?

            Posté par  . Évalué à 2.

            #scp -rC root@192.168.1.1:/home/* root@127.0.0.1:/home/

            Simplifie :
            scp -rp root@192.168.1.1:/home/* /home/

            Je tape le mot de passe de root de la machine origine

            Ta "machine origine", c'est bien la machine distante ?

            sans succès et j'obtiens :
            Permission denied, please try again.

            Il se pourrait aussi que tu aies un fichier /etc/ssh/denyusers, qui contienne root. Dans ce cas, vide-le ou vire-le.

            Si jamais tu as configuré le niveau de sécurité de ta machine en "Avancée" à l'install, il se pourrait aussi que ce fichier ou le PermitRootLogin No soient restaurés par msec automatiquement après que tu les aies retirés. La console de réglage de la sécurité qu'on atteint à partir de drakconf (s'il n'a pas changé de nom) permet de débloquer la situation en autorisant à se connecter en root à distance (le champ approprié a une description approchante de ça).

            « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

            • [^] # Re: SSH ?

              Posté par  (site web personnel, Mastodon) . Évalué à 1.

              Salut,

              ceci dit, si par défaut le root n'est pas autorisé au login direct par ssh ou scp, je pense qu'il y a une bonne raison de sécurité (même si je suis pas expert en sécurité). Je te conseillerai donc de pas trop toucher à ces machins là, alors que tu peux faire la chose très simplement autrement (à moins de bien savoir ce que tu fais).

              Par exemple la méthode que je te conseillais ci-dessous ne te conseillait sûrement pas et donc se faisait sans te connecter en root! Je disais donc que tu balances le home à un compte user quelconque (le tien par exemple, de façon logique).

              Ensuite évidemment depuis la machine qui reçoit le home de l'autre machine, là tu peux te logguer en root en local pour faire tes petits déplacements de répertoires dans le /home approprié, de même que régler les permissions et propriétés, etc.

              Perso, je trouve cette procédure plus appropriée que vouloir à tout prix casser une protection de sécurité qui a sûrement été décidée pour de solides raisons. Moi je toucherais pas à la config du serveur faite par Mandriva (en tous cas, pas pour cette option précise, pour d'autres, peut-être je dis pas), c'est bien plus sécuritaire, vraiment. En plus, c'est fichtrement plus simple ainsi. Ce serait déjà fait! :-)

              Allez bonne continuation.

              Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]

              • [^] # Re: SSH ?

                Posté par  . Évalué à 1.

                Merci aussi.

                Je ne change le niveau de sécurité que sur la machine que je vais reconditionner en home cinéma d'ici peu.
                Le serveur ssh est sur cette machine et sera supprimé dès la fin des manipulations.
                Je suis bien protégé en terme de firewall.
            • [^] # Re: SSH ?

              Posté par  . Évalué à 1.

              Merci.

              J'ai diminué le niveau de sécurité et ça passe.
              J'ai juste eu quelques difficultés du fait de lien symboliques ... bouclage garanti !
              • [^] # Re: SSH ?

                Posté par  . Évalué à 2.

                J'ai juste eu quelques difficultés du fait de lien symboliques ... bouclage garanti !

                Sinon, il y a rsync, un peu plus lourd à mettre en oeuvre, mais plus efficace pour copier des trucs un peu complexes. De mémoire :
                rsync -aHv -e ssh 192.168.1.1:/home/ /home/
                Voire si tu veux détruire les scories ou les fichiers qui ne seraient pas sur la source (scories de la copie avec scp, fichiers qui auraient été "nettoyés" de la machine source... attention : les autres répertoires de /home ou les nouveaux fichiers aussi !) :
                rsync -aHv -e ssh --delete --force 192.168.1.1:/home/ /home/
                Éventuellement, l'option -n permet de vérifier que la commande fera bien ce qu'on veut sans le faire vraiment (donc sans tout casser en cas d'erreur) :
                rsync -naHv -e ssh --delete --force 192.168.1.1:/home/ /home/
                Ne pas oublier de le réexécuter après (une fois que la trace est satisfaisante) sans cette option...

                « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

      • [^] # Re: SSH ?

        Posté par  (site web personnel, Mastodon) . Évalué à 3.

        Salut,

        effectivement, si ton but est juste de transférer des fichiers, et non pas de partager des fichiers (genre un partage de home entre plusieurs machines), t'embête pas avec des trucs comme NFS, ni même samba (samba, c'est bien pour faire des partages avec des machines sous win, mais là on a affaire à deux machines GNU).

        Bon donc là, installe le serveur ssh sur une machine (ou les deux, c'est tjrs utile un serveur ssh!): "urpmi openssh-server". Sur l'autre, tu peux mettre juste le client, ça suffira: "urpmi openssh-clients".

        Mandriva rajoutera ton serveur ssh dans la liste des services, et donc sshd sera lancé automatiquement au démarrage. Evidemment, on va pas relancer l'ordi juste pour ça (on n'est pas sous win ;-), donc un petit coup de "service sshd start" en root te permet de lancer sshd dès maintenant. Note que tu peux aussi gérer les services en graphiques en lançant "drakxservices" (accessible aussi par le Mandrake Control Center). Au passage, si après coup tu ne veux pas que sshd soit lancé à chaque démarrage, mais tu préfères le lancer à la main quand t'en as besoin, tu peux faire tout ça aussi dans le drakxservices.

        Bon maintenant sshd est lancé sur une machine. L'autre a un client ssh pour transférer. T'as plus qu'à regarder le manuel et la syntaxe ssh/scp.
        Mais bon, pr te donner une idée de la commande à taper: supposons que le serveur ssh est sur la machine de destination.
        Place toi sur la machine source qui possède donc le rép home que tu veux balancer ds l'autre. Regarde l'ip de la machine dest avec un tit ifconfig, et tape:
        "scp -r /home user@ip-destination:"

        Voilà, ça créera un répertoire home copie parfaite du home source dans le rép perso du user choisi. Et voilu! :-)
        'lus.

        Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]

        • [^] # Re: SSH ?

          Posté par  . Évalué à 2.

          C'est de suite plus beau avec des détails :)

          M

Suivre le flux des commentaires

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