Làm thế nào để tôi tìm ra lý do tại sao dịch vụ systemctl dịch vụ systemd-mô-đun-tải không thành công?


27

Trong một thời gian, tôi đã thấy một số văn bản màu đỏ nhấp nháy trong khi khởi động. Hôm nay tôi quyết định xem xét nó. Dịch vụ systemctl systemd-modules-load.servicekhông thành công với văn bản này:

tomas @ Bonus-debian: ~ $ sudo systemctl status systemd-module-load
● systemd-module-load.service - Tải mô-đun hạt nhân
   Đã tải: đã tải (/lib/systemd/system/systemd-modules-load.service; static; nhà cung cấp cài sẵn: đã bật)
   Hoạt động: thất bại (Kết quả: mã thoát) kể từ ma. 2015-11-09 02:58:48 CET; 5 phút trước
     Tài liệu: man: systemd-module-load.service (8)
           người đàn ông: mô-đun-load.d (5)
  Quá trình: 644 ExecStart = / lib / systemd / systemd-module-load (code = exited, status = 1 / FAILURE)
 PID chính: 644 (mã = thoát, trạng thái = 1 / FAILURE)

tiểu thuyết 09 02:58:48 system-debian systemd [1]: Bắt đầu tải các mô-đun hạt nhân ...
tiểu thuyết 09 02:58:48 phần thưởng-debian systemd-module-load [644]: Không thể tìm thấy mô-đun '-r usbhid'
tiểu thuyết 09 02:58:48 Bonus-debian systemd [1]: systemd-module-load.service: Quá trình chính đã thoát, code = exited, status = 1 / FAILURE
tiểu thuyết 09 02:58:48 phần thưởng-debian systemd [1]: Không thể bắt đầu tải Mô-đun hạt nhân.
tiểu thuyết 09 02:58:48 Bonus-debian systemd [1]: systemd-module-load.service: Đơn vị nhập trạng thái không thành công.
tiểu thuyết 09 02:58:48 Bonus-debian systemd [1]: systemd-module-load.service: Không thành công với kết quả 'mã thoát'.

Tôi nghĩ tôi sẽ bắt đầu bằng cách giải quyết vấn đề:

Ảnh chụp màn hình

Ôi.

Hệ thống của tôi dường như không bận tâm rằng trình điều khiển không tải được, vì tôi không nhận thấy trải nghiệm xuống cấp, nhưng tôi vẫn muốn sửa nó.

Vì Google không đưa tôi đến đâu, tôi đã bị mắc kẹt. Tôi không biết bắt đầu tìm kiếm ở đâu.

Làm thế nào để tôi tìm ra lý do tại sao dịch vụ systemctl "systemd-module-load" không thành công?


Bạn đã thay đổi một udevquy tắc, bằng bất kỳ cơ hội?
MariusMatutiae

Bạn có thể kiểm tra nhật ký cho các bản ghi? Có phải nó đang cố tải một mô-đun có tên "-r usbhid"?
cristi

Câu trả lời:


39

