Hoe bestanden van de ene Linux-server naar de andere over te zetten

Schrijver: Janice Evans
Datum Van Creatie: 4 Juli- 2021
Updatedatum: 1 Juli- 2024
Anonim
How to Copy Files from One Linux Server to Another | SCP Command For Beginners
Video: How to Copy Files from One Linux Server to Another | SCP Command For Beginners

Inhoud

In een Linux-omgeving met meerdere servers omvatten veel taken het verplaatsen van een of meer bestanden van de ene server naar de andere. Afhankelijk van het aantal bestanden dat je moet verplaatsen, zijn er verschillende commando's die je kunnen helpen.... Laten we voor deze discussies aannemen dat onze servers alice en madhat zijn, en dat onze gebruiker bij alice konijn is en onze gebruiker bij madhat veldmuis.

Stappen

  1. 1 Probeer voor een eenvoudig bestand de opdracht "scp". U kunt dit gebruiken als een "push"- of "pull"-opdracht, maar laten we beginnen door het bestand naar een andere server te pushen. Terwijl je op Alice bent, gebruik je het commando "scp myfile fieldmouse @ madhat: thatfile". Dit zal het bestand naar het andere systeem kopiëren onder het gebruikers-ID "thatfile". Als u op een ander systeem was ingelogd, kunt u het bestand net zo gemakkelijk ophalen met het commando "scp konijn @ alice: mijnbestand dat bestand" en krijgt u hetzelfde resultaat.
  2. 2 Om de hele directory te kopiëren, kunnen we de opdracht "scp" opnieuw gebruiken. Deze keer voegen we de schakeloptie -r toe om de kopie te dwingen "recursief" te handelen. "scp -r mijndir veldmuis @ madhat :." - zal de volledige map "mydir" naar een ander systeem kopiëren, inclusief alle inhoud en extra mappen. De directory op madhat zal nog steeds mydir heten.
  3. 3 Wat als je een grote puinhoop aan bestanden en mappen hebt om te kopiëren? Je kunt het "tar"-commando gebruiken om een ​​bestand aan te maken, dan dat bestand kopiëren zoals hierboven, en dan tar gebruiken om het naar een andere server te distribueren ... Maar het ziet eruit als ... niet Unix-achtig. Er moet toch een manier zijn om het in één stap te doen? Ja natuurlijk!

    E Voer de pijp van je favoriete schelp in. We kunnen nog steeds tar gebruiken om de bestanden die we willen te verpakken en vervolgens SSH gebruiken om ze op een ander systeem te krijgen (wat SCP onder shells gebruikt), en tar aan de andere kant om de bestanden terug te distribueren. Maar waarom zou u tijd en ruimte verspillen aan het maken van het tar-bestand zelf, als we eenvoudig een pijp kunnen maken die de twee systemen overspant en tar-gegevens erdoorheen stuurt?

    Gebruik dezelfde map als in het vorige voorbeeld en probeer "tar -cf - mydir / * | ssh fieldmouse @ madhat" tar -xf - "

Tips

  • Natuurlijk zijn er ook andere manieren om dit te doen. Linux zit vol met tools.Uw beoordeling kan worden gewijzigd.
  • U moet de gebruikersnaam / hostnaam / bestandsmapnaam wijzigen, afhankelijk van uw netwerkconfiguratie en omgeving, terwijl u de bovenstaande opdrachten gebruikt. De bovenstaande opdrachten zijn slechts voorbeelden van het uitvoeren van opdrachten om bestanden naar de server te kopiëren.

Waarschuwingen

  • Zorg ervoor dat de ID's en hun GID's op de verschillende systemen die u gebruikt hetzelfde zijn (niet alleen gebruikersnamen). Als dit niet het geval is, ontstaan ​​er interessante beveiligingsproblemen.