Saya ssh
masuk ke direktori webhost saya, dan tar
mengakses webapp untuk mengunduh. Ketika saya mencoba untuk mv
ke ~/mydirectory/backups
atau /home/mydirectory/backups
, ia mendefinisikan "rumah" sebagai root saya di hosting bahwa aku ssh'ed ke dalam.
Bagaimana cara mv di ssh ke drive lokal sementara masih di dalam sistem webhost?
Jawaban:
Hal pertama yang pertama: ssh adalah cara untuk login dari jarak jauh ke komputer lain. Shell (command line) yang Anda dapatkan setelah Anda ssh adalah (cukup banyak) sama seperti jika Anda telah membuka xterm di mesin remote. Jika tidak menawarkan cara seperti itu untuk memindahkan file.
Namun, fakta bahwa komputer jarak jauh menerima koneksi ssh memberi Anda beberapa opsi untuk bertukar file:
Gunakan scp Untuk menyalin dari komputer lokal Anda ke remote, ketik, di komputer lokal:
scp /tmp/file [email protected]:/home/name/dir
(di mana / tmp / file dapat diganti dengan file lokal dan / home / name / dir dengan direktori remote)
Untuk menyalin dari komputer jarak jauh ke komputer lokal, ketik, di komputer lokal :
scp [email protected]:/home/name/dir/file /tmp
Gunakan sshfs Ini sedikit lebih maju tetapi jauh, lebih bagus (ketika koneksi internet kedua komputer baik. Jika tidak, tetap gunakan scp)
Anda dapat "menautkan" direktori dari komputer jarak jauh ke direktori (kosong) komputer lokal. Katakan Anda "menautkan" / some / remote / dir dari komputer jarak jauh ke / home / youruser / remotecomp di komputer Anda. Jika ada file / some / remote / dir / file di komputer jarak jauh, Anda dapat melihatnya di / home / youruser / remotecomp / file. Anda dapat menyalin dan mv seperti biasa, dan Anda bahkan dapat mengubah file dan direktori jarak jauh.
Namun perhatikan, bahwa ketika koneksi berakhir, / home / youruser / remotecomp menjadi direktori kosong lagi, dan Anda hanya menyimpan di komputer lokal file yang Anda salin ke direktori lain
Untuk mencapai ini:
1) instal sshfs:
sudo apt-get install sshfs
2) buat dir kosong
mkdir /home/youruser/remotecomp
3) "menautkan" kedua direktori (istilah yang tepat adalah mount)
sshfs [email protected]:/some/remote/dir /home/youruser/remotecomp
4) Nikmati
5) "putuskan tautan" dir
fusermount -u /home/youruser/remotecomp
Jika komputer lokal menjalankan windows Anda dapat menemukan versi
scp
untuk windows. Lihat, misalnya, wincpsumber
sshfs
pilihanrsync -P -e ssh /tmp/file [email protected]:/home/name/dir
. Ini karena jika transfer file gagal setengah jalan,scp
hanya akan menghapus file. Di sisi lain, jika Anda menggunakanrsync
dengan-P
opsi, itu akan menyimpan file yang tidak lengkap pada mesin jarak jauh dan ketika Anda memulai kembali transfer, itu akan memastikan bahwa apa yang sudah ada di mesin jarak jauh cocok dengan file di mesin lokal Anda dan kemudian lanjutkan ke tempat pemindahan yang tersisa.Anda dapat menggunakan
scp
ataursync
. Di sistem lokal Anda:scp remoteuser@remotehost:/remote/dir/file /local/dir/
Tapi, karena Anda menyebutkan cadangan, saya berasumsi bahwa itu akan menjadi tambahan dan Anda harus melakukannya setiap saat. Jadi,
rsync
adalah pilihan yang lebih baik untuk cadangan inkremental. Di shell lokal Anda:rsync -avz -e ssh remoteuser@remotehost:/remote/dir /local/dir/
lihat
rsync(1)
danscp(1)
halaman manual untuk opsi.sumber
Anda dapat menggunakan salinan aman scp .
Dari Anda shell lokal:
Contoh ini akan menyalin melalui ssh dari /path/of-the/tar.archive dari hosting Anda ke / home / mydirectory / backups /
Opsi tambahan:
-C : Mengaktifkan kompresi
sumber
Saya memiliki masalah yang sama. Inilah solusi mudahnya: -
+ Other Locations
di bagian bawah panel kiri.Connect to server
. Tulis alamat ssh di kotak input sepertissh://111.222.333.444/
.home
lokasi terpencil. Jangan ragu untuk memindahkan file ke sana-sini.sumber
Jawaban lain merekomendasikan
rsync
atauscp
, keduanya mengharuskan Anda untuk mengetahui lokasi file yang ingin Anda salin pada mesin jarak jauh.Jika Anda ingin dapat melihat-lihat pada mesin remote, seperti yang Anda bisa lakukan
ssh
, Anda ingin menjalankannyasftp
. Masuk ke server sangat miripssh
, tetapi begitu Anda masuk, ketikhelp
untuk mendapatkan daftar perintah - memungkinkan Anda bergerak di kedua mesin lokal dan jarak jauh, dan mentransfer file bolak-balik dengan mudah.sumber
Sangat aneh bahwa itu tidak mungkin dari dalam
ssh
. Di terminal reguler, seseorang dapat mengirim / menerima file menggunakan perintah zmodem.Ini membantu untuk google
zssh
: http://zssh.sourceforge.net/ . Satu harus menjalankannya sebagai pembungkus ke aslinyassh
.sumber