SliTaz GNU/Linux official and community documentation wiki.
.png
Translations of this page:

Systemverwaltung

Geräte und Datenträger

Linux betrachtet Platten und USB-Speichermedien als Geräte. Um auf Daten dieser Speichermedien zugreifen zu können, muss das Gerät in einem Einhängepunkt (Verzeichnis) eingehängt werden. Unter SliTaz kann dies mit dem grafischen Programm (z.B. pcmanfm) oder über ein Kommando aus einem Terminal geschehen.

Zum Beispiel kann die erste Partition der ersten internen Platte in dem Verzeichnis /mnt/disk eingehängt werden mit:

 # mkdir -p /mnt/disk
 # mount /dev/sda1 /mnt/disk

Zum Einhängen von optischen Datenträgern oder USB-Speichermedien sollten Einhängepunkte im Verzeichnis /media verwendet werden. Bei optischen Datenträgern braucht nur der Gerätename angegeben zu werden. Für USB-Speichermedien ist ein Einhängepunkt vordefiniert:

 # mount /dev/cdrom
 # mount /dev/sdb1 /media/flash

NTFS-Dateisystem

Wenn auf ein Windows NTFS-Dateisystem zugegriffen werden soll, müssen einige zusätzliche Pakete installiert werden.

Der Treiber ntfs-3g bietet zuverlässigen Zugriff auf Partitionen mit NTFS-Dateisystemen und ntfsprogs stellt Programme zur Manipulation zur Verfügung, die FUSE verwenden. Mit Gparted (einer grafischen Oberfläche für parted) können Partitionen mit NTFS-Dateisystemen verschoben und in der Größe verändert werden.

NFS

NFS („Network File System“) ist die UNIX- und Linux-eigene Methode, Dateisysteme über Netzwerke anderen zur Verfügung zu stellen. Insofern ähnelt die Funktion der von samba.

Die meistbenutzte Version ist immer noch NFS Version 3, die UDP oder TCP als Netzwerkprotokoll verwenden kann.

Die ältere Version 2 konnte nur UDP verwenden.

In einem LAN ist UDP immer noch das schnellste Protokoll; TCP sollte vorgezogen werden, wenn die Rechner über ein WAN kommunizieren.

Die Version 3 wurde von Version 4 abgelöst, die gegenüber Version 3 einige bemerkenswerte Verbesserungen (bei der Sicherheit) aufweist, deren Konfigurierung infolgedessen aber wesentlich komplexer ist.

Ein NFS-Server stellt einen Teil seines Dateisystems für andere zur Verfügung; d.h. es kann über ein Netzwerk darauf zugegriffen werden. In der Server-Konfiguration können IP-Adressen oder Namen von Rechnern angegeben werden, denen Zugriffe (nur lesend oder auch schreibend) gestattet oder verwehrt werden sollen. Ein NFS-Klient hängt ein solches Dateisystem einfach wie ein lokales Gerät ein.

Die NFS-Software in Slitaz ermöglicht beide Funktionen: Server oder Klient. Zum Starten (und Beenden) der NFS-Prozesse gibt es eine Kommandoprozedur im Verzeichnis /etc/init.d:

/etc/init.d/nfsd start|stop|restart

Auch wenn der Rechner nur als Klient fungiert, müssen die NFS-Hintergrundprozesse laufen.

NFS Software-Installation

NFS benötigt die Pakete linux-nfsd und nfs-utils.

Mit den Kommandos

# tazpkg get-install linux-nfsd
# tazpkg get-install nfs-utils

können diese installiert werden.

/etc/exports

Es folgt ein Beispiel für die Datei /etc/exports:

# /etc/exports: the access control list for filesystems which may be exported
#               to NFS clients.  See exports(5).
#
# Beispiel für NFSv2 und NFSv3:
# /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
#
# Beispiel für NFSv4:
# /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
# /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
#
/usb1           192.168.1.0/24(rw,sync,no_subtree_check)

