NetworkManager (Italiano)
zh-CN:NetworkManager Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary text Template:Article summary end
NetworkManager è un programma per la rilevazione e la configurazione delle reti, e con il quale, i sistemi potranno connettersi automaticamente. La funzionalità di NetworkManager può essere utile sia per reti cablate che wireless. Per quanto riguarda il wireless, NetworkManager predilige le reti conosciute, ed offre la possibilità di passare alla rete più affidabile. Le applicazioni di allerta di NetworkManager possono passare dalla modalità online a quella offline. NetworkManager può inoltre favorire le connessioni cablate a quelle wireless, oltre ad includere il supporto per connessioni modem e certi tipi di VPN. NetworkManager è stato originariamente sviluppato da RedHat ed è ora ospitato dal progetto GNOME.
Contents
- 1 Installazione di base
- 2 Interfacce grafiche
- 3 Configurazione
- 4 Testing
- 5 Risoluzione dei problemi
- 5.1 Problemi con il traffico dati tramite il tunnel PPTP
- 5.2 Gestione di rete disabilitata
- 5.3 NetworkManager impedisce a DHCPCD l'uso di resolv.conf.head e resolv.conf.tail
- 5.4 Preservare le modifiche a resolv.conf
- 5.5 Problemi DHCP
- 5.6 Problemi con hostname
- 5.7 Manca il route predefinito
- 5.8 Modem 3G non rilevato
- 5.9 Spegnimento WLAN su computer portatili
- 5.10 Impostazioni IP statico ripristinate a DHCP
- 5.11 È impossibile editare connessioni da utente
- 5.12 Cancellare una rete nascosta
- 6 Suggerimenti
Installazione di base
NetworkManager è disponibile nei repositories ufficiali ed è quindi installabile tramite pacman.
Supporto VPN
Networkmanager supporta le reti VPN tramite tre plugin, tutti presenti nei repositories ufficiali: networkmanager-openvpn networkmanager-pptp networkmanager-vpnc
Interfacce grafiche
Per configurare ed avere un facile accesso a NetworkManager, molti utenti vorranno installare un'applet. Quest'interfaccia grafica solitamente risiede nella system tray (o area di notifica) e consente la selezione della rete e la configurazione di NetworkManager. Esistono varie applet per diversi tipi di desktop.
GNOME
L'applet GNOME (network-manager-applet) è abbastanza leggero e funziona in tutti gli ambienti.
Se si desidera memorizzare i dati di autenticazione (Wireless/DSL) e attivare le impostazioni di connessione globale, cioè "a disposizione di tutti gli utenti" è necessario installare GNOME Keyring.
KDE4
Il front-end KNetworkManager è stato reso disponibile per la versione KDE 4.4 come un widget di Plasma kdeplasma-applets-networkmanagement nei Repositori Ufficiali
La controparte GNOME funziona altrettanto bene, o anche meglio (ha più funzioni e rileva più hardware).
Se sul proprio sistema si hanno installati sia KNetworkManager, sia nm-applet
e non si vuole avere nm-applet
aperto su KDE, aggiungere questa riga a /etc/xdg/autostart/nm-applet.desktop
.
NotShowIn=KDE
XFCE
nm-applet
funziona perfettamente anche in XFCE, ma per abilitare le notifiche, inclusi i messaggi di errore è necessaria una specifica implementazione di Freedesktop. Vedere questo per visualizzare le notifiche. L'implementazione più usata è data dal pacchetto xfce4-notifyd.
Senza questo demone, networkmanager stamperà questi errori stdout/stderr:
(nm-applet:24209): libnotify-WARNING **: Failed to connect to proxy
** (nm-applet:24209): WARNING **: get_all_cb: couldn't retrieve system settings properties: (25) Launch helper exited with unknown return code 1.
** (nm-applet:24209): WARNING **: fetch_connections_done: error fetching connections: (25) Launch helper exited with unknown return code 1.
** (nm-applet:24209): WARNING **: Failed to register as an agent: (25) Launch helper exited with unknown return code 1
nm-applet funziona comunque, ma non si avrannò notifiche.
Openbox
Per usare in modo appropriato networkmanager su Openbox è necessario il demone di notifica xfce4-notifyd e il pacchetto gnome-icon-theme per abilitare l'icona nella systray.
Se si desidera memorizzare i dati di autenticazione (Wireless/DSL) installare GNOME Keyring.
/etc/rc.conf
, i seguenti passaggi sono del tutto obsoleti e l'applet verrà avviato due volte.Per fare in modo che l'autostart di Openbox avvii nm-applet correttamente, potrebbe essere necessario cancellare il file /etc/xdg/autostart/nm-applet.desktop
(potrebbe essere necessario cancellarlo dopo ogni aggiornamento di network-manager-applet)
Poi in autostart
, avviare nm-applet
con questa riga:
(sleep 3 && /usr/bin/nm-applet --sm-disable) &
Se si riscontrano errori assicurarsi di aver avviato correttamente la sessione di D-Bus.
Altri desktop e Window Manager
Si consiglia di utilizzare l'applet di GNOME. Assicurarsi inoltre che il pacchetto gnome-icon-theme sia installato per essere in grado di visualizzare l'applet .
Per far si che la password sia memorizzata sarà necessario installare anche GNOME Keyring.
Per utilizzare nm-applet
senza un vassoi di sistema, si può avvalersi di trayer o stalonetray
. Si può ad esempio aggiungere uno script come questo al proprio percorso:
nmgui
#!/bin/sh nm-applet > /dev/null 2>/dev/null & stalonetray > /dev/null 2>/dev/null killall nm-applet
La chiusura della finestra del vassoio, comporterà anche la chiusura di nm-applet
, in modo che non verrà sprecata memoria inutilmente una volta terminato con le impostazioni di rete.
Da riga di comando
Il pacchetto networkmanager, dalla versione 0.8.1 contiene nmcli
Configurazione
NetworkManager richiede alcuni passaggi aggiuntivi per essere eseguito correttamente.
Verificare che il file /etc/hosts
sia a posto prima di continuare. In caso di aver provato la connessione prima di eseguire questo passo, NetworkManager potrebbe averlo alterato. Un esempio di hostname in /etc/hosts
:
#<ip-address> <hostname.domain.org> <hostname> 127.0.0.1 localhost.localdomain localhost dell-latitude
Disabilitare la configurazione di rete attuale
Si consiglia di disabilitare la presente configurazione di rete per essere in grado di testare adeguatamente NetworkManager.
- Stoppare i servizi di rete attivi. Ad esempio:
# systemctl stop net-auto-wireless
- Disabilitare servizi di rete diversi da nm. Ad esempio
# systemctl disable net-auto-wireless # systemctl disable wicd
Infine, disattivare il proprio NIC's (Network Interface Controllers, es. schede di rete). Per esempio, con il pacchetto iproute2:
# ip link set eth0 down # ip link set wlan0 down
Abilitare NetworkManager
È necessario abilitare networkmanager in modo assolutamente coerente con il proprio sistema di Init. Se si ha appena installato Arch Linux si ha sicuramente Systemd di default. Una volta che Networkmanager sarà avviato si potrà usufruire da subito dei servizi di rete tramite nmcli
o un altro applet grafico.
Abilitare NetworkManager in systemd
Per avviare immediatamente NetworkManager
usare il seguente comando:
# systemctl start NetworkManager
Per abilitare il relativo servizio di systemd usare questo comando:
# systemctl enable NetworkManager
NetworkManager-wait-online.service
. Questo, in linea generale, non dovrebbe essere quasi mai necessario.Abilitare NetworkManager con initscripts
È necessario rimuovere il demone predefinito network e aggiungere il demone networkmanager dopo il demone dbus:
DAEMONS=( ...dbus networkmanager... )
Assicurarsi che il pacchetto dbus sia installato, poiché richiesto da NetworkManager. Per avviare altri servizi (demoni) che richiedono una connessione di rete vedere la sezione successiva su come configurarli. Per avviare immediatamente Networkmanager
# rc.d start dbus
# rc.d start networkmanager
Impostare i permessi di PolicyKit
Vedere questo per maggiori informazioni. Nella configurazione di default, gli utenti non root non sono autorizzati ad aggiungere connessioni di rete. Procedere così:
Opzione 1. Avviare un authentication agent PolicyKit al login come /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
(necessita di polkit-gnome). Potrebbe essere richiesta una password ad ogni modifica alla connessione.
Opzione 2. Aggiungere il proprio utente al gruppo wheel
. In questo modo nessuna password verrà chiesta ma bisognerà garantire dei permessi particolari all'utente come ad esempio l' abilità di non immettere password usando sudo.
Opzione 3. Aggiungere il proprio utente al gruppo network
e creare il seguente file:
/etc/polkit-1/localauthority/50-local.d/org.freedesktop.NetworkManager.pkla
polkit.addRule(function(action, subject) { if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 && subject.isInGroup("network")) { return polkit.Result.YES; } });
Ora tutti gli utenti in tale gruppo (network
) potranno aggiungere o rimuovere reti senza password. Questo non funziona se si usa systemd senza una sessione di systemd-logind.
Servizi di rete con NetworkManager Dispatcher
Ci sono un paio di servizi di rete che non si desiderano in esecuzione fino a quando NetworkManager attiva un'interfaccia. Buoni esempi sono openntpd e i vari tipi di montaggi dei filesystem di rete (es. netfs). NetworkManager ha la capacità di avviare questi servizi quando ci si connette a una rete (interface up), e fermarli quando non li si sta utilizzando più (interface down).
Per utilizzare questa funzionalità, gli script possono essere aggiunti nella cartella /etc/NetworkManager/dispatcher.d
. Questi script avranno bisogno dei permessi di esecuzione dell'utente. Per ragioni di sicurezza, è buona prassi renderli di proprietà di root:root e scrivibili solo dal proprietario.
Gli script verranno eseguiti in ordine alfabetico al momento della connessione (con argomenti interface up), e in ordine alfabetico inverso al momento della disconnessione (interface down). Per garantire l'ordine in cui vengono richiamati, è pratica comune utilizzare dei caratteri numerici prima del nome dello script (es. 10_portmap
o 30_netfs
(che assicura che il portmapper sia attivato prima che vengano tentati i montaggi NFS).
Avviare openntpd
Lo script seguente è un esempio di come avviare openntpd quando un'interfaccia viene attivata. Salvare il file come /etc/NetworkManager/dispatcher.d/20_openntpd
e renderlo eseguibile.
#!/bin/sh INTERFACE=$1 # The interface which is brought up or down STATUS=$2 # The new state of the interface case "$STATUS" in 'up') # $INTERFACE is up systemctl openntpd start ;; 'down') # $INTERFACE is down # Check for active interface and down if no one active if [ ! `nm-tool|grep State|cut -f2 -d' '` == "connected" ]; then systemctl openntpd stop fi ;; esac
Montare cartelle remote con sshfs
Dato che lo script viene eseguito in un ambiente ristretto, è necessario esportare SSH_AUTH_SOCK
per connettere il proprio agente SSH. Esistono diversi modi per compiere adeguatamente questa operazione, per maggiori informazioni leggere questa discussione sul forum. L'esempio sottostante funziona con gnome-keyring, che, se non è già stato sbloccato, richiederà la relativa password. Nel caso in cui networkmanager si avvii in modo automatico all'avvio è possibile che gnome-keyring non sia ancora stato inizializzato. È quindi possibile che l'esportazione fallisca (ed entri in sleep). L' UUID
necessario si trova in /etc/NetworkManager/system-connections/
.
#!/bin/bash USER=<your sshfs user> if [ $CONNECTION_UUID == <connection UUID> ]; then case "$2" in up) #sleep 10 export SSH_AUTH_SOCK=$(find /tmp/keyring-*/ -type s -user $USER -gr oup users -name ssh) su $USER -c "/usr/bin/sshfs user@host:/remote/folder /local/folder/" ;; down) fusermount -u /local/folder ;; esac fi
Usare dispatcher per connettersi a rete VPN dopo aver stabilito una connessione
In questo esempio si desidera connettersi automaticamente a una connessione VPN definita in precedenza con NetworkManager. La prima cosa da fare è creare lo script del dispatcher che definisce che cosa fare dopo aver stabilito la connessione alla rete.
1) Creare lo script/etc/NetworkManager/dispatcher.d/vpn-up
VPN_NAME=<name of VPN connection defined in NetworkManager> ESSID=<wifi network ESSID (not connection name)> if [ "$2" = "up" -o "$2" = "vpn-down" ]; then # -o "$2" = "vpn-down" makes VPN reconnect after VPN connection interrupt if [ "$(iwgetid | grep ':"'$ESSID'"')" ]; then # check for ESSID match nmcli con up id "$VPN_NAME"; # parentheses needed for VPN connection names with spaces fi elif [ "$2" = "down" ]; then # disconnect VPN prior to disconnecting from the network if [ "$(iwgetid | grep ':"'$ESSID'"')" ]; then # check for ESSID match and that VPN is actually connected if [ $(nmcli con status id "$VPN_NAME" | grep -c activated) ]; then nmcli con down id "$VPN_NAME"; fi fi fi
Non dimenticare di renderlo eseguibile con chmod +x e di rendere possibile a tutti gli utenti accedere a connessioni vpn.
Provando a connettere networkmanager con questa configurazione si noterà che il risultato sarà: 'no valid vpn secrets'. Questo è causato dal modo in cui i "secret flag" vengono salvati da vpn. È quindi necessario seguire quest altra istruzione:
2) Editare il file di configuazione della connessione vpn per rendere NetworkManager in grado di memorizzare i parametri al suo interno invece che in un portachiavi che sarà inaccessibile a root:
Aprire quindi NetworkManager/system-connections/<nome della connessione>
e cambiare password-flags
e secret-flags
da 1
a 0
.
Usare /etc/rc.conf
per controllare networkmanager
Alcuni utenti Arch potrebbero avere la necessità di controllare completamente Networkmanager da /etc/rc.conf
. Questo metodo prevede proprio questo. I servizi avviati da NetworkManager sono controllati da rc.conf tramite l'uso dell'array NET_DAEMONS, un array sullo stesso stile dell'array DAEMONS.
1) Installare networkmanager-dispatcher-net_daemonsAUR da AUR.
2) Inserire dbus
e networkmanager
nella riga DAEMONS
del file /etc/rc.conf
.
3) Aggiungere la linea NET_DAEMONS
allo stesso file (/etc/rc.conf
) che includa tutti i servizi che non si vuole avviare prima della connessione come ad esempio: sshd, samba, ecc..
Un esempio di DAEMONS
e NET_DAEMONS
in rc.conf
è il seguente:
# DAEMONS # ------- # DAEMONS=(syslog-ng crond dbus networkmanager) NET_DAEMONS=(iptables nscd sshd samba avahi-daemon avahi-dnsconfd openntpd)
Impostazioni proxy
Network Manager non gestisce direttamente le impostazioni del proxy, ma con il DE GNOME, è possibile utilizzare proxydriver per le impostazioni proxy tramite le informazioni di Network Manager. Il pacchetto proxydriverAUR è disponibile su AUR.
Per fare in modo che proxydriver sia in grado di modificare le impostazioni del proxy, è necessario eseguire questo comando, dalle applicazioni d'avvio di GNOME (Sistema->Preferenze->Applicazioni d'avvio):
xhost +si:localuser:your_username
Consultare: Proxy settings
Testing
Gli applet NetworkManager sono progettati per essere caricati al momento del login in modo che nessuna ulteriore configurazione dovrebbe essere necessaria per la maggior parte degli utenti. Dopo aver disabilitato le impostazioni di rete precedenti e scollegata la rete, è possibile verificare se NetworkManager funziona. Per prima cosa avviare il demone networkmanager.
Alcuni applet includono un file .desktop
in modo da poter essere caricati attraverso il menu delle applicazioni. In caso contrario, bisognerà scoprire il comando da usare o reiniziare una nuova sessione per avviare l'applet. Una volta avviato, stabilirà le connessioni di rete dopo una prima fase di interrogazioni (polling), per poi auto-configurarsi con un server DHCP.
Per avviare l'applet di GNOME in Window Manager non compatibili con xdg come Awesome:
nm-applet --sm-disable &
Per gli IP statici è necessario configurare NetworkManager ad interpretarli. Solitamente basta un click destro del mouse sull'applet per selezionare "Modifica connessioni".
Risoluzione dei problemi
Alcune correzioni ai problemi più comuni.
Problemi con il traffico dati tramite il tunnel PPTP
Può succedere che il login alla connessione PPTP avvenga in maniera corretta, e si veda che l'interfaccia ppp0 ha un IP VPN esatto, ma non si riesca a "pingare" nessun IP remoto. La causa è la mancanza del supporto a MPPE (Microsoft Point-to-Point Encryption) nel pacchetto pppd di Arch.
Sarà sufficiente installare ppp-mppeAUR da AUR.
Prima provare con il pacchetto standard di Arch ppp, potrebbe funzionare a dovere.
Gestione di rete disabilitata
A volte, quando NM viene spento, il file del PID (stato) non viene rimosso e si ottiene il messaggio "Network management disabled". Se questo accade, sarà necessario rimuoverlo manualmente:
rm /var/lib/NetworkManager/NetworkManager.state
Se questo accade al riavvio, è possibile aggiungere un'azione a etc/rc.local
per farli rimuovere al momento del boot:
nmpid=/var/lib/NetworkManager/NetworkManager.state [ -f $nmpid ] && rm $nmpid
NetworkManager impedisce a DHCPCD l'uso di resolv.conf.head e resolv.conf.tail
A volte è problematico aggiungere elementi statici a resolv.conf
quando è costantemente riscritto da NM e dhcpcd
. È possibile utilizzare il pacchetto networkmanager-dhclient di AUR, ma una soluzione migliore è quella di utilizzare questo semplice script:
#!/bin/bash # # /etc/NetworkManager/dispatcher.d/99-resolv.conf-head_and_tail # Include /etc/resolv.conf.head and /etc/resolv.conf.tail to /etc/resolv.conf # # scripts in the /etc/NetworkManager/dispatcher.d/ directory # are called alphabetically and are passed two parameters: # $1 is the interface name, and $2 is “up” or “down” as the # case may be. resolvconf='/etc/resolv.conf'; cat "$resolvconf"{.head,,.tail} 2>/dev/null > "$resolvconf".tmp mv -f "$resolvconf".tmp "$resolvconf"
Alternativamente installare networkmanager-dispatch-resolvAUR da AUR.
Preservare le modifiche a resolv.conf
NetworkManager cercherà di scrivere le informazioni del DNS da DHCP in /etc/resolv.conf
, sovrascrivendone il contenuto esistente. È possibile evitare questo comportamento impostando il "bit immutabile" sul file (da root):
# chattr +i /etc/resolv.conf
Per modificare il file in futuro, rimuovere per prima cosa il bit immutabile:
# chattr -i /etc/resolv.conf
Problemi DHCP
In caso di problemi nell'ottenere un indirizzo IP tramite DHCP, provare ad aggiungere quanto segue al file /etc/dhclient.conf
:
interface "eth0" { send dhcp-client-identifier 01:aa:bb:cc:dd:ee:ff; }
Dove aa:bb:cc:dd:ee:ff
è l'indirizzo MAC della scheda di rete. L'indirizzo MAC può essere trovato usando il comando ip link show eth0
, fornito da iproute2.
Con qualche router, risulterà impossibile la connessione senza prima aver decommentato:
require dhcp_server_identifier
in /etc/dhcpcd.conf
(notare che questo file è un file distinto da dhcpd.conf
). Questo non dovrebbe causare problemi con server a DHCP multipli (configurazione non usuale); vedere questa pagina per maggiori informazioni.
Problemi con hostname
Aggiungere la seguente riga al file /etc/NetworkManager/NetworkManager.conf
:
dhcp=dhcpcd
e riavviare il servizio di NetworkManager.
Manca il route predefinito
Se con un sistema con KDE4, nessun percorso di default è stato creato al momento di stabilire le connessioni wireless con NetworkManager, in genere si può risolvere modificando le impostazioni di route della connessione wireless, per rimuovere la selezione di default "Use only for resources on this connection".
Modem 3G non rilevato
Se NetworkManager (da v0.7.999) non rileva il modem 3G, ma è comunque possibile collegarsi tramite wvdial, provare ad installare il pacchetto modemmanager e riavviare il demone NetworkManager con /etc/rc.d/networkmanager restart
. Ricollegare il modem o riavviare. Questa utilità fornisce il supporto per l'hardware non incluso di default nel database di NetworkManager.
Spegnimento WLAN su computer portatili
A volte NetworkManager non funziona quando si disattiva l'adattatore Wifi con l'interruttore del portatile e si prova ad abilitarlo nuovamente in seguito. Questo è spesso un problema con rfkill. Installarlo dai repositories ufficiali e dare il comando
$ watch -n1 rfkill list all
per verificare se il driver informa rfkill
circa lo stato della scheda wireless.
Se un identificatore rimane bloccato dopo aver premuto l'adattatore, si potrebbe provare a sbloccarlo manualmente con (dove X è il numero di identificazione fornito dall'output del comando sopra):
# rfkill event unblock X
Impostazioni IP statico ripristinate a DHCP
A causa di un bug non risolto, quando si cambia l'impostazione predefinita per le connessioni con IP statico, nm-applet
potrebbe non memorizzare correttamente la modifica della configurazione, e reimpostare il DHCP automatico. Segue una soluzione per questo problema.
Modificare la connessione predefinita (per esempio "Auto eth0") in nm-applet
. Cambiare il nome della connessione (ad esempio "la mia eth0"), deselezionare la casella "Disponibile a tutti gli utenti", modificare le impostazioni di IP statico desiderate, quindi fare clic su Applica. Ciò salverà una nuova connessione con il nome indicato.
Successivamente, si desidera effettuare la connessione di default e non connettersi automaticamente. Per fare ciò, eseguire
$ sudo nm-connection-editor # si deve usare sudo, non su
Nell'editor di connessione, modificare la connessione di default (ad esempio "Auto eth0") e deselezionare "Connetti automaticamente". Fare clic su Applica e chiudere l'editor di connessione.
È impossibile editare connessioni da utente
Vedere #Impostare i permessi di PolicyKit.
Cancellare una rete nascosta
Ovviamente una rete a ESSID
nascosto non compare nella GUI dell'applet. Per rimuoverla quindi usare il seguent comando:
# rm /etc/NetworkManager/system-connections/[SSID]
Tale comando funziona con ogni rete.
Suggerimenti
Condividere connessione internet su wifi
È possibile condividere una connessione (es.: 3G o wired) con pochi click con NetworkManager. Tuttavia le schede wifi supportate sono poche, con Atheros AR9xx e AR5xx non si dovrebbero avere problemi.
Ad-hoc
- Installare dnsmasq dai repositories ufficiali.
- Una configurazione personalizzata di
dnsmasq.conf
potrebbe interferire. - Clickare sull'applet di nm-applet -> Creare nuova connessione wireless.
- Seguire il wizard (se si usa WEP assicurarsi di usare o 5 o 13 caratteri come password, password diverse potrebbero fallire)
- Il setting rimane salvato per i prossimi utilizzi
Real AP
Non ancora supportato da NetworkManager. Tale features, che equivale all' "HotSpot" dei telefoni android è in sviluppo.
Vedere http://fedoraproject.org/wiki/Features/RealHotspot per ulteriori informazioni.
Verificare l'attivazione della rete all'interno di un processo cron o script
Alcune esecuzioni di cron richiedono la rete per poter funzionare. Si potrebbe evitare l'esecuzione di questi, fino a quando la rete non è nuovamente disponibile. A tale scopo, aggiungere un if di prova per le networking query richieste da NetworkManager, che controllano lo stato della rete. Il test qui illustrato funziona con le interfacce attive, e fallisce se non lo sono. Questo può essere utile per i computer portatili che possono essere cablati, wireless, o semplicemente fuori dalla rete.
if [ `nm-tool|grep State|cut -f2 -d' '` == "connected" ]; then #Whatever you want to do if the network is online else #Whatever you want to do if the network is offline - note, this and the else above are optional fi
Molto utile per uno script cron.hourly che esegue fpupdate per l'aggiornamento dello scanner antivirus F-Prot, per esempio. Un'altra possibilità, con delle piccole modifiche, è quello di distinguere tra le reti utilizzando varie parti degli output di nm-tool; per esempio, in quanto la rete wireless attiva è indicata con un asterisco, è possibile, con l'utilizzo di "grep", trovare il nome della rete orientando la ricerca "grep" all'asterisco.
Sblocco automatico del portachiavi dopo il login
Gnome
- Fare clic destro sull'icona di NM nel pannello e selezionare "Modifica connessioni" per aprire la scheda Wireless
- Selezionare la connessione che si desidera e fare clic sul pulsante Modifica
- Seleziona le caselle "connessione automatica" e "disponibili a tutti gli utenti"
Disconnettersi ed accedere nuovamente alla sessione.
*In /etc/pam.d/gdm
(o il demone corrispondente in /etc/pam.d), aggiungere queste righe alla fine dei blocchi "auth" e "session" in caso non esistano già:
auth optional pam_gnome_keyring.so session optional pam_gnome_keyring.so auto_start
- In
/etc/pam.d/passwd
, utilizzare questa riga per il blocco della "password":
password optional pam_gnome_keyring.so
- Al seguente accesso, dovrebbe venir richiesto se si desidera che la password venga sbloccata automaticamente al login.
KDE
- Mettere uno script come il seguente in
~/.kde4/Autostart
:
$!/bin/sh echo PASSWORD | /usr/bin/pam-keyring-tool --unlock --keyring=default -s
- Script simili dovrebbero funzionare anche con openbox, LXDE, ecc.
SLiM login manager
- Aggiungere queste righe in
/etc/pam.d/slim
, alla fine dei blocchi "auth" e "session" in caso non siano specificate ancora:
auth optional pam_gnome_keyring.so session optional pam_gnome_keyring.so auto_start
- In
/etc/pam.d/passwd
, utilizzare questa riga per il blocco 'password':
password optional pam_gnome_keyring.so
- In
~/.xinitrc
, aggiungere queste righe nella parte iniziale, prima di lanciare il window manager ed altre applicazioni:
## test for an existing bus daemon, just to be safe if test -z "$DBUS_SESSION_BUS_ADDRESS" ; then ## if not found, launch a new one eval `dbus-launch --sh-syntax --exit-with-session` echo "D-Bus per-session daemon address is: $DBUS_SESSION_BUS_ADDRESS" fi
- Al seguente login, verrà richiesto se si desidera che la password venga sbloccata automaticamente al login.
Ignorare dispositivi specifici
A volte potrebbe tornare utile che network manager ignori alcuni dispositivi e non provi ad ottenere un indirizzo IP.
- 1. Ignorare device dall'indirizzo MAC: usare il seguente modo in {{
/etc/NetworkManager/NetworkManager.conf
:
[keyfile] unmanaged-devices=mac:00:22:68:1c:59:b1;mac:00:1E:65:30:D1:C4
- Dopo di ciò riavviare NetworkManager e verificarne il funzionamento.
- 2. In alternativa si può usare Hal.
- Prima di tutto bisogna trovare l'UDI di Hal (es. con
lshal
):
- Prima di tutto bisogna trovare l'UDI di Hal (es. con
... info.product = 'Networking Interface' (string) info.subsystem = 'net' (string) info.udi = '/org/freedesktop/Hal/devices/net_00_1f_11_01_06_55' (string) linux.hotplug_type = 2 (0x2) (int) linux.subsystem = 'net' (string) ...
- Aggiungere l'UDI a
/etc/NetworkManager/nm-system-settings.conf
:
- Aggiungere l'UDI a
[keyfile] unmanaged-devices=/org/freedesktop/Hal/devices/net_00_1f_11_01_06_55
- Possono venire specificati dispositivi multipli, delimitati da punti e virgola:
[keyfile] unmanaged-devices=/org/freedesktop/Hal/devices/net_00_1f_11_01_06_55;/org/freedesktop/Hal/devices/net_00_2c_6d_e2_08_af
Non è necessario riavviare NetworkManager perchè le modifiche abbiano effetto.
- 3. Ignorare un tipo di dispositivo in fase di boot usando questo script (cambiare
NetworkManager.conf
comnm-system-settings.conf
per versioni di Networkmanager precedenti alla 0.8.1):
- 3. Ignorare un tipo di dispositivo in fase di boot usando questo script (cambiare
#!/bin/sh # author: tim noise <darknoise@drkns.net> COUNT=0 TARGET_FILE="/etc/NetworkManager/nm-system-settings.conf" for i in `lshal | grep -A6 'Networking Interface' | awk -F "'" '/info.udi = / {print $2}'`; do if [ $COUNT = 0 ]; then COUNT=$COUNT+1; echo "unmanaged-devices=$i" >> $TARGET_FILE else echo -n ";$i" >> $TARGET_FILE fi done printf "\n" >> $TARGET_FILE
- Tale script può essere adattato per ignorare dei Device wireless, usato su filesysten non persistenti, ecc...
Connessioni più veloci
Collegarsi più velocemente disabilitando IPv6
Se non c'è il supporto IPv6 sulla rete locale, la connessione a una rete può richiedere più tempo del normale, mentre Network Manager cerca di stabilire una connessione IPv6 e magari, alla fine, andare in time out. La soluzione è quella di disabilitare IPv6 all'interno di Network Manager. Questo deve essere fatto una sola volta per ogni rete a cui ci si connette.
- Fare clic destro sull'icona di stato della rete.
- Cliccare su "Modifica connessioni".
- Andare su "Wired" o "Wireless", a seconda dei casi.
- Selezionare il nome della rete.
- Cliccare su "Modifica".
- Andare alla sezione "Impostazioni IPv6".
- Nel menu a discesa "Metodo", scegliere "Ignora".
- Cliccare su "Salva".
Speed up DHCP by disabling ARP probing in dhcpcd
dhcpcd
contiene un'implementazione di una raccomandazione agli standard DHCP (RFC2131 sezione 2.2) per assicurarsi via ARP che l'IP assegnato non sia già in uso. Potrebbe sembrare inutile in una rete domestica, ma si possono risparmiare fino a 5 secondi sul tempo di connessione aggiungendo a /etc/dhcpcd.conf
:
noarp
Questo equivale a lanciare dhcpd con il flag --noarp, questo disabilita il sondaggio ARP velocizzando la connessione con DHCP.
Usare Servers OpenDNS
Creare il file /etc/resolv.conf.opendns
con i nameservers:
nameserver 208.67.222.222 nameserver 208.67.220.220
Per sostituire i server DHCP con gli OpenDNS:
/etc/NetworkManager/dispatcher.d/dns-servers-opendns
#!/bin/bash # Use OpenDNS servers over DHCP discovered servers cp -f /etc/resolv.conf.opendns /etc/resolv.conf
Rendere eseguibile lo script:
# chmod +x /etc/NetworkManager/dispatcher.d/dns-servers-opendns