Saya ingin mencadangkan beberapa data saya yang sangat penting pada mesin jarak jauh.
Saat ini saya hanya menyimpannya ke mesin lokal saya dengan menggunakan perintah ini:tar -cvjf ~/backups/Backup.tar.bz2 ~/importantfiles/*
Saya lebih suka tidak menggunakan perintah lain untuk memindahkannya ke mesin jarak jauh, artinya saya hanya ingin perintah ini ditingkatkan sehingga dapat mentransfer data ke mesin jarak jauh.
Ini dirancang untuk menjadi skrip nanti yang seharusnya dijalankan sendiri, artinya semua jenis input pengguna yang diperlukan akan benar-benar mengacaukannya!
Sesuatu seperti
tar -cvjf sftp://user:pwassword@host/Backup.tar.bz2 ~/importantfiles/*
tar -cvjf ftp://user:pwassword@host/Backup.tar.bz2 ~/importantfiles/*
akan menjadi sempurna! (Tidak ada pipa (dll.), Hanya satu perintah!)
ssh
akses ke mesin ini?Jawaban:
Untuk SSH:
Untuk SFTP:
SFTP lain:
sumber
Tar tidak berbicara ftp atau sftp. Itu bukan tugasnya. Anda tidak dapat melakukan ini dengan tar saja. Menggunakan alat yang tepat untuk setiap pekerjaan dan menggabungkannya dengan shell adalah cara normal melakukan sesuatu pada sistem unix.
Solusi yang paling jelas adalah membuat arsip secara lokal, lalu menyalinnya ke mesin jarak jauh.
Jika Anda tidak ingin membuat arsip secara lokal karena Anda tidak memiliki cukup ruang, Anda dapat membuat pipa bernama, membuat tar menulis ke pipa ini, dan menemukan klien ftp yang dapat membaca dari pipa. Sayangnya, sftp menolak untuk
put
menggunakan pipa. Beberapa klien FTP berfungsi, misalnya lftp:Masukkan kata sandi FTP Anda
~/.netrc
.Atau, ada cara untuk membuat perintah tar Anda menyimpan ke server jarak jauh secara langsung, tetapi Anda perlu beberapa pengaturan sebelumnya. Mount server jauh lebih SSHFS atau curlftpfs .
sumber