یک اسکریپت بش بنویسید که فضای دیسک را برای پارتیشن / بررسی کند و اگر درصد استفاده از 80٪ بیشتر بود، پیغام هشدار را چاپ کرده و آن را همراه با تاریخ و زمان در یک فایل لاگ ذخیره کند.

14.0 بازدید آخرین ویرایش در 198 روز قبل ساعت 00:03

0.0

برای حل این مسئله از فرمان df (مثلاً df -P /) برای گرفتن درصد استفاده از پارتیشن استفاده کنید و با awk یا cut کاراکتر % را حذف کرده تا مقدار عددی به دست آید؛ سپس با یک شرط مقایسه‌ای عدد را با 80 مقایسه کنید (در بش از -gt برای مقایسه اعداد صحیح استفاده کنید). در صورت عبور از آستانه، پیغام هشدار را با date ترکیب کرده و آن را با append به فایل لاگ (مثلاً /var/log/disk_monitor.log) بنویسید. نکات: اسکریپت را اجرایی کنید (chmod +x)، برای نوشتن در مسیرهای سیستمی ممکن است نیاز به sudo باشد، و می‌توانید اسکریپت را با cron زمان‌بندی کنید تا به صورت دوره‌ای اجرا شود.

توسط پژوهشگر در 198 روز قبل ساعت 00:03
دسته بندی ها: Bash Scripting Bash Scripting for beginner
arash در 198 روز قبل ساعت 00:03

برای استخراج درصد از df -P / از awk یا cut استفاده کنید و نماد % را حذف کرده تا مقدار عددی برای مقایسه با -gt به دست آید. توجه داشته باشید که نوشتن در /var/log معمولاً نیاز به دسترسی ریشه دارد، بنابراین یا اسکریپت را با sudo اجرا کنید یا مسیر لاگ قابل نوشتن انتخاب کنید. اسکریپت را با chmod +x کنید و برای اجراهای دوره‌ای آن را در crontab قرار دهید و مسیرهای کامل فرمان‌ها و PATH را مشخص کنید. همچنین بهتر است بررسی فضای inode و استفاده از logger یا مکانیزم چرخش لاگ (logrotate) را مد نظر قرار دهید تا از پر شدن لاگ و مشکلات همزمانی جلوگیری شود.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری