La mia distribuzione è Fedora 17 Gnome. Ogni volta che riavvio / riavvio del computer, devo eseguire questo comando come root:
modprobe rt2800usb
Come posso renderlo permanente?
La mia distribuzione è Fedora 17 Gnome. Ogni volta che riavvio / riavvio del computer, devo eseguire questo comando come root:
modprobe rt2800usb
Come posso renderlo permanente?
Risposte:
Su qualsiasi distribuzione usando systemd
puoi caricare automaticamente il modulo tramite modules-load.d
:
crea il file di configurazione:
/etc/modules-load.d/rt2800usb.conf
aprilo e modifica in questo modo (aggiungi il nome del modulo):
rt2800usb
al successivo riavvio il modulo dovrebbe essere caricato automaticamente
Risoluzione dei problemi:
Verifica se il systemd
servizio ha caricato il modulo:
systemctl status systemd-modules-load.service
L'output dovrebbe essere simile al seguente:
systemd-modules-load.service - Load Kernel Modules
Loaded: loaded (/usr/lib/systemd/system/systemd-modules-load.service; static)
Active: active (exited) since Wed, 03 Apr 2013 22:50:57 +0000; 46s ago
Docs: man:systemd-modules-load.service(8)
man:modules-load.d(5)
Process: 260 ExecStart=/usr/lib/systemd/systemd-modules-load (code=exited, status=0/SUCCESS)
L'ultima riga contiene PID
(ID processo) e il codice di uscita. status=0/SUCCESS
significa che il modulo è stato inserito correttamente, confermato da:
journalctl -b _PID=260
output essendo:
Apr 03 22:50:57 mxhst systemd-modules-load[260]: Inserted module 'rt2800usb'
In caso di errore, l' systemctl
output è simile al seguente:
systemd-modules-load.service - Load Kernel Modules
Loaded: loaded (/usr/lib/systemd/system/systemd-modules-load.service; static)
Active: failed (Result: exit-code) since Wed, 03 Apr 2013 22:50:59 +0000; 43s ago
Docs: man:systemd-modules-load.service(8)
man:modules-load.d(5)
Process: 260 ExecStart=/usr/lib/systemd/systemd-modules-load (code=exited, status=1/FAILURE)
con journalctl -b
segnalazione:
Apr 03 22:50:59 mxhst systemd-modules-load[260]: Failed to find module 'fakert2800usb'
Quando il codice di uscita è 0/SUCCESS
significa che il modulo è stato inserito correttamente; in esecuzione
lsmod | grep rt2800
dovrebbe confermare che:
rt2800usb 26854 0
rt2x00usb 19757 1 rt2800usb
rt2800lib 64762 1 rt2800usb
rt2x00lib 66520 3 rt2x00usb,rt2800lib,rt2800usb
mac80211 578735 3 rt2x00lib,rt2x00usb,rt2800lib
Se l' lsmod
output non conferma (nonostante il codice di uscita del servizio sia 0/SUCCESS
) significa che qualcosa ha rimosso il modulo dopo essere stato caricato da modules-load.service
. Una possibile causa è un altro *.conf
file che ha inserito nella lista nera il modulo. Cerca una linea come:
blacklist rt2800usb
in /etc/modprobe.d/*.conf
, /usr/lib/modprobe.d/*.conf
o /run/modprobe.d/*.conf
e commentare fuori / eliminarlo.
Per caricare un modulo all'avvio, si crea un file in /etc/modules-load.d/
; questo file può avere qualsiasi nome, ma deve terminare con .conf
. Nel caso del tuo driver wifi, potresti ad esempio creare il file /etc/modules-load.d/rt2800.conf
.
Nel file, aggiungi una singola riga con il nome del modulo che desideri caricare in questo modo:
rt2800usb
La pagina Arch Wiki sui moduli del kernel contiene ulteriori informazioni.