آیا فرمانی برای چاپ فهرست سرویسهای ناموفق در هنگام استفاده از systemd در لینوکس وجود دارد؟ آیا میتوان با استفاده از فرمان systemctl، لیست تمام سرویسهای ناموفق را مشاهده کرد؟ اینها سؤالاتی است که در ادامه به دنبال پاسخ آن هستیم. در این آموزش نسبتاً کوتاه، نحوه پیدا کردن و چاپ فهرست سرویسهای...
1399/04/225316 بازدید
آیا فرمانی برای چاپ فهرست سرویسهای ناموفق در هنگام استفاده از systemd در لینوکس وجود دارد؟ آیا میتوان با استفاده از فرمان systemctl، لیست تمام سرویسهای ناموفق را مشاهده کرد؟ اینها سؤالاتی است که در ادامه به دنبال پاسخ آن هستیم.
در این آموزش نسبتاً کوتاه، نحوه پیدا کردن و چاپ فهرست سرویسهای ناموفق systemd در سیستمعاملهای لینوکس با استفاده از فرمان system را مرور خواهیم کرد.
فرمان systemctl برای چاپ فهرست سرویسهای ناموفق
فرمان systemctl برای کنترل systemd سیستم و مدیریت سرویسها به کار میرود. برای فهرستکردن تمام واحدهایی که هماکنون در حافظه system قرار دارند، میتوانید از گزینه list-units در فرمان systemctl استفاده کنید.
php
1sudo systemctl list-units --failed2## OR ##3sudo systemctl list-units --state failed
گزینههای فرمان systemctl برای چاپ فهرست سرویسهای ناموفق
نکاتی در مورد گزینه is-failed
امکان بررسی وضعیت «ناموفقبودن» یک سرویس یا واحد در لینوکس وجود دارد. پس از اجرای فرمان زیر، اگر حداقل یک سرویس ناموفق وجود داشته باشد، کد صفر نمایش داده خواهد شد. مگر اینکه گزینه –quiet به فرمان systemctl اضافه شده باشد که در این صورت، وضعیت کنونی واحد در خروجی استاندارد چاپ میشود.
حالت دیگر، اجرای فرمان ساده زیر به همراه فرمان grep به منظور تهیه لیست سرویسهای ناموفق است.
php
1sudo systemctl list-units | grep -i failed
گزینههای systemctl برای چاپ فهرست سرویسهای ناموفق در لینوکس اوبونتو یا دبیان
نحوه پیدا کردن وضعیت واحد یا سرویس
به صورت زیر از گزینه status استفاده کنید.
php
1sudo systemctl status {service-name}2sudo systemctl status ssh.service3sudo systemctl status nginx.service4sudo systemctl status vboxweb.service
گزینه status در فرمان systemctl
نمایش مشخصات یک واحد سرویس
برای این منظور فرمان زیر را اجرا کنید.
php
1sudo systemctl show {service-name}2sudo systemctl show vboxweb.service
نحوه مشاهده پیامهای ثبت وقایع
پیامهای ثبتوقایع میتوانند اطلاعات جامعی در مورد سرویسهای ما باشند. از این اطلاعات میتوانیم برای موارد مرتبط با عیبیابی استفاده کنیم. قالب کار به صورت زیر خواهد بود.
نمایش تمام پیامها
php
1journalctl2journalctl | grep 'error'
نمایش فقط پیامهای کرنل
php
1journalctl –k
نمایش پیامهای لحظهای بر روی صفحه به محض ظاهر شدن
php
1journalctl –f
چگونه پیامهای مرتبط با یک سرویس خاص را مشاهده کنیم؟
1-- Reboot –2Apr 17 00:41:06 nixcraft-wks01 systemd[1]: Starting VirtualBox Web Service…3Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: WARNING: The character device /dev/vboxdrv does not exist.4Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: Please install the virtualbox-dkms package and the appropriate5Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: headers, most likely linux-headers-generic.6Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: You will not be able to start VMs until this problem is fixed7Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: Oracle VM VirtualBox web service Version 6.0.14_Ubuntu8Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: (C) 2007-2019 Oracle Corporation9Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: All rights reserved.10Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: 00:00:00.001759 main VirtualBox web service 6.0.14_Ubuntu r132055 linux.amd64 (Oct 17 2019 07:24:16) release log11Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: 00:00:00.001764 main Log opened 2020-04-16T19:11:06.826028000Z12Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: 00:00:00.001765 main Build Type: release13Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: 00:00:00.001768 main OS Product: Linux14Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: 00:00:00.001769 main OS Release: 5.3.0-46-generic15Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: 00:00:00.001770 main OS Version: #38-Ubuntu SMP Fri Mar 27 17:37:05 UTC 202016Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: 00:00:00.001831 main DMI Product Name: 20QVCTO1WW17Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: 00:00:00.001855 main DMI Product Version: ThinkPad X1 Extreme 2<sup>nd</sup>18Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: 00:00:00.001920 main Host RAM: 31866MB (31.1GB) total, 31409MB (30.6GB) available19Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: 00:00:00.001924 main Executable: /usr/lib/virtualbox/vboxwebsrv20Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: 00:00:00.001924 main Process ID: 167521Apr 17 00:41:06 nixcraft-wks01 vboxwebsrv[1675]: 00:00:00.001925 main Package type: LINUX_64BITS_GENERIC (OSE)22Apr 17 00:41:06 nixcraft-wks01 systemd[1]: Started VirtualBox Web Service.23Apr 20 11:44:00 nixcraft-wks01 systemd[1]: Stopping VirtualBox Web Service…24Apr 20 11:44:05 nixcraft-wks01 systemd[1]: vboxweb.service: Succeeded.25Apr 20 11:44:05 nixcraft-wks01 systemd[1]: Stopped VirtualBox Web Service.26Apr 20 11:44:05 nixcraft-wks01 systemd[1]: Starting VirtualBox Web Service…27Apr 20 11:44:05 nixcraft-wks01 systemd[1]: vboxweb.service: Can’t open PID file /run/vboxweb.pid (yet?) after start: No such file or directory28Apr 20 11:44:05 nixcraft-wks01 systemd[1]: vboxweb.service: Failed with result ‘protocol’.29Apr 20 11:44:05 nixcraft-wks01 systemd[1]: Failed to start VirtualBox Web Service.30-- Reboot –31Apr 20 11:52:48 nixcraft-wks01 systemd[1]: Starting VirtualBox Web Service…32Apr 20 11:52:48 nixcraft-wks01 systemd[1]: vboxweb.service: Can’t open PID file /run/vboxweb.pid (yet?) after start: Operation not permitted33Apr 20 11:52:48 nixcraft-wks01 systemd[1]: vboxweb.service: Failed with result ‘protocol’.34Apr 20 11:52:48 nixcraft-wks01 systemd[1]: Failed to start VirtualBox Web Service.35-- Reboot –36Apr 20 12:17:31 nixcraft-wks01 systemd[1]: Starting VirtualBox Web Service…37Apr 20 12:17:31 nixcraft-wks01 systemd[1]: vboxweb.service: Can’t open PID file /run/vboxweb.pid (yet?) after start: Operation not permitted38Apr 20 12:17:31 nixcraft-wks01 systemd[1]: vboxweb.service: Failed with result ‘protocol’.39Apr 20 12:17:31 nixcraft-wks01 systemd[1]: Failed to start VirtualBox Web Service.40-- Reboot –41Apr 20 12:35:06 nixcraft-wks01 systemd[1]: Starting VirtualBox Web Service…42Apr 20 12:35:06 nixcraft-wks01 systemd[1]: vboxweb.service: Can’t open PID file /run/vboxweb.pid (yet?) after start: Operation not permitted43Apr 20 12:35:06 nixcraft-wks01 systemd[1]: vboxweb.service: Failed with result ‘protocol’.44Apr 20 12:35:06 nixcraft-wks01 systemd[1]: Failed to start VirtualBox Web Service.45-- Reboot –46Apr 21 00:09:56 nixcraft-wks01 systemd[1]: Starting VirtualBox Web Service…47Apr 21 00:09:56 nixcraft-wks01 systemd[1]: vboxweb.service: Can’t open PID file /run/vboxweb.pid (yet?) after start: Operation not permitted
حالا میتوانیم در فضای آنلاین به دنبال این خطاها بگردیم و یا صفحات راهنمای man را بخوانیم و مشکل را رفع کنیم.
جمعبندی
در اینجا نحوه چاپ فهرست سرویسهای ناموفق اجرا شده در لینوکس را با استفاده از فرمان systemctl فرا گرفتیم. برای کسب اطلاعات بیشتر میتوانید به صفحه راهنمای فرمان systemctl مراجعه کنید.
منبع: Cyberciti.biz