Errore del modulo di caricamento del kernel durante l'avvio

8

Sto usando Ubuntu 15.10 su un laptop Dell. Funziona bene ma recentemente ho avuto tempi di avvio lenti (~ 1 minuto). Così mi sono guardato intorno e quando ho letto il file /var/log/boot.log , vedo il seguente errore:

[FAILED] Failed to start Load Kernel Modules.
See 'systemctl status systemd-modules-load.service' for details.

Con ogni altro servizio (tranne tftpd) che funziona perfettamente. Ecco l'output completo:

[  OK  ] Started Load/Save Screen Backlight Brightness of backlight:intel_backlight.
[  OK  ] Reached target Sound Card.
[  OK  ] Created slice system-systemd\x2drfkill.slice.
         Starting Load/Save RF Kill Switch Status of rfkill0...
[  OK  ] Started Show Plymouth Boot Screen.
[  OK  ] Started Forward Password Requests to Plymouth Directory Watch.
[  OK  ] Started Load/Save RF Kill Switch Status of rfkill0.
[  OK  ] Started Check And Enable File System Quotas.
         Starting Load/Save RF Kill Switch Status of rfkill1...
[  OK  ] Started Braille Device Support.
         Starting Load Kernel Modules...
[FAILED] Failed to start Load Kernel Modules.
See 'systemctl status systemd-modules-load.service' for details.
[  OK  ] Started Load/Save RF Kill Switch Status of rfkill1.
[  OK  ] Started LSB: QEMU KVM module loading script.
[  OK  ] Found device ST500LM012_HN-M500MBB 8.
         Starting File System Check on /dev/sda8...
[  OK  ] Started File System Check on /dev/sda8.
         Mounting /mnt/ubuntuspace...
[  OK  ] Found device ST500LM012_HN-M500MBB 7.
         Activating swap /dev/disk/by-uuid/431a5631-95f2-4d4f-8f81-42e5801b57aa...
[  OK  ] Activated swap /dev/disk/by-uuid/431a5631-95f2-4d4f-8f81-42e5801b57aa.
[  OK  ] Reached target Swap.
[  OK  ] Mounted /mnt/ubuntuspace.
[  OK  ] Reached target Local File Systems.
         Starting Create Volatile Files and Directories...
         Starting Set console keymap...
[  OK  ] Reached target Remote File Systems.
         Starting Wait for all "auto" /etc/network/interfaces to be up for network-online.target...
         Starting LSB: AppArmor initialization...
         Starting Clean up any mess left by 0dns-up...
         Starting Tell Plymouth To Write Out Runtime Data...
[  OK  ] Started Wait for all "auto" /etc/network/interfaces to be up for network-online.target.
[  OK  ] Started Clean up any mess left by 0dns-up.
         Starting Nameserver information manager...
[  OK  ] Started Nameserver information manager.
[  OK  ] Started Set console keymap.
[  OK  ] Started Create Volatile Files and Directories.
         Starting Update UTMP about System Boot/Shutdown...
         Starting Network Time Synchronization...
[  OK  ] Started Update UTMP about System Boot/Shutdown.
[  OK  ] Started Network Time Synchronization.
[  OK  ] Reached target System Time Synchronized.
[  OK  ] Started LSB: AppArmor initialization.
         Starting LSB: Raise network interfaces....
[  OK  ] Started LSB: Raise network interfaces..
[  OK  ] Started Tell Plymouth To Write Out Runtime Data.
[  OK  ] Reached target System Initialization.
[  OK  ] Listening on UUID daemon activation socket.
         Starting Restore Sound Card State...
