معرفی و راهنمای استفاده از rsync

از موارد مهم در مدیریت سرور انتقال داده و Synchronize اطلاعات بین سیستم‌های داخل شبکه می‌باشد. یکی از ابزارهای بسیار کارآمد برای انتقال و Sync کردن داده‌ها دایرکتوری‌ها و پرونده‌ها در سیستم‌های یونیکسی و لینوکسی rsync می‌باشد.

از نرم‌افزار rsync می‌توان به عنوان یک ابزار بسیار سریع برای کپی کردن داده‌ها به صورت لوکال، شبکه و بین دو سرور یاد کرد، که دارای آپشن‌های مختلف برای استفاده‌های وسیع می‌باشد.

یک ویژگی بسیار جالب و کارآمد rsync برای Synchronize کردن قابلیت quick check در این نرم‌افزار می‌باشد که فایل‌هایی که نیاز به انتقال دادن دارند را شناسایی و منتقل خواهد کرد که برای این کار آخرین تاریخ ویرایش پرونده، تغییر حجم و … را مورد بررسی قرار داده و انتقال را انجام می‌دهد.

برخی از ویژگی‌ها و قابلیت‌های rsync
۱. پشتیبانی برای کپی کردن لینک‌ها، دیوایس‌ها، Ownerها، گروه‌ها و حقوق دسترسی.
۲. قابلیت Exclude کردن یک مسیر مشخص برای جلوگیری از کپی شدن اطلاعات.
۳. قابلیت استفاده از ssh و rsh برای انتقال داده.
۴. عدم نیاز به حق دسترسی root.
۵. امکان محدود کردن منابع برای انتقال داده.
و …

چطور rsync رو نصب کنم ؟

برای نصب rsync می‌توانید روش‌های زیر استفاده کنید.

 

برای دبین (Debian) یا اوبونتو گنو/لینوکس (Ubuntu GNU/Linux):

# apt-get install rsync

برای ردهت (RHEL):

# up2date rsync

و اگر سیستم شما CentOS یا Fedora می‌باشد:

# yum install rsync

خوب؛ اکنون که با ویژگی‌ها و کارایی‌های rsync آشنا شدیم بهتره بریم سراغ روش استفاده از آن، Syntax استفاده از آن به این صورت می‌باشد:

# rsync options source destination

-options: آپشن‌های مورد استفاده
-source: آدرس در مبدا
-destination: آدرس در مقصد

برخی از Optionهای مورد استفاده در rsync:

-a : آدرشیو کردن داده‌ها
-p : حفظ مجوزها
-v : نمایش جزئیات انتقال
-d : انتقال ساختار شاخه‌ها
-r : انتقال شاخه‌ها و زیر شاخه‌ها
-z : فشرده سازی داده ها در زمان انتقال
-e “ssh options” : انتقال توسط
–max-size=’100K’ : انتقال فایل‌های زیر ۱۰۰ کیلوبایت
–existing : انتقال فقط فایل‌های مشابه
–delete : پاک کردن فایل‌های سینک شده

با تعدادی مثال با این دستور بیشتر آشنا خواهید شد، پس با من همراه باشید …

 

۱. کپی کردن یک فایل از کامپیوتر لوکال به یک سرور راه دور:

کپی فایل /home/mohammad/boozary.tar.gz به سرور ssh.boozary.org

# rsync -v -e ssh /home/mohammad/boozary.tar.gz ssh.boozary.org:/home/mohammad/

 

۲. کپی کردن فایل از یک سرور راه دور به کامپیوتر لوکال:
کپی فایل /home/boozary2.tar.gz از سرور ssh.boozary.org به کامپیوتر لوکال

# rsync -v -e ssh root@ssh.boozary.org:/home/boozary2.tar.gz /home/mohammad/

 

۳. فقط انتقال شاخه‌ها و زیر شاخه‌ها بدون فایل‌ها:
توسط آپش -d می‌توانید این کار را انجام دهید.

# rsync -v -d root@ssh.boozary.org:/home/boozary/ /home/mohammad/sites/boozary/

و به این شکل ساختار درختی دایرکتوری‌ها از /home/boozary سرور ریموت به /home/mohammad/sites/boozary منتقل خواهند شد.

 

