Một dấu hỏi có ý nghĩa gì khi liệt kê tất cả các dịch vụ?


9

Sau khi thực hiện lệnh service --status-alltôi nhận được một danh sách tất cả các dịch vụ trên máy của tôi. Tôi nhận được một đầu ra như thế này.

[ ? ]  acpi-fakekey
[ ? ]  acpi-support
[ + ]  acpid
[ - ]  anacron
[ + ]  apache2
[ + ]  atd
[ - ]  bootlogd

?nghĩa là gì? Tôi đã luôn luôn giả định rằng một +quá trình được bắt đầu và một -quá trình có nghĩa là quá trình bị dừng lại. Nhà nước nào là dịch vụ đi trước ??

Đây là nội dung của /proc/versiontập tin của tôi, nó giúp bất cứ ai trả lời tôi.

Linux version 2.6.32-5-amd64 (Debian 2.6.32-45)

Cảm ơn trước!

Câu trả lời:


7

Dấu hỏi trong đầu ra của service --status-allđược in khi /usr/sbin/servicetập lệnh không tìm thấy dòng trạng thái trong cấu trúc trường hợp trong tập lệnh liên quan bên dưới /etc/init.d.

Nếu bạn nhìn vào /usr/sbin/servicetập lệnh, bạn có thể tìm thấy một câu lệnh if như thế này:

if ! grep -qs "\Wstatus)" "$SERVICE"; then
    #printf " %s %-60s %s\n" "[?]" "$SERVICE:" "unknown" 1>&2
    echo " [ ? ]  $SERVICE" 1>&2
    continue
else

1
... và vì biểu thức chính quy đó không chính xác, nên nó cũng sẽ in sai ?nếu status)dòng không có ký tự không "[: alnum:]" phía trước nó.
mạo
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.