[  OK  ] Listening on D-Bus System Message Bus Socket.
[  OK  ] Started CUPS Scheduler.
[  OK  ] Listening on PC/SC Smart Card Daemon Activation Socket.
[  OK  ] Listening on CUPS Scheduler.
[  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
[  OK  ] Started Trigger resolvconf update for networkd DNS.
[  OK  ] Reached target Paths.
[  OK  ] Started Daily Cleanup of Temporary Directories.
[  OK  ] Reached target Timers.
[  OK  ] Listening on ACPID Listen Socket.
[  OK  ] Reached target Sockets.
[  OK  ] Reached target Basic System.
         Starting Restore /etc/resolv.conf if the system crashed before the ppp link was shut down....
         Starting System Logging Service...
         Starting Permit User Sessions...
[  OK  ] Started Self Monitoring and Reporting Technology (SMART) Daemon.
         Starting Avahi mDNS/DNS-SD Stack...
         Starting LSB: Set the CPU Frequency Scaling governor to "ondemand"...
         Starting Detect the available GPUs and deal with any system changes...
         Starting LSB: Record successful boot for GRUB...
[  OK  ] Started Cgroup management daemon.
[  OK  ] Started CUPS Scheduler.
         Starting VirtualBox Linux kernel module...
         Starting LSB: automatic crash report generation...
         Starting Network Manager...
[  OK  ] Started Deferred execution scheduler.
[  OK  ] Started crash report submission daemon.
         Starting Modem Manager...
         Starting LSB: Load kernel modules needed to enable cpufreq scaling...
         Starting LSB: Start/stop sysstat's sadc...
         Starting Enable support for additional executable binary formats...
         Starting Accounts Service...
         Starting LSB: Speech Dispatcher...
         Starting Bluetooth service...
[  OK  ] Started Regular background program processing daemon.
         Starting Initialize hardware monitoring sensors...
         Starting LSB: daemon to balance interrupts for SMP systems...
[  OK  ] Started D-Bus System Message Bus.
[  OK  ] Started Avahi mDNS/DNS-SD Stack.
[  OK  ] Started Bluetooth service.
[  OK  ] Started Network Manager.
[  OK  ] Reached target Network.
[  OK  ] Started OpenBSD Secure Shell server.
         Starting MySQL Community Server...
         Starting OpenVPN service...
[  OK  ] Reached target Bluetooth.
[  OK  ] Started Make remote CUPS printers available locally.
         Starting LSB: Start daemon at boot time...
         Starting Thermal Daemon Service...
         Starting dnsmasq - A lightweight DHCP and caching DNS server...
         Starting PostgreSQL Cluster 9.4-main...
         Starting Login Service...
         Starting Network Manager Wait Online...
         Starting LSB: Monitor for system resources and process activity...
[  OK  ] Started System Logging Service.
[  OK  ] Started Restore Sound Card State.
[  OK  ] Started Restore /etc/resolv.conf if the system crashed before the ppp link was shut down..
[  OK  ] Started Permit User Sessions.
[  OK  ] Started LSB: Set the CPU Frequency Scaling governor to "ondemand".
[  OK  ] Started LSB: Record successful boot for GRUB.
[  OK  ] Started VirtualBox Linux kernel module.
[  OK  ] Started LSB: automatic crash report generation.
[  OK  ] Started LSB: Load kernel modules needed to enable cpufreq scaling.
[  OK  ] Started LSB: Start/stop sysstat's sadc.
[  OK  ] Started LSB: Speech Dispatcher.
[  OK  ] Started LSB: daemon to balance interrupts for SMP systems.
[  OK  ] Started OpenVPN service.
[  OK  ] Started Initialize hardware monitoring sensors.
         Starting Hostname Service...
         Starting Authenticate and Authorize Users to Run Privileged Tasks...
         Mounting Arbitrary Executable File Formats File System...
         Starting LSB: set CPUFreq kernel parameters...
         Starting vboxweb-service.service...
         Starting vboxballoonctrl-service.service...
         Starting vboxautostart-service.service...
[  OK  ] Mounted Arbitrary Executable File Formats File System.
[  OK  ] Started LSB: set CPUFreq kernel parameters.
[  OK  ] Started vboxweb-service.service.
[  OK  ] Started vboxballoonctrl-service.service.
[  OK  ] Started vboxautostart-service.service.
[  OK  ] Started Enable support for additional executable binary formats.
[  OK  ] Started Hostname Service.
[  OK  ] Started Login Service.
[  OK  ] Started LSB: Monitor for system resources and process activity.
[  OK  ] Started Thermal Daemon Service.
[  OK  ] Started Authenticate and Authorize Users to Run Privileged Tasks.
[  OK  ] Started Accounts Service.
[  OK  ] Started Modem Manager.
[  OK  ] Started LSB: Start daemon at boot time.
[  OK  ] Started ACPI event daemon.
         Starting WPA supplicant...
[  OK  ] Started dnsmasq - A lightweight DHCP and caching DNS server.
[  OK  ] Reached target Host and Network Name Lookups.
[  OK  ] Started WPA supplicant.
         Starting Network Manager Script Dispatcher Service...
[  OK  ] Started Network Manager Script Dispatcher Service.
[  OK  ] Started MySQL Community Server.
[  OK  ] Started PostgreSQL Cluster 9.4-main.
         Starting PostgreSQL RDBMS...
[  OK  ] Started PostgreSQL RDBMS.
[  OK  ] Started Network Manager Wait Online.
[  OK  ] Reached target Network is Online.
         Starting LSB: start Samba daemons for the AD DC...
         Starting LSB: disk temperature monitoring daemon...
         Starting LSB: HPA's tftp server...
         Starting /etc/rc.local Compatibility...
         Starting LSB: Tool to automatically collect and submit kernel crash signatures...
         Starting LSB: Apache2 web server...
         Starting ISC DHCP IPv4 server...
         Starting LSB: Postfix Mail Transport Agent...
         Starting LSB: backup and restore program...
         Starting LSB: Starts or stops the xinetd daemon....
         Starting LSB: start Samba NetBIOS nameserver (nmbd)...
[  OK  ] Started LSB: disk temperature monitoring daemon.
[  OK  ] Started /etc/rc.local Compatibility.
[  OK  ] Started ISC DHCP IPv4 server.
[  OK  ] Started LSB: backup and restore program.
[FAILED] Failed to start LSB: HPA's tftp server.
See 'systemctl status tftpd-hpa.service' for details.
[  OK  ] Started LSB: Tool to automatically collect and submit kernel crash signatures.
         Starting Wait for Plymouth Boot Screen to Quit...
[  OK  ] Started LSB: Starts or stops the xinetd daemon..
[  OK  ] Started Detect the available GPUs and deal with any system changes.
         Starting Light Display Manager...

Ecco l'output di systemctl status systemd-modules-load.service :

● systemd-modules-load.service - Load Kernel Modules
   Loaded: loaded (/lib/systemd/system/systemd-modules-load.service; static; vendor preset: enabled)
   Active: failed (Result: exit-code) since Wed 2016-07-06 06:05:56 IST; 1h 13min ago
     Docs: man:systemd-modules-load.service(8)
           man:modules-load.d(5)
  Process: 1019 ExecStart=/lib/systemd/systemd-modules-load (code=exited, status=1/FAILURE)
 Main PID: 1019 (code=exited, status=1/FAILURE)

Jul 06 06:05:56 hostname systemd[1]: Starting Load Kernel Modules...
Jul 06 06:05:56 hostname systemd[1]: systemd-modules-load.service: Main process exited, code=exited, status=1/FAILURE
Jul 06 06:05:56 hostname systemd[1]: Failed to start Load Kernel Modules.
Jul 06 06:05:56 hostname systemd[1]: systemd-modules-load.service: Unit entered failed state.
Jul 06 06:05:56 hostname systemd[1]: systemd-modules-load.service: Failed with result 'exit-code'.

qual è esattamente l'errore, influisce sui tempi di avvio e come dovrebbe essere risolto?

    
posta user2559578 06.07.2016 - 03:54

1 risposta

4

Che cos'è "Impossibile avviare il caricamento dei moduli del kernel"?

Systemd legge i file nella directory /etc/modules-load.d per i moduli da caricare con questo servizio. Se i moduli specificati in questi file non sono presenti nella directory /lib/modules per il kernel in fase di avvio, viene visualizzato l'errore "impossibile avviare il caricamento dei moduli del kernel". Ecco il contenuto della directory /etc/modules-load.d da ls -lA

-rw-r--r-- 1 root root 119 Apr 20 17:01 cups-filters.conf
lrwxrwxrwx 1 root root  10 May 12 10:39 modules.conf -> ../modules

Cattura i dettagli da journalctl

Nel mio caso, ecco la parte pertinente di journalctl :

May 27 06:36:50 zanna-X205TA systemd-modules-load[176]: Failed to find module 'lp'
May 27 06:36:50 zanna-X205TA systemd-modules-load[176]: Failed to find module 'ppdev'
May 27 06:36:50 zanna-X205TA systemd-modules-load[176]: Failed to find module 'parport_pc'

Se fai journalctl | grep modules vedrai quali non sono riusciti a caricare

Nel mio caso, /etc/modules (puntato da symlink) era vuoto ma il file cups-filters.conf conteneva i riferimenti ai moduli che lanciavano errori:

# Parallel printer driver modules loading for cups
# LOAD_LP_MODULE was 'yes' in /etc/default/cups
lp
ppdev
parport_pc

Rendi il messaggio scomparso

Il mio laptop non ha nemmeno porte parallele, ovviamente, quindi non ho bisogno di quei moduli. In ogni caso, non è stato possibile caricarli poiché non erano in /lib/modules/$(uname -r)

Ho commentato queste tre righe (mettendo # all'inizio della riga davanti al nome del modulo per ognuna) e il messaggio di errore è scomparso.

Tuttavia non ho notato alcuna differenza nel tempo di avvio.

TL; DR

  • controlla journalctl per vedere quali moduli non riescono a caricare
  • legge i file in /etc/modules-load.d per cercare riferimenti a quei moduli
  • commenta le righe che specificano quei moduli per far scomparire l'errore (ma fai una copia di backup prima di modificarlo)
  • riavvia per vedere se questo fa alcuna differenza per il tempo di avvio
risposta data Zanna 06.07.2016 - 08:41

Leggi altre domande sui tag