Linux System mit Arch Linux

Installation

Hier soll eine Sammlung von Programmen entstehen, die ich aktuell nicht mehr auf meinen Rechner missen möchte und eine bestimmte Grundausstattung besitzen. Dieser Artikel wird immer wieder aktualisiert, wenn neue wichtige Programme hinzukommen.

Grundinstallation

Als Linux-System wird hier Manjaro verwendet, was auf dem Arch-Linux aufbaut. Vorteil von Manjaro ist der graphische Installer gegenüber dem reinen Arch-Linux.

Und wieso wurde es ein Arch-Linux?

Zum einen sind die meisten vorhanden Packete schon aktueller als in den anderen Distributionen und zusätzlich gibt es noch yaourt, mit dem die aktuellsten Sourcen der meisten Packete direkt übersetzen lassen und die Packete im Anschluss installieren.

Grapische Oberfläche

SDDM – Login-Manager – https://wiki.archlinux.org/index.php/SDDM

PacketnameTypBezugsquelle
SDDMLogin-Managerhttps://wiki.archlinux.org/index.php/SDDM
OpenboxWindows Manager
SynapseProgrammstarter
RemminaRDP (mstsc)http://www.remmina.org/wp/
KRDCRDP (mstsc) KDEhttps://www.kde.org/applications/internet/krdc/

Audioausgabe (mit AirPlay)

Damit die Ausgabe des Linux-System über AirPlay-fähige Geräte gestreamt werden kann, hab ich folgende 2 Pakete benötigt:

  • pulseaudio-raop2: Streamen der Ausgabe an AirPlay Geräte.
  • pavucontrol: damit wird die Ausgabe des Audiostreams eingestellt (Umschalter für z.B. MPlayer auf AirPlay-Gerät)

Nach dem Installieren müssen folgende Befehle ausgeführt werden:

sudo systemctl start avahi-daemon #startet den Dienst
avahi-browse -t --all #Zeigt alle AirPlay Geräte im Netz an
sudo systemctl enable avahi-daemon #aktiviert den Dienst für Autostart

Weitere Informationen findet man auch hier: AirTunes.

 

Weitere Programme:

PacketnameTypBezugsquelle
Visual Studio CodeEditorMicrosoft
AtomEditoryaourt

Arch Linux Single User Mode

Um bei Arch Linux in den Single User Mode zu kommen ist fogendes notwendig:

  1. Im Grub den Eintrag des zu startenden Linux auswählen und die Taste [E] drücken
  2. Im angzeigten Skript die nachfolgende Stelle suchen:
    ... rw  quiet splash
  3. „quiet splash“ entfernen und „single“ einsetzen
  4. Nun mit [Strg]+[X] das starten des Linux initieren
  5. nach kurzer Wartezeit, wird das root-Passwort verlangt, dies bitte eingeben
  6. nun kann man die notwendigen Änderungen durchführen damit das System wieder richtig startet, z.B. einen lightdm deaktivieren und lxdm wieder aktivieren:
    systemctl disable lightdm
    systemctl enable lxdm
  7. Wenn alles fertig ist, kann durch „exit“ der Single User Mode verlassen werden, und der Startvorgang läuft weiter.

Git GUI unter Linux an GitLab Server mit PuTTY-Key

Nach der Umstellung auf LInux System, benötigte ich meinen vorhanden PuTTY-Schlüssel als OpenSSH Schlüssel im Linux System. Für die Wandlung gibt es unter linux puttygen, was entweder einzeln oder im Packet putty-tools installiert wird. Zum Wandeln wird folgender Befehl benutzt:

puttygen <keyfile> -O  private-openssh -o <output>

In <keyfile-PuTTY> wird der Putty-Schlüssel angegeben und bei <output> wird die Ausgabedatei angegeben, welche auch direkt die Datei „~/.ssh/id_rsa“ sein kann.

Um den Public-Key zu ermitteln, wird folgender Befehl benutzt:

ssh-keygen -f <source-private-key> -y > <output>

Hier wird bei <source-private-key> der OpenSSH-Private-Key benötigt, und bei Output der Ziel des Public-Keys definiert, z.B: „~/.ssh/id_rsa.pub“.

