[LOCAL LOGO 1] RSYNC: Fasilitas Salin Data Skala Raksasa
Rahmat M. Samik-Ibrahim
vLSM.org
[LOCAL LOGO 2]
WHAT's NEW | HOME | vv BOTTOM vv | NEXT>>>

| Pendahuluan | Ilustrasi | Anonymous | Setting | Rujukan |
<<<PREV | ^^TOP^^ | NEXT>>>

Pendahuluan

Pengambilan berkas melalui Internet dapat dilakukan dengan berbagai cara. Cara mudah dan interaktif dapat dilakukan memanfaatkan browser seperti "Galeon", "Konqueror", "Mozilla", "Opera", dan sejenisnya. Apa bila mengambil beberapa berkas, dapat menggunakan shell atau perl script yang berbasis protokol ftp/http. Namun, semua metoda tersebut di atas tidak dirancang untuk penyalinan data skala besar sebuah mirror-server. Penyalinan data pada Mirror Server biasanya memanfaatkan "rsync".

Program "rsync" dapat dimanfaatkan untuk berbagai keperluan. Namun perlu diingat bahwa "rsync" rakus sumber daya seperti memori dan CPU. Jadi, janganlah menggunakan ini secara masal yang hanya mengambil satu atau dua berkas.

<<<PREV | ^^TOP^^ | NEXT>>>

Ilustrasi sederhana: menyalin isi direktori

