Kuidas faile ühest Linuxi serverist teise teisaldada

Mitme serveriga Linuxi keskkonnas hõlmavad paljud toimingud ühe või mitme faili teisaldamist ühest serverist teise. Sõltuvalt teisaldatavate failide arvust võivad teid aidata mitmed käsud… Oletame nende arutelude puhul, et meie serverid on Alice ja Madhat ning meie kasutaja Alice’is on jänes ja meie kasutaja madhat on Põldhiir.

1
Ühe faili puhul proovige käsku “scp”. Saate seda kasutada käsklusena “push” või “pull”, kuid alustame faili lükkamisest teise serverisse. Alice’is olles kasutage käsku “scp myfile fieldmouse@madhat:thatfile”. See kopeerib faili teise süsteemi, väljahiire kasutajatunnusesse nimega “thatfile”. Kui olite teises süsteemis sisse logitud, saate sama lihtsalt faili tõmmata käsuga “scp rabbit@alice:myfile thatfile” ja saada samad tulemused.

2
Terve kataloogi kopeerimiseks saame taas pöörduda käsu “scp” poole. Seekord lisame lüliti -r, et koopia toimiks “rekursiivselt”. “scp -r mydir fieldmouse@madhat:.” kopeerib kogu kataloogi “mydir” teise süsteemi, sealhulgas kogu selle sisu ja täiendavad kataloogid. Madhati kataloog kannab endiselt nime mydir.

3
Mis siis, kui teil on palju faile ja katalooge, mida kopeerida? Võite kasutada käsku “tar”, et luua üks fail ja seejärel kopeerida see fail nagu ülal, seejärel kasutada tar selle laiendamiseks teises serveris… Aga see tundub nii… Unixi moodi. Peab olema viis, kuidas seda teha ühe sammuga, eks? No muidugi! Sisestage oma lemmikkarbi torud. Saame endiselt kasutada tar-i, et pakkida soovitud failid, ja seejärel kasutada ssh-d, et see teise süsteemi viia (mida scp on kaante all kasutanud), ja tar-ga teisel poolel failide tagasi laiendamiseks. Kuid milleks raisata aega ja ruumi tegeliku tar-faili loomisele, kui saame lihtsalt luua toru, mis katab kahte süsteemi ja edastada tar-andmed selle kaudu? Kasutades sama kataloogi nagu eelmises näites, proovige “tar -cf – mydir/ * | ssh fieldmouse@madhat ‘tar -xf -‘”