Damit dann meine gewählte Git-GUI, hab mich für GitEye entschieden, auch noch richtig funktionierte musste unter „Window -> Prfeferences -> General -> Nework Connections -> SSH2 -> Private keys: der id_rsa an den Anfang geschoben werden.

Linux Desktop Screenshots und Video-Aufzeichnung

Um unter Linux einen Screenshot vom Desktop oder nur eines Ausschnitts zu erzeugen, gibt es die Software Shutter. Nach dem Start dieser Software, kann damit genauso gearbeitet werden wie mit dem Snipping-Tool von Windows 8.

Zu Aufzeichnung eines Desktop-Videos, kann unter Gnome zum einem die Tastenkombination „Strg + Alt + Umschalt + R“ benutzt werden. Nach dem Starten erscheint oben rechts ein roter Punkt, der darstellen soll, dass die Aufnahme läuft. Das Video wird in den Benutzerverzeichnis im Ordner Videos abgelegt.

Des weiteren gibt es die Software SimpleScreenRecorder, welche eine Hülle an möglichen Einstellungen besitzt (die nicht angepasst werden müssen, aber können). Mit dieser können auch nur feste Ausschnitte bzw. der Maus folgende Ausschnitte aufzeichnet werden und nicht immer der ganze Desktop.

Mit Munin ein Windows-System überwachen

Wichtige Informationen zu beiden Wegen

Der Name des Windowsrechners muss vom Linux System immer auflösbar sein. Wichtig ist dies bei Einstellungen in der munin.conf, das dort immer der richtige Rechnername verwendet wird. Funktioniert die Namensauflösung nicht, oder nicht richtig, dann ist es sinnvoller die Namen mit Verknüpfung auf die IP Adresse in die „/etc/hosts“-Datei einzutragen.

Alle Werte, welche mit {}-Klammern umrahmt sind, sind entsprechend durch die passenden Informationen auszutauschen und die {}-Klammern zu entfernen. Bei anderen Werten handelt es sich um feste Werte die nur bei entsprechendem Fachwissen ausgetauscht werden sollten.

Überwachen mit SNMP

Arbeiten auf Seite des Master-Servers (Debian Squezzy)

In der Datei „/etc/munin/munin.conf“ muss der Name des Windowscomputers hinterlegt werden (MeineGruppe ist der Name einer frei definierbaren Gruppe [wird für Gruppenweite Einstellungsmöglichkeiten benötigt], MeinComputer ist der Rechnername von Windows. Beides ist entsprechend anzupassen):

[{MeineGruppe};{MeinComputer}]
address 127.0.0.1

Die Datei „/etc/munin/plugin-conf/munin-node“ muss noch um einen Abschnitt erweitert werden, damit der munin-node weiß von welcher Addresse er die Information beziehen soll (IP ist entsprechend anzupassen, MeinComputer muss genauso wie im Abschnitt drüber angepasst werden):

[snmp_{MeinComputer}*]
env.ip {x.x.x.x}
env.port 161
env.community public

Im Verzeichnis „/usr/share/munin/plugins/“ sind verschiedene Scripte für SNMP vorhanden, diese müssen nun noch in den „/etc/munin/plugins/“-Ordner gelinkt werden, mit der Namenskonvention snmp_MeinComputer_*. Damit dies nicht alles per Hand durchgeführt werden muss, existiert folgender Befehl (MeinComputer wieder entsprechend oben angegeben anpassen):

munin-node-configure -snmp {MeinComputer} --shell | sh -x

Dadurch werden Shell-Befehle ausgeben welche durch „| sh -x“ direkt ausgeführt werden und alle SymLinks erstellen, welche noch nicht existieren.

Dann noch mit folgenden Befehl, den munin-node neustarten lassen und schon wurde auf Master-Seite alles durchgeführt:

/etc/init.d/munin-node restart

Arbeiten auf Seiten des Client Computers (Windows)

Windows XP

Hier muss „nur“ ein SNMP-Dienst installiert werden. Dieser wird ab Windows XP von Microsoft direkt mitgeliefert und muss nur noch installiert werden. Die Installation findet man unter „Systemsteuerung“-> „Software“ -> „Windows-Komponenten hinzufügen/entfernen“ -> „Verwaltungs- und Überwachungsprogramme“ -> „SNMP (Simple Network Management Protocol)“ (Hier kann man auch gleich den „WMI SNMP-Anbieter“ mit aktivieren). Hacken aktivieren und mit Ok und Weiter die Installation starten.

