Sonntag, 6. November 2016

Update: wlansrestart.service für problematischen Wlan Adapter RTL8191SU

Hier ein kleines Update zu meinem Systemd-Service, der den Netzwerkmanager nach dem Hochfahren von Linux automatisch neu starten soll, damit der RTL8191SU Wlanstick erkannt und gestartet wird.

Zu meinem bisherigen Problem, dass mein Service nicht mehr nach dem PC Start ausgeführt wurde, konnte ich nun eine Lösung finden. Ich hoffe das bleibt auch eine Zeit so erhalten. Denn immer nach dem Starten von Mint musste ich bisher einmal den Netzwerkmanager neu starten, damit ich über Wlan ins Internet komme. Die Idee mit dem Script bzw. Service kam mir schon vor einiger Zeit und es funktionierte auch ein paar Wochen. Aber irgendwann startete mein Service nicht mehr wie ich es gern wollte. Hier nun meine überarbeitete wlanrestart.service Datei, um endlich wieder automatisiert ins große WWW zu gelangen. Die Vorgehensweise habe ich aus meinem bisherigen Beitrag genommen und kann hier nachgelesen werden. Hat man den Service schon damals mit den alten Einstellungen erzeugt, kann man diesen gleich mit dem Befehl zum Editieren entsprechend anpassen. (siehe unten)

Zuerst einmal braucht man einen neuen "Service" für systemd. Man öffnet dazu ein Terminal und gibt den folgenden Befehl ein:

sudo pico /etc/systemd/system/wlanrestart.service
Damit wird eine neue Datei mit dem Namen wlanrestart.service gleich im richtigen Verzeichnis angelegt. In diese Datei müssen nun die folgenden Zeilen eingetragen werden:
[Unit]
Description=Wlan Restart
After=network.target

[Service]
Type=forking
ExecStart=/bin/systemctl restart network-manager.service
Restart=always
RestartSec=7
StartLimitInterval=20
StartLimitBurst=2

[Install]
WantedBy=default.target
Jetzt schließt man über die Tastenkombination STRG + X, bestätigt mit der Taste J die Änderungen und mit Taste ENTER bzw. RETURN bestätigt man noch den Pfad und Dateinamen.

Der Dienst ist angelegt. Nun muß man ihn noch mit folgendem Befehl bekannt machen:

sudo systemctl enable wlanrestart.service
Tauscht man enable durch disable kann man den Dienst wieder entfernen.
Starten kann man ihn auch sofort per:
sudo systemctl start wlanrestart.service
Nach Neustert des Rechners wird der Dienst automatisch von systemd gestartet. Ist man nicht zufrieden mit dem Inhalt bzw. möchte man den Dienst anpassen erfolgt dies über den Befehl:
sudo systemctl edit --full wlanrestart.service
Bei einem bereits angelegten wlanrestart.service kann man diesen nun mit den neuen Einträgen von oben ergänzen. Danach ist es wichtig, den Dienst zu reaktivieren bzw. neu zu aktivieren. Dies geschieht mit dem folgenden Kommando:
sudo systemctl reenable wlanrestart.service
Neu, oder besser gesagt anders, ist einmal der Type als forking und das wahrscheinlich ausschlaggebende WantedBy default.target. Ich kann es leider nicht genau erklären. Wer mehr zu den verwendeten Zeilen wissen will, der kann gern die Suchmaschine seiner Wahl benutzen. Bei mir läuft der Dienst und ich hoffe es bleibt auch für längere Zeit so. Sollten wieder Probleme auftreten, dann habe ich noch meinen manuellen Starter als Icon auf dem Desktop. Ggf. werde ich den Wlan-Stick doch noch durch "linuxfreundlichere Hardware" austauschen.

Keine Kommentare:

Kommentar veröffentlichen

Vielen Dank für Ihren Kommentar. Die Veröffentlichung erfolgt umgehend nach meiner Prüfung. Ich bitte um etwas Geduld. MfG Mintnix