Wicd: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Wechseln zu: Navigation, Suche
(Standard Installation)
(Andere Artikel: Umbenennung in: Siehe auch)
(38 dazwischenliegende Versionen von 8 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
== Einleitung ==
+
Wicd ist ein Netzwerkverbindungsmanager, mit dem man sowohl kabelgebundene als auch kabellose Verbindungen verwalten kann. Es stellt eine Alternative zum [[Networkmanager]] dar. Wicd wurde in Python und GTK+ geschrieben und benötigt weniger Abhängigkeiten als andere Manager.
[http://www.wicd.net/ wicd] ist ein Netzwerkverbindungsmanager, mit dem man sowohl kabelgebundene als auch kabellose Verbindungen verwalten kann. Es stellt eine Alternative zum [http://wiki.archlinux.de/?title=Networkmanager Networkmanager] dar. Wicd wurde in Python und GTK+ geschrieben und benötigt weniger Abhängigkeiten als andere Manager.
+
 
+
  
 
== Installation ==
 
== Installation ==
 +
Wicd ist in den Paketquellen verfügbar, und kann über [[Pacman]] installiert werden.
  
=== Standard Installation ===
+
pacman -S wicd
  
<pre>pacman -S wicd</pre>
+
Wenn man bessere Icons verwenden möchte, muss man diese ebenfalls noch installieren.
Dadurch wird Wicd mit den benötigten Abhängigkeiten installiert, inklusive dbus, python und gtk2.
+
  
 +
pacman -S hicolor-icon-theme
  
Wahrscheinlich möchte man auch DHCP, wpa-supplicant, wireless_tools und GUI-Icons verwenden.
+
Zudem besteht die Möglichkeit wicd [http://aur.archlinux.org/packages.php?ID=22923/ aus dem AUR als bzr-Version] zu installieren.
<pre>pacman -S dhclient wpa_supplicant wireless_tools hicolor-icon-theme</pre>
+
 
+
=== SVN Version ===
+
Das [http://aur.archlinux.org/packages.php?ID=13622/ wicd-svn] Paket ist im [[AUR]] erhältlich, und sollte die aktuellste SVN-Version bauen.
+
  
 
== Setup ==
 
== Setup ==
Wicd stellt einen daemon bereit, welcher gestartet werden muss bevor man es benutzen kann. Wenn man mehrere Netzwerkverbindungsmanager laufen hat wird dies Probleme verursachen, deshalb ist es wichtig '''alle anderen daemons dieser Art abzuschalten'''.
+
Wicd stellt einen [[Daemon]] bereit, der gestartet werden muss bevor man mittels wicd das Netzwerk verwalten kann. Wenn man mehrere Netzwerkverbindungsmanager verwendet, wird dies Probleme verursachen, deshalb ist es wichtig alle anderen Daemons dieser Art abzuschalten.
  
Erstens: Alle laufenden Netzwerk daemons abschalten:
+
/etc/rc.d/network stop
<pre>
+
/etc/rc.d/dhcpd stop
# /etc/rc.d/network stop
+
/etc/rc.d/networkmanager stop
# /etc/rc.d/dhcdbd stop
+
/etc/rc.d/net-profiles stop
# /etc/rc.d/networkmanager stop</pre>
+
Nun die /etc/rc.conf bearbeiten, z.b mit nano oder vi
+
<pre>nano /etc/rc.conf</pre>
+
Hier alle(!) Interfaces auschalten welche von Wicd verwaltet werden sollen.Beispiel:
+
<pre>INTERFACES=(!eth0 !wlan0)</pre>
+
Alle(!) existierenden daemons zur Netzwerkverwaltung ausschalten, inklusive '''network''', '''dhcdbd''' und '''networkmanager'''.
+
Jetzt noch dbus (falls nicht schon vorhanden) und wicd im DAEMONS array eintragen. Das DAEMONS array sollte nun in etwa so aussehen:
+
<pre>DAEMONS=(syslog-ng dbus !network !dhcdbd !networkmanager wicd ...)</pre>
+
''Beachte:'' Wenn man '''hal''' benutzt sollte man '''dbus''' durch '''hal''' ersetzen, da der hal daemon dbus automatisch mit startet.
+
Speichern und schließen.
+
Den Benutzer der Gruppe network hinzufügen:
+
<pre># gpasswd -a USERNAME network</pre>
+
Als letztes noch den '''dbus''' und den '''wicd''' daemon starten:
+
<pre>
+
# /etc/rc.d/dbus start
+
# /etc/rc.d/wicd start
+
</pre>
+
  
 +
bzw. kurz
 +
rc.d stop network dhcpd networkmanager net-profiles
  
== Wicd starten ==
+
In der [[rc.conf]] müssen im Netzwerk-Abschnitt alle Interfaces deaktiviert werden, die von wicd verwaltet werden sollen.
Um Wicd zu starten:
+
<pre>$ wicd-client</pre>
+
Man kann '''wicd-client''' noch ins Startup seines DE/WM hinzufügen um die Applikation beim login automatisch zu starten.
+
  
 +
INTERFACES=(!eth0 !wlan0)
  
== Troubleshooting ==
+
In diesem Fall sollen eth0 und wlan0 von wicd verwaltet werden, und werden daher deaktiviert.
=== D-BUS ===
+
Wenn man ''dbus'' schon vorher laufen hatte und sich wicd aus irgendeinem Grund darüber beschwert, beides mal neu starten.
+
<pre>
+
# /etc/rc.d/dbus stop # wir stoppen dbus manuell anstelle von 'restart' um mögliche Fehler auszuschließen
+
# /etc/rc.d/wicd stop
+
# /etc/rc.d/dbus start
+
# /etc/rc.d/wicd start
+
</pre>
+
  
=== GUI ===
+
Es müssen in dieser Datei auch alle Netzwerverwaltungs-Daemons aus dem DAEMONS-Array deaktiviert werden. Dies schließt ''network'', ''dhcdbd'' und ''networkmanager'' ein. Eingetragen werden müssen hier jetzt noch dbus (falls nicht schon vorhanden) und wicd. Das DAEMONS array sollte nun in etwa so aussehen:
Wenn die GUI nach klicken auf das Tray nicht erscheint, sollte man sicher stellen das man nur einmal klickt. Momentan funktioniert noch kein double-click; es würde lediglich Öffnen und Schließen simulieren und somit nichts tun
+
  
 +
DAEMONS=(syslog-ng dbus !network !dhcdbd !networkmanager !net-profiles wicd …)
  
== Related Links ==
+
Wenn man [[HAL]] benutzt, sollte man ''dbus'' durch ''hal'' ersetzen, da der HAL-Daemon DBUS automatisch mitstartet.
[http://wiki.archlinux.org/index.php/Wicd Original-Artikel im englischsprachigen Wiki]
+
 
 +
Der Benutzer, der wicd verwenden soll, muss der Gruppe ''network'' hinzugefügt werden.
 +
 
 +
gpasswd -a USERNAME network
 +
 
 +
Danach werden der HAL '''oder''' der DBUS-Daemon und WICD gestartet:
 +
 
 +
/etc/rc.d/hal start
 +
/etc/rc.d/dbus start
 +
/etc/rc.d/wicd start
 +
 
 +
Beziehungsweise in der Kurzform
 +
 
 +
rc.d start hal wicd
 +
 
 +
oder
 +
 
 +
rc.d start dbus wicd
 +
 
 +
== wicd starten ==
 +
Wicd ist ein Client-Server-System. Mittels des wicd-Clients greift man auf den wicd-Server in Form des wicd-Daemons zu.
 +
Allerdings ist der Betrieb des wicd-Clients keine Voraussetzung für die Funktionsfähigkeit des wicd-Daemons.
 +
 
 +
Für den Wicd-Clienten gibt es eine GTK und eine auf Ncurses basierende GUI, die für die Nutzung auf der Konsole geeignet ist. Die entsprechenden Befehle zum starten der (gtk) GUI sollten in die Autostart-Dateien der verwendeten Desktopumgebung / Fenstermanger oder in die "~/.xinitrc" eingetragen werden.
 +
 
 +
===GTK===
 +
Ab version 1.7 ist "wicd-gtk" die bevorzugte Methode die GTK-GUI zu starten. Wicd-gtk wird niemals versuchen "wicd-curses" zu starten.
 +
Das bisher verwendete "wicd-client" versucht hingegen wicd-curses zu starten, falls keine X-Session vorhanden ist.
 +
wicd-gtk
 +
 
 +
Wicd-gtk kann auch ohne Tray-Icon gestartet werden.
 +
 
 +
wicd-gtk -n
 +
 
 +
===Ncurses===
 +
Um die ncurses-Version von wicd zu nutzen kann der Befehl
 +
 
 +
wicd-curses
 +
 
 +
ausgeführt werden.
 +
 
 +
== Scripte ==
 +
Wicd kann automatisch (Bash)-Scripte ausführen:
 +
#bevor eine Verbindung aufgebaut wird (preconnet)
 +
#nachdem eine Verbindung aufgebaut wurde (postconnect)
 +
#bevor eine Verbindung getrennt wird (predisconnect)
 +
#nachdem eine Verbindung getrennt wurde (postdisconnect)
 +
 
 +
Es gibt die Möglichkeit Scripte auf alle Verbindungen anzuwenden und/oder nur auf bestimmte.
 +
 
 +
 
 +
'''Alle Verbindungen'''<br>
 +
Scripte die immer ausgeführt werden sollen, egal mit welchem Netzwerk Wicd eine Verbindung aufbaut/trennt, werden in folgenden Verzeichnissen abgespeichert.
 +
/etc/wicd/scripts/predisconnect
 +
/etc/wicd/scripts/postdisconnect
 +
/etc/wicd/scripts/preconnect
 +
/etc/wicd/scripts/postconnect
 +
 
 +
 
 +
'''Nur bestimmte Verbindungen'''<br>
 +
Scripte die einem bestimmten Netzwerk zugeordnet werden sollen, müssen in die entsprechenden Konfigurations-Dateien eingetragen werden.
 +
Die Datei für die kabelgebunden Netzwerkprofile ist <code>/etc/wicd/wired-settings.conf</code>, die für die Funknetzwerke
 +
<code>/etc/wicd/wireless-settings.conf</code>. Die entsprechenden Einträge lauten:
 +
beforescript = /pfad/zum/script
 +
afterscript = /pfad/zum/script
 +
predisconnectscript = /pfad/zum/script
 +
poastdisconnectscript = /pfad/zum/script
 +
'''WICHTIG''' - Für die Scripte sollte nur "root" Schreibrechte haben, und sie sollten sich in einem Verzeichnis befinden, für das nur "root" Schreibrechte besitzt.
 +
 
 +
In der GTK-Oberfläche (wicd-gtk) können die Scripte den Netzwerken über ''Eigenschaften --> Scripte'' zugeordnet werden.
 +
Dafür wird allerdings [[sudo]] inklusive einer grafischen Oberfläche benötigt. Zum Beispiel ''gksu'' oder ''kdesu''.
 +
Und die Datei <code>/usr/share/wicd/gtk/configscript.py</code> muss in die /etc/sudoers eingetragen werden.
 +
 
 +
== Eduroam ==
 +
 
 +
Um [https://de.wikipedia.org/wiki/Eduroam Eduroam] nutzen zu können, kann man das Packet [https://aur.archlinux.org/packages.php?ID=35047 aur/wicd-eduroam] installieren, das u.a. ein eduroam-template beinhaltet.
 +
 
 +
Sollte dies nicht funktionieren, so können einzelne Konfigurationspunkte angepasst werden. Eine Beispielkonfiguration könnte lauten:
 +
 
 +
#
 +
# eduroam-template under /etc/wicd/encryption/templates/eduroam
 +
# has to be set activated, see also: aur/wicd-eduroam
 +
#
 +
# tested for University of Rostock, Germany
 +
name = eduroam
 +
author = hølgerssøn, based on the file of Ander Martinez
 +
version = 2.1
 +
require identity *Identity password *Password
 +
-----
 +
ctrl_interface=/var/run/wpa_supplicant
 +
network={
 +
        ssid="$_ESSID"
 +
        scan_ssid="$_SCAN"
 +
        key_mgmt=WPA-EAP
 +
        eap=PEAP
 +
        pairwise=CCMP TKIP
 +
        group=CCMP TKIP
 +
        identity="$_IDENTITY"
 +
        password="$_PASSWORD"
 +
}
 +
 
 +
== Siehe auch ==
 +
* [[(W)LAN_und_Arch_Linux#wpa_supplicant|wpa_supplicant]]
 +
 
 +
== Weblinks ==
 +
* [http://wicd.sourceforge.net/ Homepage von wicd] {{sprache|en}}
  
 
[[Kategorie:GTK]]
 
[[Kategorie:GTK]]
 
[[Kategorie:Netzwerk]]
 
[[Kategorie:Netzwerk]]
 +
 +
[[en:wicd]]

Version vom 20. November 2011, 15:48 Uhr

Wicd ist ein Netzwerkverbindungsmanager, mit dem man sowohl kabelgebundene als auch kabellose Verbindungen verwalten kann. Es stellt eine Alternative zum Networkmanager dar. Wicd wurde in Python und GTK+ geschrieben und benötigt weniger Abhängigkeiten als andere Manager.

Installation

Wicd ist in den Paketquellen verfügbar, und kann über Pacman installiert werden.

pacman -S wicd

Wenn man bessere Icons verwenden möchte, muss man diese ebenfalls noch installieren.

pacman -S hicolor-icon-theme

Zudem besteht die Möglichkeit wicd aus dem AUR als bzr-Version zu installieren.

Setup

Wicd stellt einen Daemon bereit, der gestartet werden muss bevor man mittels wicd das Netzwerk verwalten kann. Wenn man mehrere Netzwerkverbindungsmanager verwendet, wird dies Probleme verursachen, deshalb ist es wichtig alle anderen Daemons dieser Art abzuschalten.

/etc/rc.d/network stop
/etc/rc.d/dhcpd stop
/etc/rc.d/networkmanager stop
/etc/rc.d/net-profiles stop

bzw. kurz

rc.d stop network dhcpd networkmanager net-profiles

In der rc.conf müssen im Netzwerk-Abschnitt alle Interfaces deaktiviert werden, die von wicd verwaltet werden sollen.

INTERFACES=(!eth0 !wlan0)

In diesem Fall sollen eth0 und wlan0 von wicd verwaltet werden, und werden daher deaktiviert.

Es müssen in dieser Datei auch alle Netzwerverwaltungs-Daemons aus dem DAEMONS-Array deaktiviert werden. Dies schließt network, dhcdbd und networkmanager ein. Eingetragen werden müssen hier jetzt noch dbus (falls nicht schon vorhanden) und wicd. Das DAEMONS array sollte nun in etwa so aussehen:

DAEMONS=(syslog-ng dbus !network !dhcdbd !networkmanager !net-profiles wicd …)

Wenn man HAL benutzt, sollte man dbus durch hal ersetzen, da der HAL-Daemon DBUS automatisch mitstartet.

Der Benutzer, der wicd verwenden soll, muss der Gruppe network hinzugefügt werden.

gpasswd -a USERNAME network

Danach werden der HAL oder der DBUS-Daemon und WICD gestartet:

/etc/rc.d/hal start
/etc/rc.d/dbus start
/etc/rc.d/wicd start

Beziehungsweise in der Kurzform

rc.d start hal wicd

oder

rc.d start dbus wicd

wicd starten

Wicd ist ein Client-Server-System. Mittels des wicd-Clients greift man auf den wicd-Server in Form des wicd-Daemons zu. Allerdings ist der Betrieb des wicd-Clients keine Voraussetzung für die Funktionsfähigkeit des wicd-Daemons.

Für den Wicd-Clienten gibt es eine GTK und eine auf Ncurses basierende GUI, die für die Nutzung auf der Konsole geeignet ist. Die entsprechenden Befehle zum starten der (gtk) GUI sollten in die Autostart-Dateien der verwendeten Desktopumgebung / Fenstermanger oder in die "~/.xinitrc" eingetragen werden.

GTK

Ab version 1.7 ist "wicd-gtk" die bevorzugte Methode die GTK-GUI zu starten. Wicd-gtk wird niemals versuchen "wicd-curses" zu starten. Das bisher verwendete "wicd-client" versucht hingegen wicd-curses zu starten, falls keine X-Session vorhanden ist.

wicd-gtk

Wicd-gtk kann auch ohne Tray-Icon gestartet werden.

wicd-gtk -n

Ncurses

Um die ncurses-Version von wicd zu nutzen kann der Befehl

wicd-curses

ausgeführt werden.

Scripte

Wicd kann automatisch (Bash)-Scripte ausführen:

  1. bevor eine Verbindung aufgebaut wird (preconnet)
  2. nachdem eine Verbindung aufgebaut wurde (postconnect)
  3. bevor eine Verbindung getrennt wird (predisconnect)
  4. nachdem eine Verbindung getrennt wurde (postdisconnect)

Es gibt die Möglichkeit Scripte auf alle Verbindungen anzuwenden und/oder nur auf bestimmte.


Alle Verbindungen
Scripte die immer ausgeführt werden sollen, egal mit welchem Netzwerk Wicd eine Verbindung aufbaut/trennt, werden in folgenden Verzeichnissen abgespeichert.

/etc/wicd/scripts/predisconnect
/etc/wicd/scripts/postdisconnect
/etc/wicd/scripts/preconnect
/etc/wicd/scripts/postconnect


Nur bestimmte Verbindungen
Scripte die einem bestimmten Netzwerk zugeordnet werden sollen, müssen in die entsprechenden Konfigurations-Dateien eingetragen werden. Die Datei für die kabelgebunden Netzwerkprofile ist /etc/wicd/wired-settings.conf, die für die Funknetzwerke /etc/wicd/wireless-settings.conf. Die entsprechenden Einträge lauten:

beforescript = /pfad/zum/script
afterscript = /pfad/zum/script
predisconnectscript = /pfad/zum/script
poastdisconnectscript = /pfad/zum/script

WICHTIG - Für die Scripte sollte nur "root" Schreibrechte haben, und sie sollten sich in einem Verzeichnis befinden, für das nur "root" Schreibrechte besitzt.

In der GTK-Oberfläche (wicd-gtk) können die Scripte den Netzwerken über Eigenschaften --> Scripte zugeordnet werden. Dafür wird allerdings sudo inklusive einer grafischen Oberfläche benötigt. Zum Beispiel gksu oder kdesu. Und die Datei /usr/share/wicd/gtk/configscript.py muss in die /etc/sudoers eingetragen werden.

Eduroam

Um Eduroam nutzen zu können, kann man das Packet aur/wicd-eduroam installieren, das u.a. ein eduroam-template beinhaltet.

Sollte dies nicht funktionieren, so können einzelne Konfigurationspunkte angepasst werden. Eine Beispielkonfiguration könnte lauten:

#
# eduroam-template under /etc/wicd/encryption/templates/eduroam
# has to be set activated, see also: aur/wicd-eduroam
#
# tested for University of Rostock, Germany
name = eduroam
author = hølgerssøn, based on the file of Ander Martinez
version = 2.1
require identity *Identity password *Password
-----
ctrl_interface=/var/run/wpa_supplicant
network={
        ssid="$_ESSID"
        scan_ssid="$_SCAN"
        key_mgmt=WPA-EAP
        eap=PEAP
        pairwise=CCMP TKIP
        group=CCMP TKIP
        identity="$_IDENTITY"
        password="$_PASSWORD"
}

Siehe auch

Weblinks