صبر کنید...
مرکز آموزش میلاد سرور

خواندن لاگ‌ها با journalctl و پیدا کردن خطاهای سرور

تصویر آموزشی خواندن لاگ‌ها با journalctl و پیدا کردن خطاهای سرور
راهنمای تصویری و مرحله‌به‌مرحله میلاد سرور

لاگ‌ها بهترین دوست عیب‌یابی هستند؛ یاد بگیرید در چند ثانیه علت خطای سرویس یا حمله را پیدا کنید.

آخرین به‌روزرسانی: ۲۸ مهر ۱۴۰۵ · زمان مطالعه: حدود 3 دقیقه · سطح: کاربردی

در این آموزش چه یاد می‌گیرید؟
  • خواندن لاگ‌ها با journalctl و پیدا کردن خطاهای سرور
  • لاگ‌های امروز را ببینید
  • برای ارسال لاگ به سرور مرکزی برنامه بسازید

چرا این موضوع مهم است؟

موضوع Linux یکی از پایه‌های نگهداری سرور است. رعایت آن باعث پایداری بیشتر، کاهش ریسک امنیتی و صرفه‌جویی در زمان پشتیبانی می‌شود.

این راهنما با فرض دسترسی مدیریتی (root یا sudo) نوشته شده و مراحل آن روی یک سرور تازه آزمایش شده است.

پیش‌نیازها

  • دسترسی SSH با کاربر root یا کاربر دارای sudo
  • Ubuntu 22.04/24.04 یا Debian 12 (سازگاری با توزیع‌های مشابه)
  • نسخه پشتیبان از فایل‌ها و دیتابیس‌های مهم

راهنمای گام‌به‌گام

گام 1 — لاگ‌های امروز را ببینید

لاگ‌های امروز را ببینید. برای اطمینان، نتیجه را از یک مسیر دوم (مرورگر، کلاینت یا ابزار مانیتورینگ) هم بررسی کنید.

گام 2 — لاگ یک سرویس خاص را فیلتر کنید

لاگ یک سرویس خاص را فیلتر کنید. این کار را در بازه کم‌ترافیک انجام دهید و در صورت نیاز کاربران را از قبل مطلع کنید.

گام 3 — خطاها را از بقیه جدا کنید

خطاها را از بقیه جدا کنید. این مرحله را با دقت انجام دهید و خروجی دستور را بررسی کنید تا از اعمال درست تغییرات مطمئن شوید.

گام 4 — بازه زمانی مشخصی را جستجو کنید

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

گام 5 — لاگ‌ها را با logrotate مدیریت کنید

لاگ‌ها را با logrotate مدیریت کنید. اگر روی چند سرور کار می‌کنید، این مورد را یک‌بار روی محیط تست اجرا و سپس روی تولید اعمال کنید.

گام 6 — برای ارسال لاگ به سرور مرکزی برنامه بسازید

برای ارسال لاگ به سرور مرکزی برنامه بسازید. مقدارهای نمونه را با اطلاعات واقعی سرور خود جایگزین کنید و از اجرای دستور با مقادیر پیش‌فرض پرهیز کنید.

نمودار مراحل خواندن لاگ‌ها با journalctl و پیدا کردن خطاهای سرور
شش گام اصلی این آموزش در یک نگاه

نمونه دستورها

نمونه دستورهای خواندن لاگ‌ها با journalctl و پیدا کردن خطاهای سرور
دستورهای پیشنهادی؛ مقادیر نمونه را با اطلاعات سرور خود جایگزین کنید.
journalctl --since "1 hour ago"
journalctl -u nginx -p err
journalctl --since "2026-01-01" --until "2026-01-02"

نکات امنیتی و بهینه‌سازی

  • نسخه پکیج‌ها و سیستم‌عامل را به‌روز نگه دارید؛ بسیاری از نفوذها از نسخه‌های قدیمی شروع می‌شوند.
  • دسترسی‌ها را حداقلی نگه دارید و فقط پورت‌ها و کاربران لازم را باز بگذارید.
  • پیش از هر تغییر بزرگ، نسخه پشتیبان قابل بازیابی تهیه کنید و بازیابی را تست کنید.

خطاهای رایج و راه‌حل

  • قبل از بازگردانی بکاپ، مطمئن شوید نسخه بکاپ با نسخه فعلی سازگار است.
  • خطای Permission denied معمولاً به مالکیت یا مجوز فایل مربوط است؛ chmod -R 777 راه‌حل نیست.
  • قبل از بازگردانی بکاپ، مطمئن شوید نسخه بکاپ با نسخه فعلی سازگار است.
نکته طلایی: در سرورهای پربار، اندازه لاگ سیستم را محدود کنید تا دیسک پر نشود (SystemMaxUse).

سؤالات متداول

لاگ Nginx کجاست؟

معمولاً /var/log/nginx/access.log و error.log؛ در systemd هم journalctl -u nginx.

چطور خطاهای SSH را ببینم؟

journalctl -u ssh یا /var/log/auth.log بسته به توزیع.

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

میلاد سرور پلن‌های اقتصادی سرور مجازی ایران و سرور مجازی آلمان را با آی‌پی اختصاصی و قیمت شفاف ارائه می‌کند. برای مقایسه همه کشورها فهرست کامل سرورهای بین‌الملل را ببینید.

جمع‌بندی

با رعایت این مراحل، سرویس شما پایدارتر و امن‌تر خواهد بود؛ اما پایش منظم را فراموش نکنید.

این آموزش برای شما مفید بود؟نظر شما به بهتر شدن آموزش‌ها کمک می‌کند.
اشتراک‌گذاری:تلگرامواتساپX