Tôi cũng có vấn đề này. Tôi đã có thể giải quyết nó bằng cách làm theo các hướng dẫn trên trang wiki hệ thống Arch Linux . Dưới đây là một bản tóm tắt về những gì tôi đã làm:

  1. Cho phép tìm các dịch vụ systemd không khởi động được

    $ systemctl --failed  
    ------------------------------------------------------------------------
    systemd-modules-load.service   loaded failed failed  Load Kernel Modules
    
  2. Ok, chúng tôi đã tìm thấy một vấn đề với dịch vụ tải systemd-mô-đun. Chúng tôi muốn biết thêm.

    $ systemctl status systemd-modules-load  
    ------------------------------------------------------------------------
    systemd-modules-load.service - Load Kernel Modules      
       Loaded: loaded (/usr/lib/systemd/system/systemd-modules-load.service; static)     
       Active: failed (Result: exit-code) since So 2013-08-25 11:48:13 CEST; 32s ago  
         Docs: man:systemd-modules-load.service(8).  
               man:modules-load.d(5)
      Process: 15630 ExecStart=/usr/lib/systemd/systemd-modules-load (code=exited, status=1/FAILURE)
    

    Nếu ID tiến trình không được liệt kê, chỉ cần khởi động lại dịch vụ thất bại với

    $ systemctl restart systemd-modules-load
    
  3. Bây giờ chúng tôi có id quá trình (PID) để điều tra sâu về lỗi này. Nhập lệnh sau với ID tiến trình hiện tại (ở đây: 15630):

    $ journalctl _PID=15630
    ----------------------------------------------------------------------
    -- Logs begin at Sa 2013-05-25 10:31:12 CEST, end at So 2013-08-25 11:51:17 CEST. --
    Aug 25 11:48:13 mypc systemd-modules-load[15630]: Failed to find module 'blacklist usblp'
    Aug 25 11:48:13 mypc systemd-modules-load[15630]: Failed to find module 'install usblp /bin/false'
    
  4. Chúng tôi thấy rằng một số cấu hình mô-đun hạt nhân có cài đặt sai. Do đó, chúng tôi đã xem xét các cài đặt này trong /etc/modules-load.d/

    $ ls -Al /etc/modules-load.d/
    ----------------------------------------------------------------------
    ...  
    -rw-r--r--   1 root root    79  1. Dez 2012  blacklist.conf  
    -rw-r--r--   1 root root     1  2. Mär 14:30 encrypt.conf  
    -rw-r--r--   1 root root     3  5. Dez 2012  printing.conf  
    -rw-r--r--   1 root root     6 14. Jul 11:01 realtek.conf  
    -rw-r--r--   1 root root    65  2. Jun 23:01 virtualbox.conf  
    ...  
    
  5. Thông báo lỗi 'danh sách đen usblp' của mô-đun có thể liên quan đến cài đặt sai bên trong danh sách đen. Cho phép hủy kích hoạt nó bằng cách chèn dấu # trước mỗi tùy chọn chúng tôi tìm thấy qua bước 3:

    /etc/modules-load.d/blacklist.conf  
    ----------------------------------------------------------------------
    # blacklist usblp  
    # install usblp /bin/false  
    
  6. Bây giờ, hãy thử khởi động systemd-module-load:

    $ systemctl restart systemd-modules-load  
    

    Nếu nó đã thành công, điều này sẽ không nhắc nhở bất cứ điều gì. Nếu bạn thấy bất kỳ lỗi nào, hãy quay lại bước 3 và sử dụng bộ vi xử lý mới để giải quyết các lỗi còn lại.

    Nếu mọi thứ đều ổn, bạn có thể xác minh rằng dịch vụ đã được bắt đầu thành công với:

    $ systemctl status systemd-modules-load
    ----------------------------------------------------------------------
    systemd-modules-load.service - Load Kernel Modules
       Loaded: loaded (/usr/lib/systemd/system/systemd-modules-load.service; static)
       Active: active (exited) since So 2013-08-25 12:22:31 CEST; 34s ago
         Docs: man:systemd-modules-load.service(8)
               man:modules-load.d(5)
     Process: 19005 ExecStart=/usr/lib/systemd/systemd-modules-load (code=exited, status=0/SUCCESS)
    Aug 25 12:22:31 mypc systemd[1]: Started Load Kernel Modules.
    

5
Câu trả lời tuyệt vời - _PID=bây giờ sẽ mãi mãi nằm trong hộp công cụ của tôi. Cảm ơn!
Adrian Günter

1
Thật không may, của tôi /etc/modules-load.d/là trống rỗng, và nó vẫn nói Không thể tìm thấy mô-đun blah . Gì bây giờ?
Adrian

2
Bạn cũng có thể muốn kiểm tra journalctl _SYSTEMD_UNIT=systemd-modules-load.service. Tiết kiệm tìm kiếm PID.
TwoD

2
Từ người dùng bobafetthotmail : cũng tìm kiếm /usr/lib/modules-load.d/các tập tin tải mô-đun, vì có nơi các ứng dụng đặt các mô-đun họ cần. Điều /etc/modules-load.d/này được cho là cho các tập tin cấu hình người dùng.
fixer1234
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.