SliTaz GNU/Linux official and community documentation wiki.
.png
This translation is older than the original page and might be outdated. See what has changed.
Translations of this page:

This is an old revision of the document!


Systemverwaltung

Geräte und Datenträger

Linux betrachtet Platten und USB-Speichermedien als Geräte. Um auf Speichermedien zugreifen zu können, müssen sie als Gerät in einem Einhängepunkt (Verzeichnis) eingehängt werden. Unter SliTaz kann dies mit dem grafischen Programm mountbox oder über ein Kommando 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/hda1 /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/sda1 /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 können Partitionen mit NTFS-Dateisystemen grafisch 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 ein wie ein lokales Gerät.

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

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 -gi linux-nfsd
# tazpkg -gi 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
# mount server:/usb1 /mnt/usbdrive1

Beachten Sie das spezielle Format zur Angabe des Dateisystems: Rechnername:Einhängepunkt. Der angegebene Einhängepunkt (das Verzeichnis) muss natürlich im Klienten vorhanden sein.

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 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 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 Benutzerkennung

# 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/kmap.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 

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

 $ locale -a
 $ locale

anzeigen lassen.

benutzerspezifischer Kommandointerpreter

SliTaz verwendet den in busybox enthaltenen Kommandointerpreter ash, der mit sh verknüpft ist. Ash is einfach, schnell und standardkonform. Zum Ändern des Standard-Kommandointerpreters einer Benutzerkennung kann das entsprechende Feld in der Datei /etc/passwd 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: executed by Bourne-compatible login shells.
#

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

# Umgebungsvariablen.
export EDITOR=nano

Kommandointerpreter bash

SliTaz enthält in Busybox die Kommandointerpreter ash und sh (verknüpft mit ash). 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 (/bin/sh durch /bin/bash ersetzen):

 # tazpkg get-install bash
 # cp /home/hacker/.profile /home/hacker/.bashrc
 Note root user: cp /home/hacker/.profile ~/.bashrc
 # nano /etc/passwd   ~ :/bin/bash

Nach der nächsten Anmeldung 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 abgemagerte 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 -s synchronisieren:

 # rdate -s ptbtime2.ptb.de 

Die Zeit, die der ferne Rechner liefert, kann mit dem Kommando rdate -p 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! This means it may not be such a good idea to configure a particular server as your time source, not even two or three. After a while you may find out that none of them is active any more and your time is drifting freely! A better way is to use the service from ntp.org.( http://www.ntp.org/ ) They provide pools of ntp servers per country or region. Selecting one of these provides a more reliable connection to an ntp time source.

Although Slitaz is a small distribution, it provides several ntp implementations. Most notably:

1: busybox ntpd (included in the base installation). Using busybox ntpd from the command line:

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

2: ntp.tazpkg (install from packages repository). To install ntp.tazpkg:

 # tazpkg -gi ntp 

This package includes a decent set of ntp related binaries + the config file /etc/init.d/ntp

# tazpkg list-files ntp

Installed files with: ntp
=========================
/etc/init.d/ntp
/etc/ntp.conf
/usr/bin/ntpd
/usr/bin/ntpdate
/usr/bin/ntpdc
/usr/bin/ntp-keygen
/usr/bin/ntpq
/usr/bin/ntptime
/usr/bin/ntptrace
/usr/bin/ntp-wait
/usr/bin/sntp
/usr/bin/tickadj

Be aware that Slitaz has several ntp daemons available. We have the Busybox app but also the ntp package. Both provide virtually the same functionality. If you have limited resources, the busybox version can provide all you need. If you want all the diagnostic stuff as well, you should rather go for installing ntp.tazpkg.

NTP-Hintergrundprozess bei der Systemeinleitung starten

Probably the easiest way to start busybox ntpd at boot is to add an entry like above to /etc/init.d/local.sh. The explanation below focuses on ntp.tazpkg. It is unclear which one was intended by the developers to be started by the Server Manager. This can be somewhat confusing. The verified way to configure the ntp daemon is to use the command line as detailed below.

To start /usr/bin/ntpd (ntp.tazpkg) at boot:

1: Make sure to install the package as shown above ;-).

2: Edit /etc/daemons.conf as follows:

Add one line at the end: 
 NTP_OPTIONS="-p xx.pool.ntp.org" (where xx = country.)