Es wird nur ein Dateisystem zur Verfügung gestellt: /usb1. Klienten müssen sich im Netzwerk 192.168.1.0/24 befinden und diese haben lesenden und schreibenden Zugriff.

Der Klient braucht nur nfsd zu starten und das Dateisystem einzuhängen:

# /etc/init.d/nfsd start
# mkdir /mnt/usbdrive1
# mount server:/usb1 /mnt/usbdrive1

Beachten Sie das spezielle Format (mit Doppelpunkt) zur Angabe des Dateisystems: Rechnername_oder_Adresse:Einhängepunkt.

Benutzerkennungen, Benutzergruppen und Kennwörter

Bei SliTaz können Benutzerkennungen und Benutzergruppen nur per Kommando (mit Administratorrechten) administriert werden, Berechtigungen von Dateien können auch mit dem grafischen Programm PCmanFM geändert werden. Der Systemadministrator (root) kann auch die Kennwörter aller Benutzerkennungen ändern, während ein nichtprivilegierter Benutzer nur sein eigenes Kennwort ändern kann.

Mit den folgenden Kommandos wird eine Benutzerkennung linux eingerichtet und wieder entfernt:

 # adduser linux
 # deluser linux

Benutzerkennungen und -gruppen bearbeiten

Linux-Benutzergruppen bieten die Möglichkeit, die Benutzer eines Rechners zu strukturieren. Jede Linux-Benutzerkennung hat einen Namen und gehört einer Gruppe an. Der Benutzername ist einer eindeutigen Benutzernummer (UID) zugeordnet. Der Name einer Benutzergruppe ist einer eindeutigen Gruppennummer (GID) zugeordnet. Benutzer können Gruppen zugeordnet werden, um sie logisch zusammenzufassen als Benutzer mit gleichen Sicherheitsanforderungen, Privilegien oder Zugriffsrechten. Gruppen sind die Basis der Linux-Sicherheits- und Zugriffsverwaltungsmechanismen. Zugriff auf Dateien und Geräte kann benutzer- oder gruppenspezifisch gewährt werden. Dieser Mechanismus ist für alle Linux-Systeme gleich, aber die Implementierung kann je nach Distribution verschieden sein. Manchmal werden zusätzliche oder andere Kommandos verwendet, wie z.B. usermod, chgrp, useradd oder groupadd. Es folgt eine Übersicht, wie Benutzerkennungen, Benutzergruppen und die Grupppenmitgliedschaft in Slitaz administriert werden können.

Bei Slitaz werden nur vier Kommandos verwendet. Einfach und elegant. ;-)

# adduser <username> <= erzeugt eine neue Benutzerkennung

# deluser <username> <= entfernt eine Benutzerkennung

# addgroup <groupname> <= erzeugt eine neue Benutzergruppe

# delgroup <groupname> <= entfernt eine Benutzergruppe

# addgroup <username> <groupname> <= fügt eine Benutzerkennung einer Benutzergruppe hinzu

# adduser -G <groupname> <username> <= fügt eine Benutzerkennung einer weiteren Benutzergruppe hinzu

# delgroup <username> <groupname> <= entfernt eine Benutzerkennung aus einer Benutzergruppe

Jede Benutzerkennung kann Mitglied jeder beliebigen Benutzergruppe sein. Die Kombination der Benutzer- und Gruppenberechtigungen ermöglicht eine granulare Steuerung von Zugriffsrechten auf Betriebsmittel.

Benutzerkennwort

Das eigene Kennwort oder das einer anderen Benutzerkennung kann mit dem Kommando passwd geändert werden:

 $ passwd
 # passwd <username>

Die Gruppe audio

Wenn ein Benutzer in der Lage sein soll, Musik zu hören, muss er der Gruppe audio angehören.

Mit dem Kommando

 # adduser -G audio <username>

wird die Benutzerkennung username zur Gruppe audio hinzugefügt.

Sprache und Tastaturbelegung

