Memindahkan Data Menggunakan rsync

_Screenshot from 2018-08-10 09-48-10
Proses rsync

Dalam kegiatan pekerjaan sehari-hari adakalanya karena satu dan lain hal kita harus berganti atau mengganti komputer.

Beberapa hari yang lalu, komputer yang saya pakai tiba-tiba mengalami masalah pada power supply sehingga tidak mau dinyalakan. Solusinya diganti menggunakan komputer lain.

Untuk keperluan ini maka kita setidaknya perlu melakukan 2 hal:

  • Membackup dan memindahkan data
  • Mensetup komputer baru sesuai dengan kebutuhan dan kebiasaan

Di artikel ini saya akan membahas yang pertama yaitu membackup dan memindahkan data di/dari/ke komputer dengan sistem operasi Linux (Ubuntu Gnome).

Untuk data yang tidak seberapa banyak maka cukup diperlukan copy-paste. Bagaimana bila datanya berpuluh-puluh giga?

Bila data yang akan kita pindahkan mencapai puluahm giga atau lebih kita perlu cara yang praktis dan memudahkan kita. Pastinya memakan waktu lama, perlu di-stop terlebih dahulu dan kemudian di-resume kembali, dan seterusnya.

Tool atau utilitas yang saya gunakan di Linux adalah rsync. Rsync adalah perintah baris (command line) sehingga dijalankan melalui terminal.

Perintah rsync dapat digunakan untuk memindahkan data di dalam komputer lokal, misal dari eksternal hard disk ke internal hard disk, atau data di lokal ke host lain melalui jaringan atau LAN.

Perintah rsync (dari manual):

Local:  rsync [OPTION...] SRC... [DEST]

Access via remote shell:
Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]
Push: rsync [OPTION...] SRC... [USER@]HOST:DEST

Access via rsync daemon:
Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]
rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]
Push: rsync [OPTION...] SRC... [USER@]HOST::DEST
rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST

Jadi, format perintahnya adalah:

$ rsync [OPSI...] SUMBER... [TUJUAN]

Untuk kebutuhan saya, yang saya lakukan adalah (melalui remote shell atau ssh):

Pull

$ rsync -azP --no-links --exclude=".*" --exclude=".*/" username@[IP ADDRESS]:/path/ke/dir/sumber /path/ke/dir/tujuan

Push

$ rsync -azP --no-links --exclude=".*" --exclude=".*/" /path/ke/dir/sumber username@[IP ADDRESS]:/path/ke/dir/tujuan

Selanjutnya host remote akan meminta password dan rsync akan memproses.

Keterangan Opsi:

-a untuk archive mode
-z untuk menkompress data pada saat transfer
-P (P besar) untuk memperlihatkan progress pada saat transfer
--no-links untuk tidak mentransfer file atau direktori yang berupa symbolic link (file atau direktori yang sebetulnya ada di lokasi lain)
--exlcude=".*" untuk tidak mentransfer file yang disembunyikan (nama file diawali tanda titik)
--exclude=".*/" untuk tidak mentransfer direktori yang disembunyikan (nama direktori diawali tanda titik)

Untuk menstop paksa gunakan Ctrl+C. Untuk melanjutkan ulangi perintah yang sama. Rsync akan memeriksa keseluruhan proses yang sudah dilakukan, dan kemudian melanjutkannya.

Kita tidak perlu diminta memilih men-skip atau menimpa file yang sudah dikopi sebelumnya. Rsync sudah melakukannya untuk Anda dan melanjutkan apabila ada file yang terpotong di tengah-tengah pada saat transfer terhenti.

Oya, rsync biasanya sudah tersedia di berbagai OS Linux. Jadi Anda tidak usah menginstalnya terlebih dahulu.

Untuk mensetup, akan saya bagi di artikel selanjutnya. Demikian, mudah-mudahan ada manfaatnya.

Widianto Nugroho
widiantonugroho.com

Kebutuhan Mencetak Yang Tidak Terlalu Sering

HP deskjet 3650 open
Ilustrasi

Teman-teman yang punya anak usia sekolah, baik sekolah dasar atau menengah, tentu ada kalanya anak Anda harus mencetak tugas sekolahnya menggunakan printer.

Pengalaman saya pernah membeli printer untuk kebutuhan ini tepatnya printer tinta.

Namun ternyata karena frekuensi kebutuhan untuk mencetak ini tidak terlalu sering, maka printer lebih sering menganggur.

Akibatnya apa? Ternyata ujung cartridge menjadi kering dan mampet. Solusinya bagaimana?

Pernah saya bersihkan namun jadi kurang memuaskan hasilnya.

Sebagai catatan printernya sendiri mempunyai mekanisme untuk membersihkan, namun tetap saja karena relatif jarang digunakan tetap saja jadi mampet.

Printer yang sudah dibeli pun akhirnya mangkrak.

Jadi memang sepertinya printer di kelas ini pun tidak dirancang untuk pengunaan yang tidak terlalu sering.

Solusi selanjutnya adalah dengan menyimpannya di akun email sehingga bisa dibuka di tempat printer umum dan dicetak.

Kebetulan pada saat ini banyak tempat printer yang juga sudah menyediakan terminal-terminal desktop PC yang sudah terhubung ke Internet, termasuk juga di dekat tempat tinggal kami.

Namun solusi ini kurang aman. Anda harus membuka akun email di komputer umum. Jadi ada resiko keamanan di sini.

Lantas solusi lainnya bagaimana?

Nah ini dia. Jadi requirement-nya adalah file untuk dicetak ditaruh di internet yang pada saat akan dicetak tidak harus login ke dalam akun email Anda.

Solusinya adalah membuat akun blog tempat menaruh file-file ini. Saya membuatnya di wordpress.com

Kebetulan di platform blog WordPress, kita dapat mengunggah file melalui email.

WordPress akan memberikan alamat email khusus yang harus Anda rahasiakan untuk keperluan ini.

Bagaimana kalau lupa alamat emailnya? Mudah saja, bila Anda mengirim menggunakan layanan email Gmail, maka ke mana saja Anda pernah mengirim email akan dengan mudah dicari.

Atau bisa alamanta juga disave, atau masukan kata kunci terkait blog tempat menaruh file-file ini di body email.

Maka pada saat Anda akan mengirim email untuk keperluan ini akan bisa muncul pada isian TO: pada saat Anda “Compose New Mail”.

Jadi kesimpulannya, printer tidak terpakai, berkas yang akan dicetak ditaruh di internet.

Ada baiknya blog WordPress yang digunakan diset supaya tidak diindex oleh Google.

Itu saya kebutuhan sederhana yang ingin saya bagikan. Mudah-mudahan bermanfaat.

Bila Anda ada tip trik lainnya silakan disampaikan di kolom komentar.

–WN