شما برای مطالعه این مقاله فقط 5 دقیقه وقت نیاز دارید

uptime-command-in-linux
دسته بندی : آموزش لینوکس

دستور uptime در لینوکس

5/5 - (1 امتیاز)

دستور uptime در لینوکس برای محاسبه آپتایم سیستم لینوکس از اطلاعات موجود در فایل proc/uptime/ و سایر ابزارها مثل dmesg کمک می گیرد.

دستور uptime در لینوکس با محاسبه و نمایش مدت زمان فعال یا در حال اجرا بودن سیستم لینوکس، تعداد کاربران فعال و میزان load average، این امکان را به ادمین ها می دهد که عملکرد و پایداری سیستم خود را بسنجند.

پیش نیازهای استفاده از دستور uptime در لینوکس

نصب دستور uptime در توزیع های مختلف لینوکس

این دستور به طور پیش فرض در اکثر توزیع های مختلف موجود است ولی اگر موقع اجرای آن با خطای not found روبرو شدید، می توانید از دستورات زیر برای نصب آن استفاده کنید:

توزیع های مبتنی بر دبیان مثل اوبونتو 

sudo apt-get install procps

توزیع های مبتنی بر Redhat مثل CentOS

sudo yum install procps

آرچ لینوکس

sudo pacman -Syu

sudo pacman -S procps-ng

openSUSE

sudo zypper install procps

سینتکس و آپشن های دستور uptime در لینوکس

سینتکس اصلی دستور uptime به صورت زیر است:

uptime [options]

اگر این دستور را بدون آپشن اجرا کنید، با خروجی زیر روبرو خواهید شد:

دستور uptime در لینوکس

20:11:37 – زمان فعلی سیستم

172 days 22 min – مدت زمان آپتایم یا فعالیت بدون وقفه سیستم

4 – تعداد کاربران فعال

0.23, 0.54, 0.31 – میانگین بار سیستم در ۱، ۵ و ۱۵ دقیقه اخیر 

حالا اگر می خواهید اطلاعات خروجی این دستور را به شکل دلخواه خود شخصی سازی کنید، می توانید از آپشن ها کمک بگیرید.

آپشن های کاربردی دستور آپتایم

آپشنکاربرد
p- یا pretty–نمایش آپتایم با یک فرمت خواناتر
s- یا since–نمایش تاریخ/زمان شروع فعالیت سیستم
V- یا version–نمایش ورژن دستور uptime
h- یا help–نمایش اطلاعات کمکی در مورد دستور آپتایم

مثال های کاربردی از دستور آپتایم

بررسی کاربرد دستور uptime در لینوکس با مثال های عملی زیر قابل درک تر خواهد شد:

نمایش اطلاعات پایه در مورد آپتایم سیستم لینوکس

اگر فقط به اطلاعات پایه ای مثل زمان فعال بودن سیستم، تعداد کاربران فعال و load average هستید، کافیست دستور uptime را بدون هیچ آپشنی اجرا کنید:

uptime

نمایش آپتایم با یک فرمت خواناتر

برای اینکه فرمت خروجی دستور uptime برای شما قابل درک تر باشد، می توانید آپشن p را هم به دستور uptime اضافه کنید:

uptime -p

اجرای دستور uptime با آپشن p

همانطورکه می بینید، آپشن p خروجی را فقط به زمان آپتایم محدود می کند و می توانید زمان فعالیت سیستم یا سرور لینوکس را به صورت دقیق با هفته، روز، ساعت و دقیقه ببینید.

نمایش تاریخ/زمان شروع اجرای سیستم 

برای اینکه زمان شروع فعالیت سیستم را به طور دقیق بررسی کنید، باید آپشن s را به دستور آپتایم اضافه کنید:

uptime -s

اجرای دستور uptime با آپشن s

همانطورکه می بینید، زمان شروع فعالیت سیستم با ساعت و تاریخ دقیق نمایش داده می شود.

استخراج اطلاعات موردنیاز از خروجی uptime

اگر به خاطر ایجاد اسکریپت های خاص یا هر دلیل دیگری نیاز به این دارید که اطلاعات موردنیاز خود را از خروجی استخراج کنید، می توانید awk را با دستور uptime در لینوکس ترکیب کنید.

به عنوان مثال اگر فقط می خواهید میانگین بار سیستم لینوکس خود را ببینید، می توانید از دستور زیر استفاده کنید:

uptime | awk -F'load average: ' '{ print $2 }'

روند کار این دستور به صورت زیر است:

  • Uptime، اطلاعات کلی در مورد زمان آپتایم و بار سیستم را استخراج می کند. سپس علامت پیپ ( | ) خروجی این دستور را به awk تحویل می دهد.
  • دستور awk خط مربوط به خروجی آپتایم را بر اساس رشته load average: به دو قسمت تقسیم می کند.
  • { print $2 } هم بخش دوم که مربوط به میانگین بار است را پرینت می کند.
کلیک کنید  آموزش نصب Git بر روی اوبونتو 20 (Ubuntu 20.04)

این یک نمونه کوچک از کاربرد awk برای استخراج اطلاعات از دستوراتی مثل uptime است.

برای بررسی سایر آپشن ها و اطلاعات کمکی در مورد دستور آپتایم می توانید از آپشن h کمک بگیرید:

uptime -h