SliTaz speichert die Standard-Lokalisierungseinstellungen in der Datei /etc/locale.conf, die von /etc/profile bei jeder Anmeldung eines Benutzers gelesen wird. Die Tastaturbelegung ist in der Datei /etc/keymap.conf abgelegt. Diese Dateien können mit einem Texteditor oder mit den Kommandos tazlocale bzw. tazkeymap bearbeitet werden. So kann der Systemadministrator nach dem ersten Systemladen die Einstellungen ändern:

 # tazlocale
 oder:
 # tazkeymap

Alle installierten Lokalisierungen und die gerade aktivierte Lokalisierung kann man sich mit den Kommandos

 $ locale -a
 $ locale

anzeigen lassen.

benutzerspezifischer Kommandointerpreter

SliTaz verwendet den in busybox enthaltenen Kommandointerpreter, der mit sh verknüpft ist. Dieser ist einfach, schnell und standardkonform. Zum Ändern des Standard-Kommandointerpreters einer Benutzerkennung kann das entsprechende Feld in der Datei /etc/passwd mit einem Texteditor geändert werden.

Nach der Anmeldung eines Benutzers wird zuerst die Datei /etc/profile ausgeführt, dann die Datei ~/.profile. Diese Dateien können ebenfalls mit einem Texteditor bearbeitet werden, um Spracheinstellungen vorzugeben, Aliasnamen zu definieren usw.

Beispiel für ~/.profile

# ~/.profile: wird von Bourne-kompatiblen Kommandointerpretern bei login ausgeführt.
#

# Aliasnamen.
alias ls='ls -F'
alias df='df -h'

# Umgebungsvariablen.
export EDITOR=nano

Kommandointerpreter bash

Wenn Bash („Bourne Again SHell“) verwendet werden soll, muss erst das Paket bash installiert werden. Damit die Einstellungen aus ~/.profile für Bash wirksam werden, die Datei ~/.profile nach ~/.bashrc kopieren. Damit Bash der Standard-Kommandointerpreter für eine Benutzerkennung wird, die Datei /etc/passwd mit einem Texteditor bearbeiten (darin /bin/sh durch /bin/bash ersetzen):

 # tazpkg get-install bash
 # nano /etc/passwd   ~ :/bin/bash
 hacker:~$ cp .profile .bashrc

Nach der nächsten Anmeldung von hacker ist bash der Standard-Kommandointerpreter. Das Kommando env bestätigt dies:

 SHELL=/bin/bash

Dateibearbeiter

Busybox enthält einen Nachbau von vi für normale Textbearbeitung, der aber seine Grenzen hat. Der Texteditor vim mit dem vollen Funktionsumfang kann mit dem Kommando

# tazpkg get-install vim

installiert werden.

SliTaz bietet auch eine Version von emacs an, die mit

 # tazpkg get-install emacs

installiert werden kann.

Das Kommando sudo

Das Kommando sudo kann auf SliTaz mit

# tazpkg get-install sudo

installiert werden.

Die Konfigurationsdatei /etc/sudoers sollte immer nur mit dem Kommando visudo bearbeitet werden, da dieses die Datei sperrt und eine Fehlerprüfung durchführt.

Systemzeit

Die aktuelle Systemzeit wird mit

$ date 

ausgegeben.

Zeitzone

SliTaz speichert die Zeitzoneneinstellung in der Datei /etc/TZ, die mit einem Texteditor oder einfach mit dem Kommando echo bearbeitet werden kann. Die verfügbaren Zeitzonen findet man in dem Verzeichnis /usr/share/zoneinfo.

Mit dem Kommando

# echo "Europe/Berlin" > /etc/TZ

wird die Zeitzone Europe/Berlin eingestellt.

Das Kommando rdate

Der Systemadministrator kann die Systemzeit mit einem fernen Rechner („network time server“) mit dem Kommando rdate synchronisieren:

# rdate -s ptbtime2.ptb.de

