Networkmanager
ArchLinux unterstützt dank Tor Krill und William Rea nun den "Networkmanager". Die Unterstützung basiert vollständig auf ihren Paketen.
Installation
Gnome
Das Paket des Networkmanagers für Gnome wurde von gnome-network-manager zu network-manager-applet umbenannt.
pacman -S network-manager-applet
Allerdings kann man den Networkmanager nach wie vor mit dem alten Kommando downloaden:
pacman -S gnome-network-manager
KDE
pacman -S kdeplasma-applets-networkmanagement
Xfce
Xfce benutzt das selbe Paket wie GNOME. Zusätzlich wird noch das xfapplet Plugin benötigt, welches es ermöglicht GNOME Applets im xfce4-panel anzuzeigen.
pacman -S network-manager-applet xfce4-xfapplet-plugin
Falls dies nicht funktioniert, kann man das Applet auch wie bei Fluxbox und co. hinzufügen.
Eine Alternative zu dem network-manager-applet mit dem xfce4-xfapplet-plugin, der den gesamten gnome-desktop als Abhängigkeit benötigt wäre wicd zu empfehlen. Er bindet sich auch als Tray-Icon ein.
Fluxbox, Openbox und andere WM
Ihr braucht das hicolor-icon-theme um das nm-applet benutzen zu können:
pacman -S network-manager-applet hicolor-icon-theme
Um das Network Manager Applet automatisch zu sarten tragt Ihr "nm-applet --sm-disable" in die ~/.xinitrc ein.
Zum Beispiel so:
#!/bin/sh nm-applet --sm-disable & exec fluxbox
Die "--sm-disable Option" verhindert, dass mehrere Instanzen des nm-applets gestartet werden. Ihr benötigt diese Option nur falls nach dem Starten des Window-Managers mehrere Instanzen laufen sollten.
System für den Networkmanager einrichten
Nun muss noch der Daemon (networkmanager) in die /etc/rc.conf eingetragen werden. Außerdem ist es noch wichtig, den network-DAEMON zu deaktivieren . Das sieht dann zum Beispiel so aus:
DAEMONS=(syslog-ng !hotplug !pcmcia !network dbus netfs !crond acpid alsa fnfxd cpufreqd networkmanager)
Jetzt nur noch einen Neustart durchführen und fertig.
Dispatcher
Der Networkmanger-Dispatcher ist Bestandteil des Networkmanager-Paketes und muss nicht separat installiert werden. Mit Ihm ist es möglich automatisch Befehle auszuführen sobald eine Verbindung aufgebaut bzw. getrennt wurde. Das geschieht mit einfachen Shell-Scripten, die in /etc/NetworkManager/dispatcher.d/ ausführbar abgespeichert werden. Als Ausgangspunkt kann man dieses Script verwenden.
#!/bin/sh case "$2" in up) # wird abgearbeitet nachdem die Verbindung aufgebaut wurde ;; down) # wird abgearbeitet nachdem die Verbindung getrennt wurde ;; esac
DNS-Server festlegen
Der DNS-Server wird in der Datei /etc/resolv.conf festgelegt. Bei dynamischer Zuweisung der IP per DHCP wird automatisch auch ein DNS-Server ermittelt und in die resolv.conf eingetragen. Dabei werden bereits vorhandene Einträge überschrieben. Will man einen anderen DNS-Server benutzen, muss man das Überschreiben verhinden bzw.rückgängig machen. Die hier beschriebenen Methoden funktionieren bei Verwendung des Networkmanagers leider nicht.
Eine einfache Möglichkeit das Überschreiben zu verhindern ist das immutable flag der resolv.conf zu setzen.
chattr +i /etc/resolv.conf
So hat auch root keine Berechtigung die Datei zu verändern.
Eine weitere Möglichkeit besteht darin, per Dispatcher-Script den/die gewünschten DNS-Server nach dem Aufbau der Verbindung in die resolv.conf einzutragen und somit das Überschreiben rückgängig zu machen. Ein solches Script könnte z.B. so aussehen.
#!/bin/sh case "$2" in up) echo "nameserver <IP des DNS-Servers>" > /etc/resolv.conf ;; esac
Adhoc nachrüsten
Um mit dem Network Manager auch Adhoc-Netzwerke einrichten und betreten zu können, ist es notwendig, das Paket dnsmasq zu installieren. Ansonsten bekommt ihr in dem Systemprotokoll deamon.log folgende Fehlermeldung:
<WARN> start_sharing(): (wlan0/wlan0): failed to start dnsmasq: Could not find dnsmasq binary. ... <WARN> nm_device_activate_stage5_ip_config_commit(): Activation (wlan0) Stage 5 of 5 (IP Configure Commit) start sharing failed. ... <WARN> nm_device_wifi_set_mode(): error setting card wlan0 to mode 2: Device or resource busy