The ntp daemon gets it options from /etc/daemons.conf. The configuration file /etc/ntp.conf which is referred to by the Server Manager seems to be unused and may be deleted.

3: Edit /etc/rcS.conf as follows:

On the line with daemons to start, add ntp to the list:
 RUN_DAEMONS="inetd dbus hald slim firewall httpd ntp " 

Make sure to enter just ntp, not ntpd! The name is a reference to /etc/init.d/ntp

These are the required steps. After completion, you may reboot to verify everything is indeed working as expected.

Use the following to check if the daemon is running:

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

In this example, the first line shows the process we want to see.

Use /etc/init.d/ntp {start | stop | restart} to control the ntp daemon or specify the full path. (/usr/bin/ntpd) Using ntpd on the command line without the full path causes the busybox version to be invoked.

Prüfen, ob ntpd richtig arbeitet

You may use ntpq to verify your connection to ntp servers

# 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

The * at the start of a line indicates the server you are currently synchronized to.

The column “st” shows the stratum or quality of the time source. 1 is best, 16 means unavailable. Important to check are the columns “reach” and those behind. Reach should be 377, everything else means polls were missed. Your daemon should be running for a while to get reliable output.

Hwclock

Hwclock allows you to synchronize the time of your hardware clock to the system clock or vice versa.

Synchronize the system clock to the hardware clock ( --utc = universal time, -l = local time ):

 # hwclock -w --utc 

Synchronize the hardware clock to the system clock:

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

Indicates that the Hardware Clock is kept in Coordinated Universal Time or local time, respectively. It is your choice whether to keep your clock in UTC or local time, but nothing in the clock tells which you've chosen. So this option is how you give that information to hwclock. If you specify the wrong one of these options (or specify neither and take a wrong default), both setting and querying of the Hardware Clock will be messed up.

On slitaz, hwclock must always be set to UTC. The result of a non-UTC hardware clock setting is an incorrect time for your timezone.

Synchronizing the hwclock with ntp

There are several ways to set the hardware clock to ntp time:

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

OR:

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

Alternative three: (quite old, may not work on all servers)

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

Note that in all examples we used the -u option to set hwclock to UTC time.

Further reading: http://linux.die.net/man/8/hwclock

Execute scheduled commands

The daemon 'crond' allows you to run commands automatically at a scheduled specific date or time. This is very useful for routine tasks such as system administration. The directory cron uses is /var/spool/cron/crontabs.

Each user on the system can have his/her own tasks, they are defined in the file: /var/spool/cron/crontabs/user. You must be root to edit this file. The crontab utility allows you (amongst other things), to list the tasks specific to the user.

# crontab -l <== To list the crontab for user root.
OR:
# crontab -l -u tux <== To list the crontab for another user.

The syntax of the crontab files is as follows:

 mm hh dd MMM DDD command > log 

We will create a file with root privileges and test the daemon 'crond' with a task performed every minute - writing the date to a file /tmp/crond.test. It should be noted that the utility has an option crontab for editing cron file using 'vi', this is not provided by SliTaz. In its place you can use GNU nano (<Ctrl+X> to save & exit):

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

Add the line:

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

Launch crond with the option -b (background), configured via /etc/daemons.conf and using the startup script:

 # /etc/init.d/crond start 

You can wait a few minutes and view the contents of the file: /tmp/crond.test… OK:

 # cat /tmp/crond.test 

To stop or restart the daemon crond:

 # /etc/init.d/crond stop
 Or :
 # /etc/init.d/crond restart

Invoke the daemon crond on every boot

To launch the daemon 'crond' each time you boot the system, just add it to the variable START_DAEMONS in the configuration file /etc/rcS.conf, either before or after the web server or SSH server.

Add commands to be executed at boot

During the boot process, various scripts are executed to configure services, such as the start of the web server, networking, etc. On SliTaz there is a script /etc/init.d/local.sh which allows you to add commands to be launched at system startup. You can also create new scripts in /etc/init.d, their links in /etc/rc.scripts for shell scripts and use /etc/rc.d for links to the startup script daemon in /etc/rcS.conf:

 # nano /etc/init.d/local.sh 
 
de/handbook/systemutils.1480179004.txt.gz · Last modified: 2016/11/26 17:50 by hgt