Die Zeit, die der ferne Rechner liefert, kann mit dem Kommando rdate auch angezeigt werden:

$ rdate -p ptbtime3.ptb.de

NTP

NTP ist ein Protokoll zum Synchronisieren von Uhren über das Netzwerk auf vielen verschiedenen Systemen. NTP ist eine „client server“-Anwendung, die den UDP-Port 123 verwendet. Dieser Abschnitt beschreibt, wie ein System als NTP-Klient konfiguriert wird, der Zeitinformation über das Internet bezieht. Es gibt viele Rechner im Internet, die den NTP-Dienst anbieten.

Die Erfahrung hat gezeigt, dass NTP-Server selten eine hohe Verfügbarkeit haben, eher das Gegenteil! Daher ist es nicht empfehlenswert, einen bestimmten Rechner (auch nicht zwei oder drei) als Zeitquelle anzugeben. Nach einiger Zeit könnte sich herausstellen, dass keiner davon mehr aktiv ist und die Systemzeit beliebig abweicht! Es ist besser, den Dienst von ntp.org zu nutzen: Dort wird für jedes Land oder jede Region ein Fundus an NTP-Servern bereitgestellt. Eine derartige Gruppe auszuwählen ermöglicht eine zuverlässigere Verbindung mit einer NTP-Zeitquelle.

Auch wenn SliTaz eine kleine Distribution ist, gibt es doch mehrere NTP-Implementierungen.

Hauptsächlich:

1: busybox ntpd (in der Basis-Installation enthalten). Aufruf mit den Kommandos:

# busybox ntpd -p de.pool.ntp.org  ODER
# ntpd -p de.pool.ntp.org

2: Paket ntp (aus dem Depot zu installieren). Das Paket ntp kann mit

 # tazpkg get-install ntp 

installiert werden. Es enthält eine Reihe NTP-bezogene Programme und die Konfigurationsdatei /etc/init.d/ntp

# tazpkg list-files ntp

Mit "ntp" installierte Dateien
==============================
/etc/init.d/ntp
/etc/ntp.conf
/usr/bin/calc_tickadj
/usr/bin/ntp-keygen
/usr/bin/ntp-wait
/usr/bin/ntpd
/usr/bin/ntpdate
/usr/bin/ntpdc
/usr/bin/ntpq
/usr/bin/ntptime
/usr/bin/ntptrace
/usr/bin/sntp
/usr/bin/tickadj
/usr/bin/update-leap

Beide NTP-Hintergrundprozesse haben etwa dieselbe Funktionalität. Wenn nur beschränkte Betriebsmittel verfügbar sind, kann die Busybox-Version alle benötigten Funktionen zur Verfügung stellen. Sollen aber alle Diagnosemöglichkeiten genutzt werden, sollte eher das Paket ntp installiert werden.

NTP-Hintergrundprozess bei der Systemeinleitung starten

Die einfachste Möglichkeit, die Busybox-Version von NTP bei der Systemeinleitung zu starten, besteht darin, ein Kommando wie oben angegeben in die Datei /etc/init.d/local.sh einzufügen.

Die folgenden Erklärungen beziehen sich auf das Paket ntp. Es ist nicht klar, welche Version die Entwickler vom „Server Manager“ starten lassen wollten. Das kann zu Verwirrungen führen. Die erprobte Art der Konfigurierung des NTP-Hintergrundprozesses besteht aus den im Folgenden beschriebenen Kommandos.

Damit /usr/bin/ntpd aus dem Paket ntp bei der Systemeinleitung gestartet wird:

1: Das Paket ntp wie oben beschrieben installieren ;-).

2: Die Datei /etc/daemons.conf wie folgt ändern:

Die folgende Zeile am Ende der Datei einfügen (wobei xx das Länderkürzel ist.): 
 NTP_OPTIONS="-p xx.pool.ntp.org"

