Vollbildmodus: Seiteninhalt ohne Menus

Administration

Goldene Regeln

  • nicht nur reaktiv sondern proaktiv agieren: Wer nur Feuer löscht kommt irgendwann nicht mehr nach
  • Das Netz an einer zentralen Stelle dokumentieren
  • Rechner übersichtlich lassen (ein fremder admin sollte also alles finden können, vor allem init-Skripte usw.)
  • Notfallpläne entwerfen

Unterseiten

Links

Dokumente

Themen

  • Hilfe/Dokumentation (man + Kategorien! [man man], info, apropos, whatis) tldp.org, lok. user groups, irc, foren, mailinglisten
  • Hardware-Erkennung: lsusb, lshal, lspci, lshw
    • kudzu: RedHat, Fedora
    • hwsetup: Knoppix
    • discover Debian Mandriva?
    • hwinfo SuSE
    • Harddrake Mandriva
    • HotPlug für hotplug-Geräte wie FireWire, USB usw.
  • Bootmanager und Bootprozess, Runlevel (init 1 bzw. heute sein symlink telinit, /etc/inittab), initrd
  • shutdown (init 0, halt, shutdown -h now oder +10 für 10min, -r = reboot, shutdown -c) Server zeitgesteuert herunterfahren
  • Dateisystemaufbau ( /proc !)
  • Umleitungen der Eingabe- und Ausgabe, UNIX Pipes und Streams
  • Devices (LPI 1 S.153), Dateitypen (sockets, fifos, …)
  • Kernel (Versionen, Branches , uname -a)
  • Dateisysteme und Formatierung (Journaling, inodes, superblock, sym- / hardlinks, Dateisystemchecks: tune2fs), FIXME
    • Mounten / Mountoptionen / Automounter / Freigaben mounten
    • Dateimanagement: ls, cd, mkdir, rm, rmdir, cp, mv, ln, touch, df, du (du / -ah | sort -nr | less) , pwd, cat, grep, wc, head, tail, less, more
    • offene Dateien: lsof (offene Datei anzeigen) und fuser -u (Wer hat die Datei geöffnet?)
    • Bibliotheken: ldd (Abhängigkeiten), ltrace (wann werden diese Bibl. aufgerufen?)
  • System- und Umgebungsvariablen (env oder printenv, export, set)
  • Cronjobs (Verzeichnisse /etc/cron.daily etc. crontab -l + -e)
  • Rechte (chown, chmod, su, sudo, /etc/sudoers, SUID, SGID usw.), Quota (quota, edquota, repquota, quotaon)
    • Benutzer: (hinzufügen: users, useradd (adduser), usermod, userdel, chfn, chsh, deaktivieren, PAM, Dateien wie shadow, visudo, vigr (group), vipw (passwd), wohl nicht mehr nötig: pwconv; UID 500/1000, GID 100) chage. siehe hier
    • Gruppen: groups, groupadd (addgroup), groupmod, groupdel, newgrp
    • login (id, w, who, whoami, last, lastb, /etc/motd, issue + issue.net, shell, home, /etc/skel , etc/profile /etc/.bashrc (bei nicht netzlogins, aber oft include).
  • Dienstekonzept (Daemons) FIXME(Seite)
  • SWAP (mkswap, swapon, swapoff), Verteilung auf mehrere Festplatten, wenn er mit gleicher Priorität für mehrere Partitionen aufgerufen wird:
    /dev/sda2       none            swap    sw,pri=1
    /dev/sdb2       none            swap    sw,pri=1

    /proc/sys/vm/swappiness (50-60 normal, höher = mehr swapping): Einstellung vm.swappiness=60 in /etc/sysctl.conf

  • Software installieren (kompilieren, Paketmanager)
  • Tastenkombinationen (strg-alt-f1-6 ; strg-alt-backspace, alt-z, alt-d,)
  • Shells (shells, alias, ncurses, history, auto-completion), terminal, console
  • Konsolen, (Virtuelle) Terminals, Tastenkombinationen

Netzwerk

  • Drucker / Weg durch das Drucksystem (Cups: webinterface, /etc/cups/cupsd.conf /etc/cups/printers.conf; lpd: /etc/printcap, lpq, lp, lpr, lpc, lprm)

Prozesskontrolle und Prioritäten

  • Prozesse (nohup, ps, pstree, pkill, pgrep, stoppen, resume, killen, htop + top, vmstat, zombie);
  • Priorität: (re)nice, chrt, taskset, ionice
Befehl Beispielaufruf Zweck des Programms
kill kill PID killt einzelne Prozesse nach ihrer Prozess-ID (PID), -9 SIGKILL
killall killt (mehrere) Prozesse nach ihrem Namen
ps laufende Prozesse
pgrep / pkill pgrep -u root sshd sucht/killt Prozessnamen
top laufende Prozesse mit Ressourcenverbrauch; :!: htop: viel besser als top, ncurses-Oberfläche, interaktiv

Debugging

  • strace startet Programme und gibt deren Aufrufe wieder.
Aufruf Wirkung
strace programm startet programm und gibt dessen Systemaufrufe auf dem Bildschirm aus
strace -o prog.log programm wie oben, aber Ausgabe in prog.log Logdatei
strace -f -o prog.log programm wie oben, aber verfolgt auch Kindprozesse
strace -p pid verfolge die Aufrufe des laufenden Prozesses mit Prozess-ID pid
strace -e trace=open,close,read,write gibt nur Systemaufrufe aus, die das Dateimanagement betreffen
  • GDB: The GNU Project Debugger FIXME

Hardware Diagnose-Tools

  • Lüfterdrehzahlen und Temperaturen (Paket lm-sensors):
    sensors
  • Arbeitsspeicher: cat /proc/meminfo bzw. cat /proc/mtrr
  • DMA: hdparm
  • Geräte IDs anzeigen: lshal
    • PCI-Geräte: lspci
    • USB-Geräte: lsusb
  • Grafikkarte: xrandr
  • S.M.A.R.T.-Status für Festplatten: smartmontools (siehe S.M.A.R.T.- und Temperaturstatus auslesen)
  • PCMCIA: pccardctl status
  • Taktregelung der CPU
    • Paket cpufrequtils:
      cpufreq-info
    • auch ein Gnome-applet mit der gleichen Funktionalität verfügbar
    • Direktzugriff mittels sysfs (Einheit ist Hz, cpu0 ist der erste Kern, cpu1 der zweite usw.; Ändern der Werte einfach möglich z.B. 1 Ghz als Minimaltakt einstellen wäre
      echo "1000000" > /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq
      • Governor einstellen (userspace, conservative, …)
        cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
      • Liste der Governors anzeigen:
        cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
      • minimale CPU-Frequenz: /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq
      • maximale CPU-Frequenz: /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq
      • Geschwindigkeit einstellen (userspace governor): /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
      • Statistiken:
        • cat /sys/devices/system/cpu/cpu0/cpufreq/stats/total_trans
        • cat /sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state
      • mit Debian-Paket sysfsutils kann man Einstellungen in /etc/sysfs.conf dauerhaft hintelegen, z. B.
        devices/system/cpu/cpu0/cpufreq/scaling_min_freq = 3100000
  • I/O (auch: E/A = Eingabe/Ausgabe-operationen auf Datenspeichern wie Festplatte)
    • :!: Tools des „sysstat“-Pakets (sar, mpstat, iostat, sadf und sa; Auswertung z.B. mit ksar) für Linux sollte man sich anschauen.
    • iotop für eine schnelle Anzeige welches Programm gerade I/O-Belastung verursacht
    • unbekannte Dateien identifizieren: file (Dateityp anhand von typischen Zeichenketten erkennen lassen) und strings (druckbare Zeichen einer Datei ausgeben)

Distributionen

Kurs-Know-how

  • gems: Den Inhalt einer Console auf mehrere Rechner übertragen

Konfigurationsskripte

Alle systemweiten Konfigurationsdateien finden sich unter /etc. Für einige gibt es praktische Konfigurationsskripte, die den Einstieg sehr vereinfachen. Hier eine Auswahl der vorhandenen Skripte:

Befehl Erklärung
baseconfig Basiskonfiguration
apacheconfig Webserver Apache
eximconfig Mailserver exim
gpmconfig Maus-Einstellungen für die Konsole
kbdconfig Tastatur einrichten
liloconfig Bootmanager LILO konfigurieren
magicfilterconfig Drucker
pppconfig Verbindung zum ISP anlegen
tzconfig Zeitzone einstellen. Direkt auf Berlin setzen:
cp /usr/share/zoneinfo/Europe/Berlin /etc/localtime

Welche (weiteren) im Einzelnen zur Verfügung stehen, ist abhängig von den installierten Paketen. Prinzipiell sind sie über den Befehl „ls /usr/sbin/*config“ zu finden.

Einstellungen Versionieren

Das Verzeichnis /etc sollte auf Servern mit mehreren Administratoren oder allgemein auf wichtigen System versioniert werden. Dazu lassen sich entweder Versionsverwaltungssysteme benutzen oder alternativ spezialisierte Tools wie metche verwenden.

Systemlimits

  • server:Quota
  • allgemeine Limits: ulimit -n

Bücherempfehlungen

  • Kurzreferenzen: Linux kurz&gut (O`Reilly): Teil einer Reihe, gibts auch für Apache, MySQL, PHP
  • Komplettwerk: Linux (M. Kofler, Addison-Wesley)
  • Apache: Apache Webserver 2 (S. Wolfgarten, Addison-Wesley)
  • MySQL: MySQL 5 (M. Kofler, Addison-Wesley)

alte Unterlagen

 
linux/administration.txt · Zuletzt geändert: 2010/07/30 18:33 von st
 
Backlinks: [[linux:administration]]

News