منبع اصلی نوشتار زیر در این لینک قرار دارد

مشاهده up یا down بودن سرور با bash

با سلام خدمت دوستان . بارها برای خودم پیش اومده که برای بررسی وضعیت up یا down بودن سرور یا کلاینت از پینگ کردن اون دستگاه استفاده کردم و منتظر موندم تا دستگاه پینگ دهد . خب همین روند رو میشه در قالب یک اسکریپت تر تمیز تهیه کرد ، به صورتی که آی پی را از کاربر گرفته و زمانی که آپ شد آن را در قالب notification نمایش دهد .

اطلاعات تکمیلی :

زبان برنامه : bash

لایسنس : GPL v3

نویسنده : E2MA3N

 

نحوه نصب برنامه :

این برنامه به صورت متن باز و با لایسنس GPLv3 نوشته شده و متن برنامه در داخل گیت هاب موجود است .

لینک گیت هاب :

https://github.com/e2ma3n/status

 

برای نصب برنامه ابتدا فایل فشرده ی حاوی نصاب و … برنامه را دانلود می کنیم :

iman@asus-X453MA:~$ wget https://github.com/e2ma3n/status/archive/master.zip

سپس آن را از حالت فشرده خارج می کنیم و به دایرکتوری برنامه می ریم :

iman@asus-X453MA:~$ unzip master.zip && cd status-master/

حال کافیست به فایل نصاب برنامه پرمیشن اجرا بدیم و آن را اجرا کنیم :

iman@asus-X453MA:~/status-master$ chmod +x install.sh && ./install.sh
[-] Error: Bad argument
[+] See help : ./install.sh -h

همان طور که مشاهده می کنید برنامه ارور می دهد چرا که سویچی برای آن در نظر گرفته نشده است . برای اطلاعات بیش تر از سویچ h- استفاده می کنیم :

iman@asus-X453MA:~/status-master$ ./install.sh -h
Usage: 
	sudo ./install.sh -i [install program]
	sudo ./install.sh -h [help function]
	sudo ./install.sh -c [check dependencies on system]

همان طور که مشاهده می کنید ، سویچ اول برای نصب برنامه ، سویچ دوم برای نمایش help برنامه و سویچ سوم برای چک کردن پیش نیاز ها می باشد . پیشنهاد می شود قبل از نصب برنامه پیش نیاز های آن را چک کنید :

iman@asus-X453MA:~/status-master$ ./install.sh -c
[+] check dependencies on system:  
[+] ping found
[+] sleep found
[+] zenity found
[+] whoami found

اگر تمام پیش نیاز ها در سیستم شما نصب باشد ، برنامه آن ها را شناسایی می کند . در غیر این صورت پیش نیازی که نصب نیست را در قالب ارور معرفی می کند .

در آخر برای نصب از سویچ i- استفاده می کنیم :

iman@asus-X453MA:~/status-master$ sudo ./install.sh -i
[sudo] password for iman: 
[+] Installing program ...
[+] Done

توجه داشته باشید که برای نصب برنامه ، نیاز به sudo و یا یوزر روت می باشد چرا که باید فایل اجرایی برنامه در usr/bin/ کپی شود .

نصب برنامه تمام شد ، حالا اجازه دهید با ۳ مثال نحوه کار کرد این برنامه را توضیح دهیم .

مثال اول :

در مثال اول فرض می کنیم که سیستم مورد نظر ( کلاینت یا سرور ) آپ است . پس وقتی ما برنامه را اجرا می کنیم ، باید خروجی ای مبنی بر آپ بودن سرور دریافت کنیم . به مثال زیر توجه کنید :

iman@asus-X453MA:~$ proping 192.168.1.1
[+] 192.168.1.1 is up

 

OSLearn.ir_01

همان طور که مشاهده می کنید به علت آپ بودن سیستم مقصد ، بلافاصله پیغامی مبنی بر آپ بودن مقصد دریافت کردیم .

 

مثال دوم :

در این مثال فرض می کنیم سیستمی داریم که down است و هر چقدر هم که صبر می کنیم ، آپ نمی شود . خب طبیعتا در این حالت انتظار می رود پیغامی مبنی بر آپ بودن چاپ نشود اما برای این که خروجی برنامه خالی نماند ، هر دو دقیقه مقدار تایمی که گذشته شده نمایش داده می شود . به مثال زیر توجه کنید :

iman@asus-X453MA:~$ proping 192.168.1.100
[!] 2 minutes passed ...
[!] 4 minutes passed ...
[!] 6 minutes passed ...

OSLearn.ir_02

 

همان طور که مشاهده می کنید در مثال بالا ۶ دقیقه منتظر آپ شدن سیستم مقصد صبر کردیم اما در آخر پیغامی مبنی بر آپ شدن دریافت نکردیم ( چرا که مقصد آپ نشده هنوز … )

 

مثال سوم :

در این مثال فرض می کنیم سیستمی داریم که down است و بعد از چند دقیقه آپ می شود . به عنوان مثال بعد از ۳ دقیقه آپ می شود . در این حالت انتظار می رود ۲ دقیقه اولی که صبر کردیم نمایش داده و در آخر که سیستم مقصد آپ شد ، پیغامی مبنی بر آپ شدن مقصد چاپ شده و برنامه متوقف شود . اما علاوه بر این دو ، notification ای نیز در سیستم ظاهر می شود چرا که ممکن است ترمینال در دید ما نباشد ، لذا به صورت notification نیز اطلاع رسانی می شود . به مثال زیر توجه کنید :

iman@asus-X453MA:~$ proping 192.168.1.5
[!] 2 minutes passed ...
[+] 192.168.1.5 is up

 

OSLearn.ir_03

حذف و پاک کردن برنامه :

فایل اجرایی این برنامه در مسیر usr/bin/ قرار داشته و فاقد فایل کانفیگ می باشد ، لذا برای پاک کردن این برنامه کافیست به شکل زیر عمل کنیم :

iman@asus-X453MA:~$ sudo rm -f /usr/bin/proping

 

منبع : او اس لرن دات آی آر | http://OSLearn.ir

نویسنده : E2MA3N

از این مطلب راضی هستید ؟ می خواهید به سایت کمک کنید ؟ رضایت خودتون رو با دونیت به ما اعلام کنید . برای دونیت روی خرید کلیک کنید . با تشکر



برچسب ها : , , ,

به سیاره لینوکس امتیاز دهید

به اين صفحه امتياز دهيد