Der NTP-Hintergrundprozess liest seine Optionen aus /etc/daemons.conf. Die Konfigurationsdatei /etc/ntp.conf, auf die sich der „Server Manager“ bezieht, scheint nicht verwendet zu werden und kann gelöscht werden.

3: Die Datei /etc/rcS.conf wie folgt ändern:

In der Zeile, die bestimmt, welche Hintergrundprozesse gestartet werden sollen, ntp hinzufügen:
 RUN_DAEMONS="inetd dbus hald slim firewall httpd ntp" 

Nur ntp, nicht ntpd hinzufügen! Der Name bezieht sich auf die Datei /etc/init.d/ntp

Jetzt kann das System neu geladen werden, um zu prüfen, ob alles wie gewünscht funktioniert.

Folgendermaßen kann geprüft werden, ob der Hintergrundprozess läuft:

$ ps -ef | grep ntpd
 1934 root       0:00 /usr/bin/ntpd -p de.pool.ntp.org
 2193 root       0:00 grep ntpd

In diesem Beispiel zeigt die erste Ausgabezeile den Prozess den wir sehen wollen.

Verwenden Sie /etc/init.d/ntp {start | stop | restart} zur Steuerung des NTP-Hintergrundprozesses oder geben Sie den vollständigen Pfadnamen (/usr/bin/ntpd) an. Das Kommando ntpd ohne vollständigen Pfadnamen startet die Busybox-Version!

Prüfen, ob ntpd richtig arbeitet

Mit ntpq können die Verbindungen zu NTP-Servern geprüft werden:

# ntpq -p nl.pool.ntp.org
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*ntp0.nl.uu.net  .PPS.            1 u  632 1024  377    2.700    0.233   0.096
+ntp1.nl.uu.net  .PPS.            1 u  504 1024  377    1.742    0.356  41.789
-chime1.surfnet. 194.171.167.130  2 u  298 1024  377    0.677    0.102   0.134
+chime4.surfnet. .PPS.            1 u  422 1024  367    9.652   -2.669   0.366
 tt165.ripe.net  .STEP.          16 u    - 1024    0    0.000    0.000   0.000

Das Zeichen * am Anfang einer Zeile bezeichnet den Rechner, mit dem die Systemzeit synchronisiert ist.

In der Spalte “st” wird die Qualität („stratum“) der Zeitquelle angezeigt. 1 ist die beste Qualität, 16 bedeutet, dass der Rechner nicht erreichbar ist.

Es ist auch wichtig, die Spalten ab „reach“ zu prüfen. Unter „reach” sollte 377 stehen, alles andere bedeutet, dass Abfragen verloren gegangen sind. Um verlässliche Werte zu erhalten sollte der Hintergrundprozess einige Zeit gelaufen sein.

Realzeituhr

Mit dem Kommando hwclock kann die Realzeituhr mit der Systemzeit gestellt werden und umgekehrt.

Setzen der Systemzeit auf die Realzeit ( --utc = universal time, -l = local time ):

 # hwclock -w --utc 

Setzen der Realzeituhr auf die Systemzeit:

 # hwclock -s --utc 
 hwclock -u, --utc | -l, --localtime 

Damit wird bestimmt, dass die Realzeituhr mit UTC („Coordinated Universal Time“) oder lokaler Zeit läuft. Sie können wählen, ob die Realzeituhr mit UTC oder lokaler Zeit läuft, aber der Uhr ist nicht anzusehen, welche Zeit gewählt wurde. Mit dieser Option kann die Realzeituhr über die eingestellte Zeit informiert werden. Wenn Sie die falsche Option (oder keine und damit den falschen Standardwert) angeben, können sowohl Abfrage als auch Setzen der Realzeituhr zu unsinnigen Werten führen.

Bei SliTaz muss die Realzeituhr immer mit UTC laufen. Alle anderen Einstellungen führen zu falschen Zeiten Ihrer Zeitzone.

Synchronisierung der Realzeituhr mit NTP

