terminal:j:how-to-use-journalctl-to-view-and-manipulate-systemd-logs
تفاوتها
تفاوت دو نسخهٔ متفاوت از صفحه را مشاهده میکنید.
| نگارش قبل در دو طرفنگارش قبلنگارش بعد | نگارش قبل | ||
| terminal:j:how-to-use-journalctl-to-view-and-manipulate-systemd-logs [2019/10/02 13:14] – افزودن مقدمه phoenix | terminal:j:how-to-use-journalctl-to-view-and-manipulate-systemd-logs [2019/10/03 11:06] (فعلی) – نمایش بر اساس تاریخ phoenix | ||
|---|---|---|---|
| خط 1: | خط 1: | ||
| - | مقدمه | + | ====== دستور Journalctl برای نمایش و ویرایش لاگ های systemd ====== |
| + | ===== مقدمه | ||
| + | برخی از برجسته ترین مزایای استفاده از **systemd** مواردی که با ورود به سیستم و فرآیند همراه هستند. هنگام استفاده از ابزارهای دیگر ، معمولاً لاگهای مربوطه در سراسر سیستم پراکنده می شوند و توسط پردازشگرهای مختلف پردازش می شوند و تفسیر آنها هنگام اجرای چندین برنامه دشوار است. **Systemd** تلاش می کند با ارائه یک راه حل مدیریتی متمرکز برای ورود به سیستم و پردازش های هسته کاربر ، این مشکلات را برطرف کند. سیستمی که این لاگها را جمع آوری و مدیریت می کند به عنوان **journalctl** شناخته می شود. | ||
| - | برخی از برجسته ترین مزایای استفاده از systemd مواردی | + | **journalctl** ، کلیه پیام های تولید شده توسط هسته |
| + | ===== ایده | ||
| - | ژورنال با daemon ژورنال پیاده سازی شده است ، که کلیه پیام های تولید شده توسط هسته ، آغاز ، خدمات و غیره را در اختیار شما قرار می دهد. در این راهنما ، ما در مورد | + | یکی از انگیزه های مربوط به '' |
| + | |||
| + | این یک مزیت مهم را به ما می دهد. که با تعامل با داده ها و استفاده | ||
| + | |||
| + | ===== تنظیم زمان سیستم ===== | ||
| + | |||
| + | یکی از مزایای استفاده از یک **Journal** باینری برای ورود به سیستم ، امکان مشاهده سوابق ورود به سیستم در UTC یا زمان محلی است. به طور | ||
| + | |||
| + | به همین دلیل قبل | ||
| + | |||
| + | ابتدا ، ببینید که چه محدوده های زمانی در دسترس هستند: | ||
| + | < | ||
| + | timedatectl list-timezones | ||
| + | </ | ||
| + | با این کار منطقه های زمانی موجود در سیستم شما | ||
| + | < | ||
| + | sudo timedatectl set-timezone zone | ||
| + | </ | ||
| + | برای اطمینان از اینکه سیستم | ||
| + | < | ||
| + | timedatectl status | ||
| + | </ | ||
| + | < | ||
| + | Local time: چهارشنبه 2019-10-02 13:41:44 +0330 | ||
| + | | ||
| + | RTC time: چهارشنبه 2019-10-02 10:11:45 | ||
| + | Time zone: Asia/Tehran (+0330, +0330) | ||
| + | System clock synchronized: | ||
| + | NTP service: active | ||
| + | RTC in local TZ: no | ||
| + | </ | ||
| + | خط اول باید زمان صحیح را نشان دهد.مشاهده اولیه ورود به سیستم | ||
| + | |||
| + | ===== مشاهده اولیه لاگهای سیستم ===== | ||
| + | |||
| + | |||
| + | برای دیدن گزارش هایی که **Journal** جمع آوری کرده است | ||
| + | |||
| + | هنگامی که به تنهایی استفاده می شود ، هر ورودی **Journal** که در سیستم است در صفحه نمایش میدهد، قدیمی ترین ها اول نمایش داده میشوند: | ||
| + | < | ||
| + | journalctl | ||
| + | </ | ||
| + | < | ||
| + | -- Logs begin at Fri 2019-05-24 19:55:20 +0430, end at Wed 2019-10-02 13:46:02 > | ||
| + | مه 24 19:55:20 linuxsolus systemd[842]: | ||
| + | مه 24 19:55:20 linuxsolus systemd[842]: | ||
| + | مه 24 19:55:20 linuxsolus systemd[842]: | ||
| + | مه 24 19:55:20 linuxsolus systemd[842]: | ||
| + | مه 24 19:55:20 linuxsolus systemd[842]: | ||
| + | مه 24 19:55:20 linuxsolus systemd[842]: | ||
| + | مه 24 19:55:20 linuxsolus systemd[842]: | ||
| + | مه 24 19:55:20 linuxsolus systemd[842]: | ||
| + | مه 24 19:55:20 linuxsolus systemd[842]: | ||
| + | مه 24 19:55:20 linuxsolus systemd[842]: | ||
| + | مه 24 19:55:20 linuxsolus systemd[842]: | ||
| + | مه 24 19:55:20 linuxsolus dbus-daemon[857]: | ||
| + | مه 24 19:55:20 linuxsolus systemd[842]: | ||
| + | مه 24 19:55:20 linuxsolus dbus-daemon[857]: | ||
| + | |||
| + | </ | ||
| + | به احتمال زیاد صفحات و صفحاتی از داده ها را اختیار خواهید داشت که اگر مدت طولانی است که '' | ||
| + | |||
| + | این قالب برای کسانی که برای ورود به سیستم استاندارد **syslog** عادت دارند ، آشنا خواهد بود. با این حال ، این در واقع داده هایی را از منابع بیشتری جمع آوری می کند تا آنچه که اجرای سنتی **syslog** انجام میدهد. این شامل لاگهای مربوط به فرآیند شروع بوت اولیه ، هسته ، خطای استاندارد برنامه ها و غیره | ||
| + | |||
| + | ممکن است متوجه شوید که همه نشان های | ||
| + | |||
| + | اگر می خواهید نشانگرهای زمانی را با ساعت جهانی | ||
| + | < | ||
| + | journalctl --utc | ||
| + | </ | ||
| + | < | ||
| + | -- Logs begin at Fri 2019-05-24 15:25:20 UTC, end at Wed 2019-10-02 10:22:40 UT> | ||
| + | مه 24 15:25:20 linuxsolus systemd[842]: | ||
| + | مه 24 15:25:20 linuxsolus systemd[842]: | ||
| + | مه 24 15:25:20 linuxsolus systemd[842]: | ||
| + | مه 24 15:25:20 linuxsolus systemd[842]: | ||
| + | مه 24 15:25:20 linuxsolus systemd[842]: | ||
| + | مه 24 15:25:20 linuxsolus systemd[842]: | ||
| + | مه 24 15:25:20 linuxsolus systemd[842]: | ||
| + | مه 24 15:25:20 linuxsolus systemd[842]: | ||
| + | مه 24 15:25:20 linuxsolus systemd[842]: | ||
| + | مه 24 15:25:20 linuxsolus systemd[842]: | ||
| + | مه 24 15:25:20 linuxsolus systemd[842]: | ||
| + | مه 24 15:25:20 linuxsolus dbus-daemon[857]: | ||
| + | مه 24 15:25:20 linuxsolus systemd[842]: | ||
| + | </ | ||
| + | ===== فیلتر Journal توسط Time ===== | ||
| + | |||
| + | |||
| + | اگرچه دستیابی به چنین مجموعه بزرگی از داده ها قطعاً مفید است ، اما چنین مقدار زیادی از اطلاعات برای چک و بررسی شاید | ||
| + | ==== نمایش لاگ های مربوط به بوت فعلی ==== | ||
| + | اساسی ترین پارامتر که ممکن است روزانه از آن استفاده کنید پارامتر **b-** است. این همه ورودی های **Journal** را که از آخرین راه اندازی مجدد سیستم جمع آوری شده | ||
| + | < | ||
| + | journalctl -b | ||
| + | </ | ||
| + | این به شما کمک می کند اطلاعاتی | ||
| + | در مواردی که از این ویژگی استفاده نمی کنید و میخواهید بیش از یک روز را به شما نمایش دهد، می بینید که هر وقت سیستم | ||
| + | < | ||
| + | -- Reboot -- | ||
| + | </ | ||
| + | این می تواند به شما کمک کند تا اطلاعات را به صورت منطقی جدا کنید. | ||
| + | ==== Boot های قدیمی تر ==== | ||
| + | |||
| + | معمولا بوت فعلی مورد بررسی قرار میگیرد ،ولی مطمئناً مواقعی وجود دارد که Boot های گذشته رو هم نیاز داشته باشید. این **Journal** | ||
| + | برخی توزیع ها بطور پیش فرض ذخیره اطلاعات بوت قبلی را فعال می کنند ، در حالی که برخی دیگر این | ||
| + | < | ||
| + | sudo mkdir -p / | ||
| + | یا | ||
| + | sudo vim / | ||
| + | </ | ||
| + | در قسمت '' | ||
| + | < | ||
| + | . . . | ||
| + | [Journal] | ||
| + | Storage=persistent | ||
| + | </ | ||
| + | هنگامی که ذخیره Boot های قبلی روی سیستم شما فعال است ، **journalctl** برخی دستورات را برای کمک به شما در کار با Boot ها به عنوان واحد تقسیم فراهم می کند. برای دیدن Boot هایی که **journald** از آن اطلاع دارد ، از گزینه '' | ||
| + | |||
| + | < | ||
| + | journalctl --list-boots | ||
| + | </ | ||
| + | خروجی دستور | ||
| + | < | ||
| + | -136 e493556fa880416684a6ddcad594b0c4 Fri 2019-05-24 19:55:20 +0430—Fri 2019-05-24 22:24:51 +0430 | ||
| + | -135 7ac1e6324a1c4fe8a9b9fb68cb3f53db Sat 2019-05-25 18:40:36 +0430—Sat 2019-05-25 22:28:24 +0430 | ||
| + | -134 eba8a881a9f4425b9b9497140040d3c1 Sun 2019-05-26 12:25:43 +0430—Sun 2019-05-26 18:46:59 +0430 | ||
| + | -133 62d4eb20593a44afaba920a2468ddf2d Mon 2019-05-27 13:43:01 +0430—Mon 2019-05-27 17:07:48 +0430 | ||
| + | -132 612ada7a308148979a5dd1fb9cc4b3a9 Tue 2019-05-28 17:07:20 +0430—Tue 2019-05-28 20:54:17 +0430 | ||
| + | -131 b2c20795ca7c4752b1373dcca0d58467 Thu 2019-05-30 18:24:55 +0430—Thu 2019-05-30 23:41:21 +0430 | ||
| + | -130 4750a6fe9e424ebaba692ea42fdb1448 Fri 2019-05-31 09:57:59 +0430—Fri 2019-05-31 23:39:02 +0430 | ||
| + | -129 31d6a2e3cfc443f7b3a9a5b5cac7576f Sat 2019-06-01 19:20:05 +0430—Sat 2019-06-01 22:47:11 +0430 | ||
| + | -128 e887bfb99ce449eab6cfea32fa400512 Sun 2019-06-02 15:38:52 +0430—Sun 2019-06-02 17:29:12 +0430 | ||
| + | </ | ||
| + | این | ||
| + | به عنوان مثال ، برای دیدن **journal** از بوت قبلی ، از نشانگر نسبی '' | ||
| + | < | ||
| + | journalctl -b -134 | ||
| + | </ | ||
| + | در صورت نیاز میتوانید از شناسه | ||
| + | < | ||
| + | journalctl -b eba8a881a9f4425b9b9497140040d3c1 | ||
| + | </ | ||
| + | ==== نمایش بر اساس تاریخ ==== | ||
| + | در حالی که دیدن مطالب ورود به سیستم توسط بوت فوق العاده مفید است ، اغلب ممکن است بخواهید مقاطع زمانی خاصی | ||
| + | |||
| + | می توانید با استفاده | ||
| + | |||
| + | مقادیر زمانی می توانند در قالب های مختلفی به دست بیایند. به مثالهای زیر دقت کنید: | ||
| + | < | ||
| + | YYYY-MM-DD HH:MM:SS | ||
| + | </ | ||
| + | به عنوان مثال ، می توانیم همه لاگهایی | ||
| + | < | ||
| + | | ||
| + | </ | ||
| + | اگر مولفه های تاریخ را چیزی وارد نکنید پیش فرض آن ملاک خواهد بود. به عنوان مثال ، اگر تاریخ حذف شود ، تاریخ فعلی فرض | ||
| + | < | ||
| + | | ||
| + | </ | ||
| + | این journal همچنین مقادیر نسبی را هم درک میکند. به عنوان مثال ، می توانید از کلمات " | ||
| + | برای به دست آوردن اطلاعات از دیروز ، می توانید تایپ کنید: | ||
| + | |||
| + | < | ||
| + | journalctl --since yesterday | ||
| + | </ | ||
| + | فرض کنید سیستم شما از ساعت ۹ صبح تا همین یک ساعت پیش دچار مشکل شده باشد برای دیدن لاگها از دستور زیر استفاده کنید | ||
| + | < | ||
| + | journalctl --since 09:00 --until "1 hour ago" | ||
| + | </ | ||
terminal/j/how-to-use-journalctl-to-view-and-manipulate-systemd-logs.1570009498.txt.gz · آخرین ویرایش: توسط phoenix