Menyalin utuh sebuah direktori (umpama /sumber/ ) ke direktori lain (umpama /tujuan/ ) dapat dilakukan dengan perintah "cp":

	cp -a /sumber/* /tujuan/

Perintah "rsync" yang setara ialah:

	rsync -av /sumber/ /tujuan/

Perbedaan akan terasa, jika melakukan perubahan/penambahan isi direktori /sumber/. Perintah "cp" akan menyalin ulang SEMUA berkas, namun "rsync" lebih cepat karena hanya akan menyalin berkas yang ditambah/diubah. Apa bila ingin menghapus berkas di /tujuan/ yang tidak ada di /sumber/, gunakan:

	rsync -av --delete /sumber/ /tujuan/

Jika penghapusan hanya boleh setelah penyalinan sukses:

	rsync -av --delete --delete-after /sumber/ /tujuan/

Terkadang ada berkas yang kita tidak ingin salin (umpama *.bak):

	rsync -av --exclude '*.bak' /sumber/ /tujuan/

Tentu saja, silakan menggabungkan opsi-opsi seperti "--delete" dan dan "exclude" tersebut di atas.

<<<PREV | ^^TOP^^ | NEXT>>>

Menyalin "Anonymous" Dari Situs Jaringan

Walau pun perintah dapat digunakan untuk keperluan lokal seperti contoh di atas, lazimnya perintah "rsync" digunakan antar komputer melalui jaringan. Tentunya, ini hanya dapat dilakukan, jika komputer tersebut dikonfigurasi untuk keperluan tersebut! Cara mengkonfigurasi, akan dijabarkan pada bagian akhir tulisan ini.

Melihat daftar modul yang tersedia pada situs ibiblio.org:

	rsync ibiblio.org::

Maka akan muncul "Message of today" dan daftar-daftar modul.

-------------------------------------------------------------------------
  Welcome to the ibiblio rsync server!
  [SISA "MESSAGE OF TODAY" DIHAPUS]

pub            	EVERYTHING in our FTP tree (use this only for subdirectories)
chinese-music  	Chinese music collection
CPAN           	CPAN
distros        	Linux Distributions (use this to get at particular distros)
Docsouth       	Documenting the American South
Dr-Fun         	Doctor Fun
freedos        	FreeDOS
gentoo         	Gentoo Linux Distribution
ggi            	GGI
gnome          	Gnome stable tree
gnu            	GNU software
grass          	GRASS mirror
gutenberg      	Project Gutenberg
htdig          	htdig mirror
iupac          	iupac downloads
kde            	our KDE mirror (complete)
kernel.org     	the kernel.org mirror
ldp_mirror     	Linux Documentation Project
Linux          	ibiblio linux archive
maven          	maven
mutopia        	mutopia archive
obp            	Open Book Project
pld            	PLD Linux Distribution
rpmhelp        	rpmhelp
sourcemage     	sourcemage
sun-info       	Sun Info
sun-packages   	Sun Solaris Packages
-------------------------------------------------------------------------

Untuk mencari kernel linux terakhir, silakan melihat dengan perintah:

	rsync ibiblio.org::kernel.org/pub/linux/kernel/

Untuk menyalin isi direktori kernel tersebut ke /tujuan/

	rsync -av --delete ibiblio.org::kernel.org/pub/linux/kernel/ /tujuan/

Silakan menyimak kembali, opsi-opsi yang dijabarkan pada butir dua di atas.

<<<PREV | ^^TOP^^ | NEXT>>>

Setting "rsync"

Langkah pertama ialah menginstall program "rsync" ke direktori "/usr/bin/" (atau direktori lainnya). Jika tidak tersedia paket tersebut, silakan mengkompail source yang dapat diambil di "http://samba.anu.edu.au/rsync/" atau mirror dekat anda.

  • rsync bisa digunakan sebagai rsyncd, serta dipanggil melalui "/etc/inetd.conf". Jadi, silakan menambahkan ke berkas "/etc/inetd.conf" baris berikut ini:

    # ----------------------------------------------------------
    # /etc/inetd.conf
    
    rsync stream tcp nowait root /usr/bin/rsync rsyncd --daemon
    
    # asumsi, "rsync" ada di "/usr/bin/"
    #-----------------------------------------------------------
    

  • silakan membuat berkas text (ASCII) "/etc/rsyncd.motd" yang berisi pesan "Message of today" yang sesuai dengan selera anda.

  • silakan membuat berkas konfigurasi "/etc/rsyncd.conf" dengan isi:

    # ----------------------------------------------------------------
    # /etc/rsyncd.conf
    
    # nama berkas "message of the day" yang dibuat di atas
    motd file = /etc/rsyncd.motd
    
    # berapa concurrent connections?
    max connections = 2
    
    # syslog ke mana?
    syslog facility = local3
    
    # Alamat atau blok IP mana yang diizinkan mengakses "rsync"? 
    #                     /32 --> satu host; 
    #                     /16 --> 64k host; dst.
    hosts allow =          \
    	10.118.0.0/16  \
    	192.168.1.2/32 \
    	127.0.0.0/8
    
    # labelmodul:
    [labelmodul]
    	comment = Komentar ini dapat dibaca dengan perintah "rsync nama.host::"
    	path = /var/dir/yang/mau/di/sync
    	read only = yes
    	use chroot = yes
    	list = yes
    	uid = nobody
    	gid = nogroup
    
    #---------------------------------------------------------------
    

    Harap mengganti "labelmodul" dengan nama modul, dan "/var/dir/yang/mau/di/sync" dengan direktori tempat modul

  • Agar "rsyncd" dapat berfungsi, silakan restart "initd" anda.

    
    		kill -1 "PID_INITD"
    

    (mungkin juga menggunakan "initd restart"; tergantung variasi linux anda).

  • Silakan mencoba rsyncd dengan perintah:

    	rsync localhost::
    

    Seharusnya akan keluar pesan "Message of today" yang diikuti dengan daftar modul yang ada.

  • Rsync anda siap digunakan!

Catatan: Versi awal tulisan ini diterbitkan di Koran Tempo, 17 Desember 2003, halaman B8.

<<<PREV | ^^TOP^^ | NEXT>>>

Rujukan

<<<PREV | ^^TOP^^
[LOCAL LOGO 1] Copyright © 2003-2014 Rahmat M. Samik-Ibrahim . Provided AS-IS with no LIABILITY. Permission is granted to copy, distribute, and/or modify this webpage provided this notice is preserved. MIRRORS of this site: BisnisWeb - Fusilkom-UI. File revision: 1.1 2006/04/12 03:29:5 -- E-CONTACT. Special thanks for this webspace provider. [LOCAL LOGO 2]