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