۴. فقط انتقال فایل‌های مشابه:
گاهی پیش آمده که در دایرکتوری مبدا یک سری فایل وجود داشته که بودن آن‌ها در مسیر مقصد لازم نیست و فقط فایل‌های مشابه بین مبدا و مقصد نیاز به Synchronize شدن دارند.

# rsync -avz --existing root@ssh.boozary.org:/home/boozary/ /home/mohammad/sites/boozary/

به این صورت اگر فایلی را در ssh.boozary.org:/home/boozary/ ایجاد کنیم که در آدرس تعیین شده محلی موجود نباشد توسط آپشن –existing انتقال داده نخواهد شد.

 

۵. عدم انتقال فایل‌های حجیم:

# rsync -avz --max-size='100K' root@ssh.boozary.org:/home/boozary/ /home/mohammad/sites/boozary/

آپشن –max-size به ما کمک کرده تا فایل‌هایی که بیشتر از ۱۰۰ کیلوبایت هستند را انتقال ندهیم.

 

۶. نمایش پروسه‌ی انتقال:

# rsync -apvz --progress /home/mohammad/ /home/boozary/

در این‌جا با استفاده از –progress می‌تونیم اطلاعات مربوط به انتقال داده را مشاهده کنیم، از جمله: سرعت، زمان انتقال و …

وب‌سایت Rsync
معرفی Rsync در ویکی‌پدیا

htop – an interactive process viewer for Linux

htop نرم افزاری است تحت محیط خط فرمان به منظور مدیریت پروسه‌های در حال انجام به صورت پویا. htop را می‌توان گفت نمونه‌ی پیشرفته‌ای از ابزار پیشفرض top در خط فرمان می‌باشد که توسط htop ما می‌توانیم بین پروسه ها اسکرول کنیم، تعداد هسته‌های پردازنده‌ی خود را مشاهده و بار روی هر یک را ببینیم و همچنین میزان مصرف حافظه کامپیوتر و SWAP را مشاهده نماییم.

می‌توان بر روی پروسه‌ها اسکرول کرد که آن‌ها را مدیریت کنیم؛ برای مثال Kill کردن آن‌ها. یک آمار کلی هم از سیستم در حال کار میده که در بخش بالای htop قابل مشاهده است مثل uptime سیستم.

می‌توان از htop در سرورها استفاده نمود که دسترسی ما به منابع سیستم و مدیریت بر پروسه‌ها را ساده‌تر می‌کند.

پس از نصب این بسته در گنو/لینوکس خود می‌توانید اطلاعات بیشتر را در راهنمای این نرم‌افزار مشاهده نمایید که با دستور “man htop” قابل مشاهده است.

نصب در اوبونتو و توزیع‌های بر پایه‌ی دبین:

# apt-get install htop

htop – an interactive process viewer for Linux

۰۳
فروردین ۱۳۸۹
نویسنده
دیدگاه‌ها ۵ دیدگاه
برچسب‌ها

٬ ٬ ٬ ٬

ماتریکس در ترمینال