In der Dienste-Verwaltung (Start -> Ausführen -> „services.msc“ -> OK drücken) am „SNMP-Dienst“ die Eigenschaften öffnen, auf der Tabreiter „Sicherheit“ den Hacken bei „Authentifizierungstrap senden“ aktivieren, „SNMP-Pakete von jedem Host annehmen“ aktivieren und als Communitynamen public mit Standardberechtigung erstellen wenn nicht vorhanden. Nach den verändern der Einstellung nochmal den Dienst neu starten.

Windows 7

Arbeitsschritte sind die gleichen wie bei Windows XP nur die Elemente sind anderes benannt. Die Installation ist hier unter „Systemsteuerung“ -> „Programme und Funktionen“ -> „Windows-Funktionen aktivieren oder deaktiveren“ -> „Simple Network Managment-Protokoll (SNMP)“ (auch hier kann „SNMP WMI-Anbieter“ aktiviert werden).

Konfiguration und neu starten des Dienstes nicht vergessen!

Windows 2008 Server

Ebenfalls die selben Schritte. Die Installation findet man unter „Systemsteuerung“ -> „Programme und Funktionen“ -> „Windows-Funktionen aktivieren oder deaktiveren“ -> „Server-Manager\Features“ -> „Features hinfzufügen“ (Rechts oben im eck) -> „SNMP-Dienst“ (anwählen, dadurch werden die 2 Unterpunkte mit aktivieret) mit Weiter und Installieren die Installation starten.

Konfiguration und neu starten des Dienstes nicht vergessen!

Überwachen mit munin-node

Ich finde die Methode über munin-node angenehmer zu konfigurieren. Da hier zum größten Teil alles in der munin-node.ini-Datei (zu erstellen im Verzeichnis der Exe) auf dem Windowscomputer konfiguriert wird. Ebenso ist die Ausbeute bedeutend größer als über SNMP, da hier durch eigene Plugins sowie Performance Counter erweitert werden kann. Der einzige Nachteil, es muss eine zusätzliche Software heruntergeladen und installiert werden.

Arbeiten auf Seite des Master-Servers (Debian Squezzy)

In der Datei „/etc/munin/minun.con“ folgenden eintrage hinzufügen (MeineGruppe ist der Name einer frei definierbaren Gruppe [wird für Gruppenweite Einstellungsmöglichkeiten benötigt], MeinComputer ist der Rechnername von Windows, x.x.x.x ist die IP-Adresse des abzufragen Windowsrechners. Alle 3 sind entsprechend anzupassen):

[{MeineGruppe};{MeinComputer}]
address {x.x.x.x}
use_node_name yes

Zum aktiveren jetzt noch den Dienst neustarten per:

/etc/init.d/munin-node restart

Arbeiten auf Seiten des Client Computers (Windows)

Zuerst muss „munin-node-win32“ installiert werden. Der Download ist unter http://code.google.com/p/munin-node-win32/downloads/list zu finden. Nach der Installation findet man im Installationsverzeichnis nur 2 Dateien, den Dienst selbst und eine Uninstall.exe.

Zur Konfiguration gibt es auf der oben genannten Website noch eine kleine Wiki. Hier aber mal eine vorgefertigte Version (Aufpassen bei der Codierung, muss „UTF-8 ohne BOM“ sein) für ein Deutsches Windows XP (Wichtig ist hier zu beachten, das bei den PerfomanceCountern auf die Sprache zu achten ist!):

 