کاربردهای اصلی دستور uptime در لینوکس

  • بررسی مدت زمان فعالیت سرور بعد از آخرین ریستارت
  • بررسی عملکرد، میزان قابلیت اطمینان و پایداری سیستم
  • بررسی میانگین بار سیستم در ۱، ۵ و ۱۵ دقیقه اخیر
  • شناسایی میزان مصرف منابع سیستم
  • تعیین نیاز به منابع اضافی و بهینه سازی
  • اطلاع از تعداد کاربران فعال در سیستم
  • نظارت و جلوگیری از ورودهای غیرمجاز و غیرمنتظره
  • استفاده از اطلاعات آپتایم برای تعمیر و نگهداری سیستم لینوکس
  • ایجاد اسکریپت های مناسب برای مانیتور، اتوماسیون وظایف یا ایجاد هشداری مبتنی بر آپتایم

خطاهای رایج موقع استفاده از دستور uptime

بعضی مواقع اجرای دستور آپتایم با یک سری مسائل همراه می شود که بهتر است متناسب با نوع خطا، راه حل مخصوص را امتحان کنید:

خطای Not Found

این خطا نشاندهنده این است که دستور uptime روی سیستم نصب نیست یا در PATH سیستم لحاظ نشده است.

ابتدا با استفاده از دستورات نصب uptime در لینوکس از نصب آن روی سیستم خود مطمئن شوید.

اگر باز هم با این خطا روبرو شدید، به احتمال زیاد مشکل از PATH است که در این گونه مواقع، بهتر است دستور را با استفاده از مسیر کامل آن یعنی /usr/bin/uptime اجرا کنید.

اطلاعات آپتایم نادرست

اگر بعد از اجرای دستور آپتایم با یک سری اطلاعات مبهم روبرو شدید که نسبت به درست یا نادرست بودن آنها مشکوک هستید، می توانید محدودیت کانترهای داخلی مقصر بدانید.

در این گونه مواقع، برای رفع ابهامات می توانید دستور reboot را با آخرین زمان راه اندازی مجدد فراخوانی کنید تا راجع به صحت خروجی uptime تصمیم گیری کنید.

last reboot | head -1

بررس تفاوت بار میانگین و آپتایم

load average که در خروجی دستور uptime ظاهر می شود، نشاندهنده میزان بار یا مصرف منابع سیستم در ۳ بازه زمانی مختلف است و کلاً یک مقوله متفاوت از زمان آپتایم است.

این اطلاعات می توانند برای مانیتور میزان مصرف منابع و تصمیم گیری در مورد ارتقا و بهینه سازی منابع استفاده شوند. البته به شرطی که نحوه تحلیل عددهای میانگین بار را بدانید که در این زمینه می توانید از مقاله load average چیست؟ کمک بگیرید.

جایگزین های دستور uptime در لینوکس

اگر به هر دلیلی نمی خواهید یا نمی توانید از دستور uptime استفاده کنید، می توانید از جایگزین های آن یعنی  فایل proc/uptime/، دستور who -b، دستور w، دستور top و htop کمک بگیرید.

خواندن فایل proc/uptime/

فایل proc/uptime/ یک منبع مهم برای بررسی آپتایم سیستم لینوکس است که زمان کل اجرای سیستم بعد از آخرین بوت/ریستارت و میزبان بیکار بودن سیستم را شامل می شود.

برای دسترسی به اطلاعات این فایل می توانید از دستور زیر استفاده کنید:

cat /proc/uptime

خروجی فایل proc/uptime/

عدد اول، نشاندهنده میزان آپتایم سیستم (برحسب ثانیه) و عدد دوم هم نشاندهده میزان بیکار یا idle بودن سیستم (برحسب ثانیه) است.

دستور w

این دستور هم اطلاعات مفیدی در مورد کاربران فعال و میزان فعالیت آنها نشان می دهد که با بررسی آنها می توانید به یک نتیجه گیری در مورد مدت زمان فعالیت هر کدام از آنها و در نتیجه زمان فعال بودن سیستم برسید.

دستور who

دستور who با آپشن b، زمان/تاریخ آخرین بوت سیستم را نشان می دهد که با استفاده از آن می توانید از مدت زمان در حال اجرا یا به عبارت دیگر، اکتیو بودن سیستم مطلع شوید.

دستور top و htop

اگر برای نظارت عملکرد سرور یا سیستم لینوکس خود به دنبال ابزارهای کاربردی تر و تعاملی تر هستید می توانید به top و htop اعتماد کنید.

با این اوصاف، دستور uptime که زمان فعال بودن سیستم را بر حسب ساعت و دقیقه نشان می دهد، در مقایسه با این دستورات کاربردی تر است ولی این به نیاز و سطح جزئیات شما بستگی دارد که از کدام روش استفاده کنید.

حتی اگر می بینید که ابزارهای خط فرمان به خوبی از عهده برآورده کردن انتظارات شما برنمی آیند، می توانید از بهترین ابزارهای مانیتورینگ مثل Zabbix استفاده کنید.

سخن آخر

دستور uptime در لینوکس برای نمایش اطلاعات مربوط به میزان فعالیت سیستم استفاده می شود که با همراه کردن آپشن ها یا دستورات دیگر می توانید رفتار آن را به شکل دلخواه خود تغییر دهید.

مطالب مشابهی که شاید علاقمند باشید

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

دیدگاه های شما

برای دریافت این مقاله لطفا ایمیلتان را وارد کنید

می توانید مقاله را دانلود کنید یا پرینت بگیرید