Skip to content

Debian 9 Stretch - Systemd deinstallieren und SysV-Init verwenden

Seit einigen Jahren setzen viele Distributionen auf systemd. Das neue Init System ist allerdings nicht bei allen beliebt und führte in der Vergangenheit zu Forks wie beispielsweise Devuan.

Ebenfalls sind im Vergleich zu SysV-Init noch Unstimmigkeiten oder Sicherheitslücken vorhanden. (Siehe CVE)

debian

Welches System am Ende zum Einsatz kommt, hängt oft von der verwendeten Distribution ab.

Das muss nicht sein, denn Systeme wie Debian 9 lassen sich einfach umstellen.

Zunächst sollte überprüft werden, welches Standard-Init-System aktuell im Einsatz ist:

ps -p 1

PID TTY          TIME CMD
    1 ?        00:00:10 systemd

 

 

Debian 9 - Systemd deinstallieren

apt install sysvinit-core

reboot

sysvinit-debian

apt remove --purge --auto-remove systemd*

nano /etc/apt/preferences.d/systemd

Package: systemd
Pin: release *
Pin-Priority: -1

 

SysV-Init überprüfen

Die Überprüfung erfolgt auf die gleiche Weise wie am Anfang des Artikels.

debian9-init

Fazit

Die Umstellung eines aktuellen Debian 9 Stretch Systems ist schnell erledigt, mit Devuan 1.0 ist seit Mitte des Jahres ein Debian Fork vorhanden, welcher direkt auf das alte SysV-Init setzt.

apt vs. apt-get - Was ist der Unterschied?

Nicht erst seit Ubuntu 16.04 dürfte der apt Befehl bekannt sein, allerdings hat er seit dem einen höheren Bekanntheitsgrad erreicht.

Doch wo genau liegen die Unterschiede von apt und apt-get?

Beide basieren auf dpkg, dem Paketmanagement von Debian (Debian Package Manager).

APT (Advanced Package Tool) ist nichts weiter als ein Kommandozeilen Tool, welches mit dpkg interagiert. 

aptitude-apt-get-apt-Commands

Um Benutzern die Arbeit mit Paketen einfacher zu machen, wurde apt-get ins Leben gerufen, eine Weiterentwicklung davon ist apt. Beide können als Frontends für dpkg angesehen werden.


Das neuere apt bietet grafische Elemente (es lebe der farbige Fortschrittsbalken) und soll Kommandos wie apt-cache und apt-get unter einem Hut vereinen.

apt-fortschrittsbalken

Überblick apt Befehle

Einen Überblick der alten und neuen Befehle habe ich euch unten zusammengestellt.

apt vs. apt-get
apt Kommando apt-get Kommando Funktion
apt install apt-get install Pakete installieren
apt remove apt-get remove Pakete deinstallieren
apt list --upgradable -- Anstehende Updates anzeigen
apt list dpkg list Pakete auflisten
apt purge apt-get purge Pakete und Konfiguration entfernen
apt update apt-get update Repository aktualisieren
apt upgrade apt-get upgrade Anstehenden Pakete aktualisieren
apt full-upgrade apt-get dist-upgrade Anstehenden Pakete aktualisieren und deinstallieren
apt autoremove apt-get autoremove Nicht benötigte Pakete deinstallieren
apt search apt-cache search Pakete suchen
apt show apt-cache show Paketdetails anzeigen
apt edit-sources -- sources.list editieren

 

Linphone 4.1 - freier VoIP Client

Bereits vor ein paar Monaten ist Linphone 4.x erschienen. Der freie SIP Client hat eine dringend benötigte Oberflächenkur erhalten.

Die Telefonie Software für Linux, Mac OS X und Windows basiert auf Qt 5.9 und hat neben der modernen UI eine intelligente Suchleiste erhalten. Diese erlaubt es Kontakte zu suchen, Chats zu starten oder Anrufe zu tätigen.

Linphone-Suchleiste

Anrufe können nun auch via HD Video geführt werden, Konferenzen werden unterstützt, sowie Chats als Ergänzung zum Gespräch.
Zur Nachverfolgung wurde ein globaler Verlauf für Anrufe, Chats und Co integriert. Die Software steht weiterhin unter GPLv2 Lizenz und somit frei zur Verfügung.

Installation unter Ubuntu, Mint und Elementary OS

Für Debian Systeme steht ein Repository zur Verfügung, welches allerdings nicht auf einem aktuellen Stand ist und nur Version 3.9.x anbietet:

sudo add-apt-repository ppa:linphone/release

sudo apt-get update

sudo apt-get install linphone


Es besteht die Option das Programm selbst zu builden, bei mir sind allerdings die ersten Versuche gescheitert...in einer virtuellen Umgebung. Eventuell hat einer hier mehr Glück, mir fehlt dazu gerade etwas die Zeit.

sudo apt-get install git build-essential automake autoconf libtool   \
intltool libgtk2.0-dev libspeexdsp-dev libavcodec-dev libswscale-dev \
libx11-dev libxv-dev libgl1-mesa-dev libreadline-dev libgsm1-dev     \
libtheora-dev libsqlite3-dev libupnp-dev libsrtp0-dev open-vm-tools   \
open-vm-tools-dev cmake-* libmbedtls-dev libmbedtls-doc libmbedtls10   \
libcunit1 libcunit1-dev libantlr3c-dev libantlr3-runtime-java antlr3 \
libortp-dev libortp9 libmediastreamer-base3 libmediastreamer-dev     \
extra-cmake-modules yasm libv4l-dev libasound2-dev python-pip doxygen graphviz xcode ninja

git clone https://github.com/BelledonneCommunications/linphone-desktop.git
cd linphone-desktop
git submodule sync && git submodule update --init --recursive
./prepare.py

make
sudo make install

Linphone_VoIP


Fazit


Die Software hat mit der neuen Oberfläche eine riesen Schritt gemacht, auch die frischen Funktionen sind nicht zu verachten. Wie schon beim letzten Artikel über Linphone ist die Konkurrenz immer noch relativ klein. Ekiga 5 lässt weiterhin auf sich warten, X-Lite/Bria ist Closed Source. Lediglich Jitsi bietet ähnliche Funktionen. 

Wer sichere Kommunikation für wichtig hält, ist mit Linphone relativ gut beraten, da es moderne Technologien wie zRTP, TLS und SRTP unterstützt.

Bevor es keine Möglichkeit gibt Version 4.x via Repository zu beziehen, ist zumindest für Alltags Linux Nutzer die Einstiegshürde etwas hochgelegt. Windows und Mac Anwender, können allerdings bereits einen Installer laden, was ich für meinen ersten Test auch getan habe.

Download LinPhone

Sie haben das Recht auf Zugriff - Online Chmod Generator

Chown, chmod, chgrp sind wohl die bekanntesten Befehle, wenn es darum geht Zugriffsrechte von Dateien oder Ordnern auf Linux Systemen zu setzen.

Solche Berechtigungen werden oft direkt über die Konsole gesetzt und erfordern etwas Übung mit den Kommandos aus den coreutils, speziell mit CHMOD.

Chmod-Calculator-Chmod-Generator

CHMOD Generator - Datei Berechtigungen klicken

Im Prinzip ist das Zusammenspiel von u (Besitzer), g (Gruppe) und o (Andere) mit Lesen (4), Schreiben (2) und Ausführen (1) kein Hexenwerk, kann aber dennoch verwirren.

Damit nicht pauschal Rechte für Alles und Jeden vergeben werden (777 oder rwxrwxrwx) sollte immer darauf geachtet werden, welche Berechtigungen im System gesetzt sind oder werden.

Der CHMOD Calculator bietet hier eine gute Hilfestellung, da sich die benötigte Konfiguration einfach klicken lässt und dazu noch ausführliche Erklärungen liefert

Fallstricke wie Setuid and Setgid werden auf der Webseite ebenfalls beschrieben und sollten jedem zu einem einfacheren Umgang mit "Change Mode" verhelfen.

CHMOD Calculator

Zeig mir deine Ports - netstat oder ss

Das Netzwerkdiagnose Tool netstat gehört zum Standardrepertoire vieler Administratoren. Die Netzwerkstatistiken sind aus den 90er Jahren und ermöglichen unter Linux eine Auflistung offener Ports oder TCP/UDP Verbindungen.

Da das Tool nur auf der Kommandozeile existiert wird es jedem Windows Nutzer wohl nicht unbedingt bekannt sein (eher TCPView), aber auch hier ist es integriert und kann ähnlich wie unter Linux verwendet werden.

Folgender beispielhafte netstat Befehl zeigt unter Linux die relativ nützliche Funktion des Tools.

netstat -lnp

Zur Erklärung: Das -l listet die Verbindungen auf, wobei -p PID bzw. den Programmnamen auflistet und -n eine nummerische Ausgabe der Ports forciert

PS: Unter Windows lässt sich eine ähnliche Ausgabe mit netstat -an erreichen.

netstatWeiter möchte ich auf netstat aus dem net-tools Paket nicht eingehen. Erstens gilt es als veraltet (aber beliebt) und zweitens dürften die Funktionen den meisten bekannt sein. Darum ein kurzer Blick auf die Alternative.


ss - socket statistics

Wie bereits oben erwähnt, ist netstat schon etwas älter. Mit den socket statistics existiert ein weiteres und neueres Tool, welches ähnliche Funktionen bietet.

Die Funktionsweise ist den netstats angelehnt, was am folgenden Beispiel zu erkennen ist.

ss -ln

Hier steht das -l für alle bestehenden Verbindungen, das -n listet Portnummern statt Namen auf.

Die Verwendung von -n beschleunigt zusätzlich die Ausgabe, da keine Hostnamen aufgelöst werden müssen.

Weitere praktische Befehle sind ebenfalls möglich:

ss -lt

Dieser Befehl listet bestehende tcp Verbindungen auf.

ss -lu

Dieses Kommando listet bestehende udp Verbindungen auf, mit -lua lassen sich alle Verbindungen anzeigen.

ss -p

Wie bei netstat werden hier die Prozess IDs (PID) gelistet.

ss -s

Abschließend bietet -s einen Überblick über alle Verbindungen (siehe Screenshot)

ss

Neben diesen eher alltäglichen Befehlen bietet ss viele weitere Möglichkeiten das Netzwerk zu untersuchen.

So besteht die Möglichkeit der Filterung nach Zieladresse (ss -nt dst 192.168.11.232) oder bestimmten Ports (ss -nt '( dst :443)') bestehenden IPv4 Verbindungen (ss -t4 state established) oder nur IPv6 (ss -tl6).

ss Befehlsübersicht

Einen Überblick aller Befehle verschafft ihr euch unter man ss oder via help (siehe Screenshot). 

ss-befehl

Sollten die Socket Statistics nicht auf dem System verfügbar sein, sollte das Paket iproute2 nach installiert werden.

Fazit

Alleine schon wegen des Alters von netstat und der nicht mehr vorhandenen Paketaktualisierung rückt Socket Statistics in den Vordergrund. 
Durch die Mehrzahl an Funktionen, sollten sich auch Nostalgiker langsam aber sicher auf das moderne Tool einstellen.

Manche Funktionen kann aber auch die neue Alternative nicht ersetzen, so muss für netstat -r auf iproute umgestiegen werden, da ss dies nicht mehr unterstützt.