[Plugins]
; Plugin Section, 1 enables plugin, 0 disables
Disk=1
Memory=1
Processes=1
Network=1
MbmTemp=1
MbmVoltage=1
MbmFan=1
MbmMhz=1
SMART=1
HD=1
Cpu=1
SpeedFan=0
;uptime=1 ;Ist in den Sourcen noch nicht freigeschalten (Stand 1.6.0)
External=0
NewExternal=0
[ExternalPlugin_free]
;Command=c:\1\disk_free.py
;env.foobar=free
[DiskPlugin]
; Default Warning and Critical values for % space used
Warning=92
Critical=98
[ExternalPlugin]
; For External Plugins just add an entry with the path to the program to run
; It doesn't matter what the name of the name=value pair is
;Plugin01=C:\Users\Jory\Documents\Visual Studio Projects\munin-node\src\plugins
python\disk_free.py
[PerfCounterPlugin_disktime]
DropTotal=1
Object=Logischer Datenträger
Counter=Zeit (%)
CounterFormat=double
CounterMultiply=1.000000
GraphTitle=Disk Time
GraphCategory=disk
GraphArgs=--base 1000 -l 0
GraphDraw=LINE
[PerfCounterPlugin_processor]
DropTotal=1
Object=Prozessor
Counter=Prozessorzeit (%)
CounterFormat=double
CounterMultiply=1.000000
GraphTitle=Processor Time
GraphCategory=system
GraphArgs=--base 1000 -l 0
GraphDraw=LINE
[PerfCounterPlugin_uptime]
Object=System
Counter=Systembetriebszeit
GraphTitle=Uptime
GraphCategory=system
GraphDraw=AREA
GraphArgs=--base 1000 -l 0
DropTotal=0
CounterFormat=large
CounterMultiply=1.1574074074074073e-005
[PerfCounterPlugin_processtime]
DropTotal=1
Object=Prozess
Counter=Prozessorzeit (%)
CounterFormat=double
CounterMultiply=1.000000
GrapTitle=Processtime
GraphCategory=system
GraphDraw=AREA
GraphArgs=--base 1000 -l 0
[SpeedFanPlugin]
BroadcastIP=192.168.0.255
UID=FF671100

Runlevel ändern unter Debian (Ubuntu)

Natürlich gibt es den „schweren“ Weg, den man zu Fuß geht und entsprechend die Sym-Links selbst erzeugt bzw. wieder löscht. Aber man könnte auch den einfacheren Weg gehen und die vorhande Funktionalität des Systems ausnutzen, und zwar mit update-rc.d. Weiter unten folgen die Befehle mit Beschriebung, aber zuerst noch ein Information. Damit update-rc.d auch richtig arbeiten kann, benötigt es passende Informatione in den init.d-Scripten. Hier ein kleines Beispiel wenn jemand selber mal eins schreiben will:

#! /bin/sh
### BEGIN INIT INFO
# Provides: Was macht das Skript?
# Required-Start:
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Kurze Beschreibung
# Description: Längere Bechreibung
### END INIT INFO
# Author: Name <email@domain.tld>
# Aktionen
case "$1" in
start)
  /opt/beispiel start
  ;;
stop)
  /opt/beispiel stop
  ;;
restart)
  /opt/beispiel restart
  ;;
esac
exit 0

Und nun die Befehle. Mit diesem werden alle Sym-Links gelöscht:

update-rc.d -f <Basisname> remove

Damit werden die im Default-Parameter angegebenen RunLevel-Links wieder erzeugt:

update-rc.d <Basisname> defaults

Per Hand definierte Links:
Def des Bsp: Link für Start an Stelle 80 für Runlevel 2-5 anlegen (S80<Basisname>) und Link für Stop an Stelle 55 für Runlevel 2-5 anlegen (K55<Basisname>)

update-rc.d <Basisname> start <Nr> <RunLevel> . stop <Nr> <RunLevel> .
update-rc.d <Basisname> start 80 2 3 4 5 . stop 55 2 3 4 5 .

Zur Sicherheit nochmal angemerkt, mit diesem Befehlen kann man den aktuell laufenden Dienst dann noch beenden:

invoke-rc.d <Basisname> stop
/etc/init.d/<Basisname> stop

Grub 2 wieder zu laufen bringen

Nachdem wir einen Live-CD gebootet haben, müssen wir erstmal die Devices mounten. Nach dem 1sten Befehl müssen gegebenenfalls noch weitere devs hinzu gemountet werden:

sudo mount /dev/sda[x] /mnt
sudo mount -o bind /dev /mnt/dev
sudo mount -o bind /proc /mnt/proc
sudo mount -o bind /sys /mnt/sys

nun wechseln wir die root

chroot /mnt

Und nun installieren wir den Grup:

grub-install /dev/sda

mit diesem Befehl bauen wir nochmal die grup.cfg neu auf, muss nicht sein, also optional:

update-grub

Und mit diesen Befehlen wird der Rechner neu gestartet:

exit
sudo umount -a
sudo reboot

Und dann bangen und hoffen 😉 naja es sollte schon funzen.