|
|
|
|
|
À̸§ : È£¼® (119.¢½.25.139) |
|
³¯Â¥ : 2011-05-28 14:30:45 |
|
Á¦¸ñ : lsync ½Ç½Ã°£ µ¿±âÈ |
|
lsync ½Ç½Ã°£ µ¿±âÈ
0. lsync ¼Ò°³
lsync´Â time synchronization progrem for Linux ÀÇ ¾àÀÚÀÌ´Ù.
lsync¸¦ ÀÌ¿ëÇÏ¸é ½Ç½Ã°£ µ¿±âÈ°¡ °¡´É ÇÏ´Ù.
ÇÏÁö¸¸ ³×Æ®¿÷ ¼Óµµ°¡ ±×¸¸Å ³ôÀº ¼Óµµ°¡ ¾ÈÁ¤ÀûÀ¸·Î ³ª¿À´Â ³×Æ®¿÷ ȯ°æ¿¡¼¸¸ ¾ÈÁ¤ÀûÀ¸·Î ¿î¿µÀÌ °¡´ÉÇÏ´Ù.
1. µ¿ÀÛ ¿ø¸®
1) Ä¿³ÎÀÇ inotify¿¡¼ ÆÄÀϽýºÅÛÀÇ º¯°æ À̺¥Æ®¸¦ üũÇÑ´Ù .
2) À̺¥Æ® ¹ß»ý½Ã rsync¸¦ È£ÃâÇÏ¿© º¯°æ À̺¥Æ®°¡ ¹ß»ýÇÑ ÆÄÀÏÀ» ¹èÆ÷ÇÑ´Ù.
µ¿ÀÛ¿ø¸®´Â À§ÀÇ µÎ°¡Áö´Ü°è·Î ¸Å¿ì ´Ü¼øÇÏ´Ù.
¿øº» ¼¹ö¿¡´Â kernel 2.6.13ÀÌ»ó ¹öÀüÀÌ ÇÊ¿äÇÏ´Ù ÀÌ´Â ÀÌÀÌ»ó¹öÀü¿¡¼ inotify¸¦ Áö¿øÇÑ´Ù.
½½·¹ÀÌºê ¼¹ö¿¡´Â rsync µ¥¸óÀÌ ¼³Á¤µÇ¾î ÀÖ¾î¾ß ÇÑ´Ù.
2. ¿ä±¸»çÇ×
kernel 2.6.13 ÀÌ»ó ¹öÀü
rsync package
libxml2 package
libxml2-devel package
3. µ¿±âÈ ¹æ¹ý
lsync »ç¿ë¹ý
lsyncd [OPTION]... [SOURCE] [TARGET 1] [TARGET 2] ...
[SOURCE] => µ¿±âȽà ¿øº»ÀÌ Á¸Á¦ÇÏ´Â À§Ä¡ /home/test/
[TARGET X] => µ¿±âÈ°¡ ÇÊ¿äÇÑ ¼¹ö 192.168.0.3::HOME/test
[OPTION]
--binary FILE rsync ½ÇÇà ÆÄÀÏ À§Ä¡
--conf FILE ½ÇÇà½Ã ·ÎµåÇÒ ¼³Á¤ ÆÄÀϸí (DEFAULT: /etc/lsyncd.conf.xml)
--debug µð¹ö±×¸¦ À§ÇÑ ·Î±×
--exclude-from FILE µ¿±âȽà Á¦¿Ü½Ãų ÆÐÅÏÀÇ ¿É¼·
--logfile FILE ·Î±× ÆÄÀÏÀ§Ä¡
--no-daemon Æ÷±×¶ó¿îµå·Î ½ÇÇà ½ÃÅ´
--pidfile FILE pid ÆÄÀÏ »ý¼ºÀ§Ä¡
¼³Á¤¹æ¹ý
½½·¹ÀÌºê ¼¹ö
rsyncd¸¦ ¼ºñ½º¿¡ Ãß°¡½ÃÄÑ rsyncÁ¢¼ÓÀÌ °¡´ÉÇϵµ·Ï ÇÑ´Ù
/etc/rsyncd.conf -->
[HOME]
path = /home/test
uid = root
gid = root
use chroot = yes
read only = no # ¸¶½ºÅÍ¿¡¼ ¹èÆ÷½Ã ¾²±â°¡ °¡´ÉÇØ¾ß ÇÑ´Ù
max connections = 4
hosts allow = 192.168.0.1 # ¸¶½ºÅÍ ¼¹ö¿¡¼¸¸ Á¢¼ÓÀÌ °¡´ÉÇϵµ·Ï ¼³Á¤
À§¿Í °°ÀÌ ¸¶½ºÅͼ¹ö¿¡¼¸¸ rsync µ¥¸ó¸¸ ÀÌ¿ëÇÒ¼öÀÖµµ·Ï ÇÏ¸ç ¸¶½ºÅÍ¿¡¼ ÆÄÀÏÀ» ½½·¹À̺ê·Î ¾²´Â ÇüÅÂÀ̹ǷΠ¾²±â¿øÇÑÀ» ÁÖ¾î¾ßÇÑ´Ù
¼¼ÆÃÈÄ rsync µ¥¸óÀ» ½ÃÀÛÇÑ´Ù .
¸¶½ºÅÍ ¼¹ö
µ¥¸ó Á÷Á¢ ¶ç¿ì±â
# lsyncd /home/test/ 192.168.0.3::HOME/test
¼³Á¤ÆÄÀÏÀ» ÀÌ¿ëÇÏ¿© ½ÇÇà½ÃÅ°±â
/etc/lsyncd.conf.xml ÆÄÀÏÀ» »ý¼ºÇÏ¿©
£¼lsyncd version="1">
£¼settings>
£¼logfile filename="/var/log/lsyncd"/>
£¼binary filename="/usr/bin/rsync"/>
£¼callopts>
£¼option text="-az%r"/>
£¼option text="--delete"/>
£¼/callopts>
£¼/settings>
£¼directory>
£¼source path="/home/test/"/>
£¼target path="192.168.0.2::HOME/"/>
£¼/directory>
£¼/lsyncd>
¼³Á¤ ÆÄÀÏÀ» ÀÛ¼ºÇÏ°í
/etc/rc.d/init.d/lsyncd ÆÄÀÏÀ» »ý¼ºÇÏ¿©
#!/bin/bash
# description: lsyncd auto start script
start() {
pid=`pidof lsyncd`
if [ $? -eq 0 ]; then
echo "lsyncd (pid $pid) is running..."
echo " "
else
echo "Starting lsyncd..."
echo " "
/usr/bin/lsyncd
fi
}
stop() {
echo "Stopping lsyncd..."
echo " "
/bin/kill -9 `/sbin/pidof lsyncd`
until [ -z $(/sbin/pidof lsyncd) ]; do :; done
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
pid=`pidof lsyncd`
if [ $? -eq 0 ]; then
echo "lsyncd (pid $pid) is running..."
echo " "
else
echo "lsyncd is not running"
echo " "
fi
;;
*)
echo "Usage: lsyncd {start|stop|restart|status}"
exit 1
esac
exit $?
À§¿Í °°ÀÌ ÀÛ¼ºÈÄ ½ÇÇàÀÌ °¡´ÉÇÑ ±ÇÇÑÀ¸·Î º¯°æÇÑ´Ù
/etc/rc.d/init.d/lsyncd start¸¦ ÇÏ°Ô µÇ¸é ½ÇÇàµÈ´Ù
½ÇÇàÈÄ
Fri Jul 2 21:35:14 2010: event CLOSE_WRITE:1 triggered.
Fri Jul 2 21:35:14 2010: rsyncing /home/test/ --> 192.168.0.3::HOME/test/
Fri Jul 2 21:35:23 2010: event DELETE:1 triggered.
Fri Jul 2 21:35:23 2010: rsyncing /home/test/ --> 192.168.0.3::HOME/test/
À§ÀÇ ·Î±×¿¡¼ º¸´Â°Í°ú °°ÀÌ ÆÄÀϽýºÅÛÀÇ À̺¥Æ®¿¡ ÀÇÇØ µ¿±âÈ°¡ ÀÌ·ç¾îÁø´Ù .
ÀÌÀç¼®
º»¸í : ÀÌÀç¼®
e-mail : locli¾Üsuperuser.co.kr
¼Ò¼Ó : (ÁÖ)¼öÆÛÀ¯ÀúÄÚ¸®¾Æ
| |
|
|
|
|