Es gibt mehrere Möglichkeiten, die Realzeituhr auf die NTP-Zeit zu stellen:

 # busybox ntpd -dnqp de.pool.ntp.org && hwclock -w -u

oder:

 # ntpdate -u de.pool.ntp.org && hwclock -w -u

Alternative drei: (ziemlich alt, funktioniert möglicherweise nicht mit allen NTP-Servern)

 # rdate -s de.pool.ntp.org && hwclock -w -u

Beachten Sie, dass in allen Beispielen die Option -u angegeben wird, damit die Realzeituhr auf UTC gestellt wird.

Weitere Informationen bei: https://linux.die.net/man/8/hwclock

Kommandos termingemäß ausführen

Der Hintergrundprozess crond ermöglicht es, Kommandos automatisch an einem bestimmten Datum oder zu einer bestimmten Zeit auszuführen. Das kann für routinemäßige Systemverwaltungsaufgaben nützlich sein. Die Aufgaben werden im Verzeichnis /var/spool/cron/crontabs gespeichert.

Jeder Benutzer kann Aufgaben in einer eigenen Datei /var/spool/cron/crontabs/username definieren. Nur der Systemadministrator kann diese Dateien direkt bearbeiten. Mit dem Kommando crontab kann (unter anderem), eine Liste der Aufgaben eines Benutzers angezeigt werden.

# crontab -l <== Aufgaben des Benutzers root anzeigen.
OR:
# crontab -l -u tux <== Aufgaben des (anderen) Benutzers tux anzeigen.
OR:
tux:~$ crontab -l <== Aufgaben des Benutzers tux anzeigen.

Die Syntax der Einträge einer crontab-Datei ist die folgende:

 mm hh dd MMM DDD command > log 

Im folgenden Beispiel wird eine crontab-Datei erstellt und der Hintergrundprozess crond mit einer Aufgabe getestet, die minütlich ausgeführt werden soll: Schreibe einen Zeitstempel in die Datei /tmp/crond.test.

 $ crontab -e

bietet die Möglichkeit, crontab-Dateien mit dem Standard-Texteditor zu bearbeiten. Stattdessen können crontab-Dateien (vom Systemadministrator) direkt mit einem Texteditor bearbeitet werden, z.B.:

 # nano /var/spool/cron/crontabs/root

Fügen Sie die Zeile

 * * * * * date >> /tmp/crond.test 

ein.

Wenn der Systemadministrator crond mit der Kommandoprozedur /etc/init.d/crond gestartet hat,

 # /etc/init.d/crond start

kann nach einigen Minuten der Inhalt der Datei /tmp/crond.test betrachtet werden:

 $ cat /tmp/crond.test

Der Hintergrundprozess crond wird mit

 # /etc/init.d/crond stop
 oder
 # /etc/init.d/crond restart

beendet oder neu gestartet.

Hintergrundprozess crond bei der Systemeinleitung starten

Um den Hintergrundprozess crond bei jeder Systemeinleitung zu starten, muss nur die Variable START_DAEMONS in der Konfigurationsdatei /etc/rcS.conf um crond erweitert werden, egal ob vor oder nach Webserver oder SSH-Server.

Zusätzliche Kommandos bei der Systemeinleitung

Während der Systemeinleitung werden verschiedene Kommandoprozeduren ausgeführt, um Dienste zu konfigurieren, so wie der Start des Webservers, Netzwerkverbindungen usw. In SliTaz gibt es eine Kommandoprozedur /etc/init.d/local.sh, in die Kommandos eingefügt werden können, die bei der Systemeinleitung ausgeführt werden sollen.

 # nano /etc/init.d/local.sh 

Es können auch neue Kommandoprozeduren im Verzeichnis /etc/init.d angelegt werden, die zum Starten in die entsprechenden Variablen in /etc/rcS.conf eingetragen werden müssen.

 
de/handbook/systemutils.txt · Last modified: 2022/08/13 18:45 by hgt