Rumah  >  Artikel  >  Tutorial sistem  >  Bagaimana untuk memindahkan fail dengan selamat melalui ssh menggunakan arahan scp di bawah Linux

Bagaimana untuk memindahkan fail dengan selamat melalui ssh menggunakan arahan scp di bawah Linux

WBOY
WBOYke hadapan
2024-02-09 13:39:30868semak imbas

Bagaimana untuk memindahkan fail dengan selamat melalui ssh menggunakan arahan scp di bawah Linux

Pada sistem pengendalian Unix atau Linux, utiliti scp (salinan selamat) adalah serupa dengan cp arahan yang lebih terkenal, tetapi digunakan untuk memindahkan fail dan direktori antara hos melalui rangkaian yang disulitkan yang selamat.

Memandangkan ia bergantung pada ssh untuk pemindahan data, ia menyediakan keselamatan yang sama dan menggunakan pengesahan yang sama seperti ssh. Tidak seperti rcp, arahan scp akan meminta anda untuk kata laluan untuk pengesahan jika diperlukan.

Dalam artikel ini, kami akan mendalami pemindahan fail selamat di Linux dan mempelajari cara menggunakan arahan scp. Dengan penjelasan terperinci dan contoh kes penggunaan suis dan pilihan scp biasa, anda akan belajar cara menggunakan utiliti ini.

Adalah penting untuk mengetahui perkara berikut sebelum anda memulakan

  1. Memandangkan scp bergantung pada ssh untuk pemindahan data, kunci ssh atau kata laluan diperlukan untuk mengesahkan pada sistem jauh (pemindahan fail Linux ssh).
  2. Sahkan bahawa anda mempunyai kebenaran menulis pada sistem sasaran dan membaca kebenaran pada fail sumber.
  3. Nota: Alat scp menggunakan titik bertindih (:) untuk membezakan antara lokasi terpencil dan setempat.
  4. Apabila menyalin fail dengan lokasi dan nama yang sama pada kedua-dua belah pihak, scp akan menimpa fail tanpa amaran terlebih dahulu.

Sintaks arahan SCP Linux

Untuk mula menggunakan arahan scp, anda perlu mengetahui sintaks asasnya, iaitu dalam format berikut:

less复制代码
scp [OPTION] [user@]SRC_HOST:]file1 [user@]DEST_HOST:]file2

Pilihan: Mewakili pilihan scp seperti konfigurasi ssh, kata laluan, sekatan, port ssh, salinan rekursif, dsb.

[user@]SRC_HOST:]fail1: Menunjukkan fail sumber.

[pengguna@]DEST_HOST:]fail2: mewakili fail sasaran

Seperti mana-mana arahan lain, alat scp mempunyai beberapa pilihan untuk mengawal kelakuannya. Yang paling biasa adalah seperti berikut:

  • -P: Menunjukkan port ssh hos jauh untuk disambungkan.
  • -p: Menentukan untuk mengekalkan pengubahsuaian fail, mod dan masa capaian daripada fail asal.
  • -q: Perlu menyekat mesej bukan ralat dan meter kemajuan.
  • -C: Paksa scp untuk memampatkan data apabila menghantar bendera -C ke ssh untuk membolehkan pemampatan pada sambungan selamat yang disulitkan.
  • -r: Memberitahu arahan scp untuk menyalin keseluruhan direktori secara rekursif.
  • -S: Nama program yang digunakan untuk menyulitkan sambungan. Memandangkan ssh digunakan, program mesti memahami suis ssh.
  • -v: Mod verbose. Membolehkan scp dan ssh untuk mengeluarkan mesej tentang kemajuan mereka. Ini berguna apabila menyahpepijat sambungan, konfigurasi dan isu pengesahan.

Pindahkan fail tempatan ke destinasi terpencil

Sebelum kita mula menggunakan scp, mari kita salin fail dari satu folder ke folder lain menggunakan cp. Kita semua tahu cara menggunakan arahan cp untuk mencapai ini:

bash复制代码
cp /home/linuxmi/linuxmi.mp3 /home/linuxmi/audio

Ia menyalin fail linuxmi.mp3 dalam direktori rumah pengguna linuxmi ke folder rumah pengguna yang sama, iaitu direktori audio linuxmi.

Dengan cara yang sama, contoh arahan scp yang boleh digunakan adalah seperti berikut:

typescript复制代码
scp /home/linuxmi/linuxmi.mp3 linuxmi@linuxmi.com:/home/linuxmi/audio

Gunakan linuxmi sebagai nama log masuk untuk memuat naik fail linuxmi.mp3 ke pelayan linuxmicom ke direktori jauh /home/linuxmi/audio���. Sila ambil perhatian bahawa scp akan meminta anda untuk kata laluan jauh untuk linuxmi sebelum memulakan muat naik. Jika tiada direktori jauh disediakan, fail akan disalin ke direktori rumah pengguna jauh. Jika anda tidak memberikan nama fail pada folder destinasi, ia akan membuat scp menyalin fail dengan nama asal. Jika anda ingin menyimpan fail di bawah nama yang berbeza, anda perlu menentukan nama fail baharu.

Pindahkan fail jauh ke destinasi tempatan

Untuk memuat turun fail, anda boleh menyebut lokasi terpencil sebagai lokasi sumber. Contohnya:

scp linuxmi@linuxmi.com:/home/linuxmi/audio/* /home/linuxmi/downloads

Ia akan memuat turun semua fail audio dalam direktori jauh /home/linuxmi/audio pada linuxmi.com ke direktori tempatan /home/linuxmi/downloads.

Perhatikan nama fail:

Nama fail boleh terdiri daripada pengguna dan hos untuk menunjukkan pemindahan fail ke atau dari hos tersebut. Untuk mengelakkan scp memproses nama fail yang mengandungi ":" sebagai penentu hos, nama fail tempatan boleh sama ada mutlak atau relatif. Walau bagaimanapun, nama fail jauh harus termasuk pengguna dan hos.

Nombor port lalai:

Jika pada hos jauh, SSH mendengar pada port yang berbeza (iaitu port selain daripada port lalai 22), anda boleh menggunakan suis -P untuk menunjukkan port tersebut.

Pindahkan direktori tempatan ke sasaran jauh

Salin direktori ke lokasi terpencil, sama seperti menyalin fail. Anda hanya perlu menggunakan bendera -r untuk pemindahan rekursif.

Untuk menyalin keseluruhan direktori ke sistem jauh, jalankan arahan dengan pilihan -r, contohnya:

scp -r /home/linuxmi/local_folder linuxmi@linuxmi.com:/home/linuxmi/remote_folder

Pemindahan fail antara dua sistem jauh

Arahan berikut akan menyalin fail /folder/linuxmi.mp3 daripada hos jauh linuxmi.com ke direktori /folder pada hos jauh www.linuxmi.com.

scp linuxmi@linuxmi.com:/folder/linuxmi.mp3 linuxmi@www.linuxmi.com:/anotherfolder

Selepas memulakan operasi ini, anda akan diminta untuk memberikan kata laluan dua sasaran jauh.

Untuk menghalakan trafik melalui localhost (iaitu komputer di mana arahan itu dilaksanakan), gunakan suis -3 seperti berikut:

scp -3 linuxmi@linuxmi.com:/folder/linuxmi.mp3 linuxmi@www.linuxmi.com:/anotherfolder

Atas ialah kandungan terperinci Bagaimana untuk memindahkan fail dengan selamat melalui ssh menggunakan arahan scp di bawah Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:lxlinux.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam