Betriebssysteme

Grundinstallation Debian

3. September 2019 · Betriebssysteme · andreas · 3 Kommentare

Die Grundinstallation von Debian ist schnell erledigt, um allerdings bereits bei der Installation Fine-Tuning betreiben zu können, sollte der Modus “Expert install” gewählt werden. Dieser bietet nicht nur mehr und detailliertere Optionen, sondern ist an mancher Stelle (z.B. “Benutzer und Passwörter einrichten”) logischer aufgebaut als der “Graphical install”.

Im Debian Installer Menu die Option “Advanced options” und dann “Expert install” wählen.

Bei “Select a language” die Option “German” auswählen und den Rest der Spracheinstellungen bestätigen, zusätzliche Gebietsschemen müssen keine installiert werden. Die Tastatureinstellungen ebenfalls bestätigen.

Für eine Standardinstallation müssen keine weiteren Installer-Komponenten hinzugefügt werden.

Sofern im Netz ein DHCP-Server in Betrieb ist, können bei einem Großteil der Netzwerkinstallation die Vorgabewerte übernommen werden. Lediglich beim Rechnernamen (sowie ggf. Domänennamen) sollten entsprechende Eingaben gemacht werden.

Im Bereich “Benutzer und Passwörter einrichten” kann die Vorgabe “Shadow-Passwörter benutzen?” ebenfalls bei “Ja” belassen, aus Sicherheitsgründen sollte aber “root das Anmelden erlauben?” mit “Nein” beantwortet werden. Als Folge hieraus wird bereits bei der Installation des Betriebssystems ein normales Benutzerkonto angelegt und “sudo” direkt so eingerichtet, daß hierüber Arbeiten am System vorgenommen werden können.

Sofern kein eigener Zeitserver irgendwo in Betrieb ist, können die Vorgaben bei “Uhr einstellen” ebenfalls übernommen werden.

Rund um “Festplatten partitionieren” sind einige Überlegungen zu treffen, welche weitreichende Auswirkungen haben:

Die erste Entscheidung ist, ob die Partitionierung geführt oder manuell erfolgen soll, ob dafür der LVM verwendet werden soll und ob der Inhalt der Festplatte verschlüsselt werden soll oder nicht.

Bei einer Installation auf einer leeren Platte auf einem Desktoprechner ist wahrscheinlich “Geführt - vollständige Festplatte verwenden” die richtige Option, auf einem mobilen Rechner sollte auf jeden Fall “Geführt - gesamte Platte mit verschlüsseltem LVM” gewählt werden.

Nach Auswahl der Festplatte muss noch über die Partitionierung der Festplatte entschieden werden. Sofern man nicht einen guten Grund hat, eine der anderen Optionen zu wählen, ist dem Ratschlag

Wenn Sie Sich nicht sicher sind, wählen Sie den ersten Eintrag

zu folgen und “Alle Dateien auf eine Partition, für Anfänger empfohlen” zu wählen. Anschließend die “Partitionierung beenden und Änderungen übernehmen”.

Bei der Installation des Basissystems kann die Vorgabe “linux-image-amd64” übernommen werden, sofern man nicht vor hat, demnächst die Hardware des Systems zu ändern, kann bei den “in die initrd aufzunehmende Treiber” die Option “angepasst: nur für das System benötigte Treiber einbinden” gewählt werden.

Der Paketmanager wird im Normalfall so konfiguriert, daß ein Netzwerkspiegel statt einer anderen CD oder DVD verwendet wird. Hierbei nicht davon verwirren lassen, daß trotz “HTTPS everywhere” die Option “http” gewählt werden sollte. Bei der Auswahl des Spiegelservers können ebenfalls die Vorgaben bestätigt werden.

Der Einsatz von “Non-free”-Software hängt im Wesentlichen davon ab, ob zum Betrieb des Rechners irgendwelche nicht freien Bestandteile benötigt werden, was i.d.R. bei WLAN- oder Grafiktreibern der Fall ist. Die Paketdepots für Quellpakete können angewählt bleiben. “Sicherheitsaktualisierungen” sollten auf jeden Fall installiert werden, die Auswahl von “Release-Updates” ist im Normalfall ebenfalls sinnvoll. Die Option “Rückportierte Software” sollte nur dann ausgewählt werden, wenn auch ein tatsächlicher Bedarf besteht.

Die automatische Installation von Sicherheitsupdates ins Geschmacksache, sofern kein zwingender Grund dagegen spricht, sollte “Keine automatischen Updates” gewählt werden.

Um ein möglichst schlankes System zu erhalten sollten bei der Sofwareauswahl alle Optionen des “Debian desktop environment” abgewählt und lediglich “SSH server” sowie “Standard-Systemwerkzeuge” selektiert werden. Der Rest wird gezielt nachinstalliert.

Als letztes wird noch der Bootmanager installiert. Hier können - sofern kein Dual-Boot o.ä. geplant ist, die Vorgaben ebenfalls übernommen werden, eine Installation in den EFI-Wechseldatenträgerpfad ist nur selten nötig.

Beim Einstellen der Uhrzeit muß als Letztes noch die Entscheidung getroffen werden, ob die Systemzeit auf UTC gesetzt ist. Ist Debian als einziges System installiert, kann hier mit “ja” geantwortet werden, im Dual Boot-Betrieb ist entweder hier ein “nein” oder eine Anpassung des anderen Betriebssystems notwendig.

Nach Abschluss der Installation sollte das neu installierte Betriebssystem dann starten.


SSH Anmeldung mit Public-Key-Authentifizierung

31. August 2019 · Betriebssysteme · andreas · Kein Kommentar

Als Alternative zur “herkömmlichen” Anmeldung mit Benutzername und Kennwort gibt es auch die Möglichkeit, sich über SSH mittels einer Kombination von privatem und öffentlichem Schlüssel auf einem anderen Rechner anzumelden. Dies hat den Vorteil, daß - sobald einmal eingerichtet - eine sichere Verbindung zwischen den beiden Rechnern hergestellt werden kann, ohne daß jedesmal das Kennwort eingegeben werden muss.

Im ersten Schritt wird hierzu das Schlüsselpaar aus privatem und öffentlichem Schlüssel erzeugt:

$ ssh-keygen -b 4096
Generating public/private rsa key pair.
Enter file in which to save the key (/home/andreas/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
...

Während die Frage nach dem Speicherort einfach mit “Enter” bestätigt werden kann, sollte die Vergabe einer Passphrase gut überlegt sein. Ohne Passphrase liegt der erzeugte Schlüssel ungeschützt am Speicherort und kann bei einem Diebstahl problemlos verwendet werden, mit Passphrase ist eine Verwendung nur mit Kenntnis eben dieser möglich.

Als Ergebnis des Befehls werden zwei Dateien erzeugt: zum einen die Datei “id_rsa”, weche den geheimen (=privaten) Schlüssel enthält und die Datei “id_rsa.pub”, in welcher der öffentliche Schlüssel gespeichert ist.

Im zweiten Schritt kann der soeben erzeugte öffentliche Schlüssel nun auf den anderen Rechner übertragen werden. Die Syntax hierzu ist “ssh-copy-id -i ~/Pfad/zur/Schlüsseldatei Benutzername@Rechnername”

$ ssh-copy-id -i /home/andreas/.ssh/id_rsa.pub remoteuser@remotehost
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/andreas/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
remoteuser@remotehost's password:

Number of key(s) added: 1

Now try logging into the machine, with: "ssh 'remoteuser@remotehost'"
and check to make sure that only the key(s) you wanted were added.

Sofern alles funktioniert hat, wurde auf dem Zielrechner im Verzeichnis “/home/remoteuser/.ssh” eine Datei “authorized_keys” erzeugt, in welche der öffentliche Schlüssel kopiert wurde.

Ist dies erfolgt, kann die Anmeldung ab sofort mit

$ ssh -i /home/andreas/.ssh/id_rsa remoteuser@remotehost

durchgeführt werden, wobei hier der private Schlüssel angegeben werden muss. Sofern beim Speichern des Schlüsselpaares die Vorgabewerte für den Namen übernommen wurden, kann die Angabe des Schlüssels entfallen, so daß die Anmeldung einfach über

$ ssh remoteuser@remotehost

möglich ist. Sofern beim Erzeugen des Schlüssels eine Passphrase vergeben wurde, wird diese bei Zugriff auf den Schlüssel abgefragt.


Debian Installationsvorbereitungen

24. August 2019 · Betriebssysteme · andreas · Kein Kommentar

Vor der Installation sollte die vorhandene Hardware auf Kompatibilität getestet werden, was am einfachsten mit einem Live-Image zu bewerkstelligen ist. Nach erfolgreichem Download sollte das Image auf Korrektheit und Unversehrtheit überprüft werden.

Anschließend kann das Image auf einen USB-Stick oder eine DVD kopiert und der Rechner damit gestartet werden, so daß eine erste Einschätzung, ob mit irgendeinem Gerät Probleme zu erwarten sind, getroffen werden kann.

Idealerweise wird das System auf eine neue Platte installiert, so daß eine saubere Trennung von Alt- und Neusystem recht einfach zu bewerkstelligen ist. Vor der Installation nicht vergessen, im BIOS UEFI zu aktivieren und ggf - falls z.B. eine Koexistenz mit Windows gewünscht - die Einstellungen anzupassen. Auch dem Thema Secure Boot sollte ein kurzer Blick gewidmet werden.

Nach der Vorbereitung kann die Installation starten, was entweder über das bereits geladene Live-Image oder mit Hilfe eines Netzwerk Installations-Images erledigt werden kann. Eine gute Vorab-Lektüre ist die Installationsanleitung zur Debian Buster, die man zumindest überfliegen sollte.

Mit der Entscheidung für eine Distrubtion ist das Auswahlverfahren noch nicht abgeschlossen, denn während es unter Windows nur eine Standard-Oberfläche gibt, kommt Debain Buster mit einer Vielzahl von unterstützen Desktop-Umgebungen, die alle ihre Vor- und Nachteile haben: GNOME, KDE, Cinnamon, Mate oder Xfce sind hierbei die gänigsten Kandidaten, bei denen man sich zumindest für einen im Laufe der Installation entscheiden sollte.

Welcher Desktop-Umgebung letzendlich aber der Vorzug geben wird, ist Geschmacksache. Es ist auch problemlos möglich, mehrere Desktop-Umgebungen parallel zu installieren und abwechselnd zu betreiben, bis sich irgendwann eine Präferenz abzeichnet.


Neue Festplatte unter Linux hinzufügen

15. August 2019 · Betriebssysteme · andreas · Kein Kommentar

Sowohl unter Linux als auch unter Windows gibt es verschiedene Möglichkeiten, eine zusätzliche Platte in Betrieb zu nehmen. Während unter Windows das Kommandozeilen-Programm “diskpart” zwar vorhanden ist, aber selten genutzt wird, ist unter Linux eher die Kommandozeile gängig, als die Arbeiten mit z.B. “gnome-disks” zu erledigen.

Im ersten Schritt werden die vorhandenen Laufwerke aufgelistet. Dies dient dazu sicherzustellen, daß die zusätzliche Festplatte auch fehlerfrei eingebaut und erkannt wurde und um den Namen zu erfahren, welcher der Platte vom System zugewiesen wurde:

$ sudo fdisk -l
...
Disk /dev/sda: 931,5 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: Samsung SSD 860 
...

Zu erkennen ist die Platte zum einen am Namen (und ggf. an der Größe), zum anderen daran, daß - sofern es sich um eine neue Platte handelt - noch keine Partitionen darauf angelegt wurden.

Nachdem die Platte identifiziert wurde (im Beispielfall “/dev/sda”), kann diese im nächsten Schritt partitioniert werden:

$ sudo fdisk /dev/sda

Welcome to fdisk (util-linux 2.33.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): n
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p):

Using default response p.
Partition number (1-4, default 1): 
First sector (2048-1953525167, default 2048): 
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-1953525167, default 1953525167):

Created a new partition 1 of type 'Linux' and of size 931,5 GiB.

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

Sofern keine weitere Unterteilung gewünscht ist, können hier einfach die Vorgaben übernommen werden:

  • “n” (für neue Partition),

  • “Enter” (um eine primäre Parition anzulegen),

  • “Enter” um die Partition mit der Nummer “1” anzulegen,

  • “Enter” zum Bestätgen des Startsektors,

  • “Enter” zum Bestätgen des Endsektors,

  • “w” zum Speichern der Änderungen und verlassen

Als Nächstes wird das Dateisystem “ext4” auf der soeben erzeugten Partition erzeugt:

$ sudo mkfs.ext4 /dev/sda1
mke2fs 1.44.5 (15-Dec-2018)
Discarding device blocks: done 
Creating filesystem with 244190390 4k blocks and 61054976 inodes
Filesystem UUID: bd54c452-1234-5678-a294-d22cb9d6be33
...
Writing superblocks and filesystem accounting information: done

Um die Platte dauerhaft einzuhängen, muß noch ein entsprechender Eintrag in der fstab gemacht werden. Zwar würde es funktionieren, die Partition über ihren Gerätenamen “/dev/sda1” einzubinden, jedoch kann dieser sich u.U. ändern.

Aus diesem Grund ist einer Einbindung über die eindeutige UUID den Vorzug zu geben. Diese kann entweder der Ausgabe des soeben durchgeführten “mkfs.ext4” entnommen werden oder mit Hilfe des Befehls “blkid”:

$ sudo blkid 
...
/dev/sda1: UUID="bd54c452-1234-5678-a294-d22cb9d6be33" TYPE="ext4" PARTUUID="6f084731-01"

Letztendlich stellt sich noch die Frage: wohin mit der neuen Platte im Dateisystem?

Obwohl sich die verschiedenen Distributionen in den letzten Jahren auf einen Filesystem Hierarchy Standard geeinigt haben, schweigt sich dieser interessanterweise genau zu diesem Punkt aus.

Als bestehende Einhängepunkte bieten sich “/mnt/neueplatte” (eigentlich für Temporarily mounted filesystems gedacht), “/media/neueplatte” (Mount points for removable media), das in macOS verwendete “/Volumes/neueplatte” oder auch ein davon inspiriertes “/vol/neueplatte”.

$ sudo mkdir /vol
$ sudo mkdir /vol/neueplatte

Nachdem der Einhängepunkt erzeugt wurde, kann über einen entsprechenden Eintrag in der Datei “/etc/fstab” die Platte bei jedem Start automatisch eingehängt werden:

...
# 2019-08-15 athul/added 2nd disk
UUID=bd54c452-1234-5678-a294-d22cb9d6be33 /vol/neueplatte ext4 defaults 0 2

Nach einem Reboot steht die Platte dann im Verzeichnis “/vol/neueplatte” zur Verfügung. Eine Übersicht über die zum Einhängen verwendeten Felder liefert das Debian-Wiki.


.NET 3.5 Installation scheitert auf Microsoft Windows Server 2019

9. August 2019 · Betriebssysteme · andreas · 7 Kommentare

Die Installation des .NET Framework 3.5 ist i.d.R. unter Windows Server 2019 über den Servermanager nicht möglich und scheitert mit einem Fehler 0x800f0954

Glücklicherweise hilft der bereits von Windows 10 bekannte Trick, die Installation über die Kommandozeile durchzuführen (ggf. das “D:” durch das Laufwerk ersetzen, in dem das Installationsmedium liegt):

PS C:\Windows\system32> DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:d:\sources\sxs

Tool zur Imageverwaltung für die Bereitstellung
Version: 10.0.17763.1

Abbildversion: 10.0.17763.615

Features werden aktiviert
[==========================100.0%==========================]
Der Vorgang wurde erfolgreich beendet.
PS C:\Windows\system32>