چند روز پیش یکی از دوستان در گودر از CommandLineFu.com یک دستور (اسکریپت؟!) به اشتراک گذاشته شده رو به اشتراک گذاشته بود (!) و من هم می‌خوام اون رو در این‌جا به اشتراک بگذارم، کار این اسکریپت در اصل چیز خاصی نیست، فقط پنجره شل (Shell) شما رو توسط اعداد ۰ و ۱شبیه ماتریکس میکنه (;

echo -e “e[32m"; while :; do for i in {1..16}; do r="$(($RANDOM % 2))"; if [[ $(($RANDOM % 5)) == 1 ]]; then if [[ $(($RANDOM % 4)) == 1 ]]; then v+=”e[1m $r   “; else v+=”e[2m $r   “; fi; else v+=”     “; fi; done; echo -e “$v”; v=”"; done

matrix_style

I like the fact the Patola’s version uses only ones and zeros, but I also like the sparse output of the other versions. This one combines both of those features and eliminates some unnecessary cruft.

You can vary the sparseness by changing “$(($RANDOM % 5))” to another number. The number in this term “$(($RANDOM % 4))” controls how frequently the numbers are output bold.

Matrix Style

۰۷
مهر ۱۳۸۸
نویسنده
دیدگاه‌ها ۱۱ دیدگاه
برچسب‌ها

٬ ٬

قطعه-قطعه کردن یک فایل

ubuntu-logo-small.pngسلام

حتما برای شما هم پیش آمده که بخواهید یک فایلی را به قطعات کوچک تقسیم کنید، در ویندوز کاربران برای این کار معمولا از winrar و نرم‌افزار های مشابه استفاده می‌کنند که زیاد جالب و مفید نیستند (پس تو ویندوز چی مفیده؟! :( ) ولی تو لینوکس چی ؟! خیلی خیلی ساده است، توسط یک دستور کوتاه یعنی split .

شما می‌توانید به سادگی توسط این دستور فایل مورد نظر خودتان را به اندزه‌های دلخواهتان تقسیم کنید و با یک دستور ساده‌تر آن‌ها را به یکدیگر بچسبانید و آن را به حالت اولی خود بازگردانید (بدون اینکه به فایلتان صدمه‌ای وارد شود).

مراحل انجام کار:

۱٫ فایل خودتان را نشون کنید.
۲٫ به مسیر فایلتان در صورت نیاز cd کنید.
۳٫ این درستور را در آن مسیر اجرا کنید: split -b bytes filename.xxx
- توضیحات:
- بجای bytes باید حجم مورد نظر خودتان را به بایت وارد نمایید.
- filename.xxx منظور فایلی هست که قصد تقسیم کردن آن را دارید.
۴٫ فایل های خروجی را در همان دایرکتوری به شما تحویل می‌دهد ;)

حالا برای بازگرداندن فایل به حالت اولیه‌ی خود یعنی چسباندن قطعات فایل به یکدیگر باید از دستور cat استفاده کنید:

cat part1 part2 part3 > filename.xxx

منظور از part1 part2 part3 نام فایل هایی است که توسط split ساخته شده‌اند. filename.xxx هم نام فایل خروجی شما می‌باشد!

برای اطلاعات بیشتر manual دستورهای cat و split رو حتما بخوانید کنید. یعنی: man split و man cat

باز هم مثل همیشه: ویندوزی ها چیز جدید بیارن :D

پ. ن: اینکه به چه دردی می‌خوره را وقتی متوجه می‌شید که خواستین یک فایل را داخل CD بریزید و جا نشد :D
پ. ن: آن قدر با این کوبریک ور رفتند که من مجبور به تعویض قالب وبلاگ شدم :( حالا هروقت درست شد بر می‌گردم به کوبریک خودمون ;)

۱۸
آبان ۱۳۸۶
نویسنده
دیدگاه‌ها ۷ دیدگاه

استفاده از IRC در ترمینال (اوبونتو)

Ubuntu Logo Smallسلام

یکی از راه‌های ورود به کانال‌های آی‌آر‌سی در لینوکس استفاده از ترمینال است برای اینکه شما بتوانید در محیط خط فرمانی ترمینال وارد شبکه‌های IRC شود احتیاج به کلاینت irssi دارید که خوشبختانه در مخاذن اوبونتو موجود است و برای نصب آن می‌بایسد از دستور زیر در ترمینال استفاده کنید:

sudo apt-get install irssi

پس از نصب شدن، در ترمینال تایپ کنید irssi تا وارد محیط آن شودید، بعد از ورود به محیط آن برای اتصال به سرور freenode در کادر مربوطه تایپ کنید server irc.freenode.net/ تا به سرور متصل شوید برای ایجاد Nickname خود نیز در همان کادر تایپ کنید nick ExamName/ (به‌جای ExamName نامی دلخواه را بنویسید) این‌هم از نام کاربریتان حالا کافیه با دستور join #chanel/ وارد کانال مورد نظرتان شوید.

لینک ها :

سایت irssi
IRC یا زنده شدن شبکه ها – قسمت اول
IRC – ابزارها و نحوه اتصال


موفق باشید !

۲۶
شهریور ۱۳۸۶
نویسنده
دیدگاه‌ها ۵ دیدگاه
برچسب‌ها