sd


Fichier Détails

Cartes-fiches 182
Langue Deutsch
Catégorie Informatique
Niveau Autres
Crée / Actualisé 25.04.2025 / 27.04.2025
Lien de web
https://card2brain.ch/box/20250425_sad
Intégrer
<iframe src="https://card2brain.ch/box/20250425_sad/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>

Befehle für die Prozess-Überwachung:

"ps" -> einmalige Anzeige von Prozessen
"top" -> dynamische, laufende Prozessanzeige
"htop" -> bessere, farbige Alternative zu top
"pstree" ->  Prozesse als Baum darstellen

"iotop" I/O-Operationen der Prozesse anzeigen

Befehle um Prozesse zu steuern:

"kill PID" -> Prozess freundlich beenden (SIGTERM)
"kill -9 PID" -> Prozess hart beenden (SIGKILL)
"jobs" -> Hintergrundjobs anzeigen
"fg %jobnummer" -> Hintergrundprozess wieder in Vordergrund holen
 

Was versteht man unter Docker?

- Docker ist ein Container-Engine für das Erstellen, Starten und Verwalten von Linux-Containern

- Container sind isolierte Umgebungen für Anwendungen, sie teilen sich den Kernel des Hosts, enthalten aber alles andere selbst.

- Docker basiert auf Open Source, einige Versionen enthalten proprietäre Komponenten

Vergleich Container vs. Virtuelle Maschinen:

cool

 

Was sind die Grundbegriffe der Docker?

Dockerfile -> Textdatei mit Bauanleitung für ein Image
Layer -> Einzelne Schichten eines Images, jede Aktion erzeigt einen neuen Layer
Image -> Vorlage für Container, schreibgeschützt, basierend auf Layern
Container -> Laufendes Exemplar eines Images
Docker Hub -> Zentrales Online-Respository für Images

Docker Installation & Serveice Handling:

"sudo apt install docker.io"
"systemctl start docker"
"systemctl enable docker"
"systemctl status docker"
"docker info"

Docker-Handling - Befehle:

"docker pull nginx" -> Image herunterladen
"docker run -d --name my_nginx -p 80:80 nginx" -> Container starten
"docker ps" -> laufende Container
"docker ps -a" -> Alle Container anzeigen
"docker stop my_nginx" -> Container stoppen
"docker rm my_nginx" -> Container löschen
"docker rmi nginx" -> Image löschen

Datenhaltung in Docker:

Volumes -> Docker verwaltet die Daten in /var/lib/docker/volumes/. Persistente, sichere Speicherung
Bind Mounts -> Direkter Zugriff auf Host-Dateien/Verzeichnisse. Flexibel, aber riskanter
tmpfs -> Flüchtoge Speicherung im RAM, keine Speicherung auf Platte. Ideal für sensitive Daten.

Volume erstellen:
docker volume create mein_volume
docker run -v mein_volume:/app nginx

Netzwerke in Docker:

Bridge -> Standard. Container kommunizieren privat über virtuelles Netz.
Host -> Container nutzt direkt das Hostnetzwerk
Overlay -> Netzwerke über mehrere Hosts (Cluster) - für Docker Swarm
Macvlan -> Container bekommt eigene MAC-Adresse, wird als echted Gerät sichtbar

Wie baut man selsbt ein Image? 

cool

Was passiert, wenn ein Image nicht lokal vorhanden ist?

- Es wird automatisch aus dem Docker-Hub heruntergeladen

Wie speichert man Docker Daten dauerhaft?

Mit Volumens oder Bind Mounts

Wie öffnet man Ports im Dockerfile?

mit EXPOSE 80

Ablauf Docker :

Dockerfile -> docker build -> Image -> docker run -> Container läuft!

Dockerfile Enthält Befehle zum Erstellen eines Images

docker build Baut ein neues Image aus dem Dockerfile

docker run Startet einen Container aus dem fertigen Image

Warum sind Zeitsynchronisation wichtig?

- Prozesse korrekt koordinieren -> z.B. gleichzeitiges Starten auf Servern
- Logfiles auswerten -> Richtige Zeitstempel in Logs
- Zertifikate und Passwörter -> Ablaufdaten hängen von korrekter Zeit ab
- Sicherheit & Authentifizierung -> Viele Systeme verlangen exakt gleiceh Uhrzeit
- Börsenhandel, Transaktionen -> "Wer war zuerst?" hängt von der Uhrzeit ab

UTC (Coordinated Universal Time) als Grundlage:

UTC -> Koordinierte Weltzeit, basierend auf Atomuhren
SI-Sekunde -> Exakte Dauer, gemessen an Caesium-Atomen
Atomuhren -> Sehr genaue Zeitmessungen weltweit
Einführung -> 1972, löste Greenwich Mean Time (GMT) ab

Was ist NTP (Network Time Protocol)
 

- Zweck: Synchronisation der Systemuhren über Netzwerke
- Protokoll: UDP (Port 123)
Hierachie: 

Stratum 0 -> Physikalische Referenz (Atomuhren, GPS)
Stratum 1 -> Direkte Server (Anbindung an Stratum 0)
Stratum 2 -> Server, dei von Stratum 1 synchronisieren
Client -> Synchronisieren von Server

Linux NTP Installation und Überprüfung:

"sudo apt install ntp"
"systemctl status ntp"
"less /etc/ntpsec/ntp.conf" -> Konfiguration ansehen
"sudo systemctl restart ntp"

pool 0.ch.pool.ntp.org iburst
pool 1.ch.pool.ntp.org iburst

Statt NTP - systemd-timesyncd:

- Leichtgewichtigter NTP-Client integriert in systemd

sudo systemctl status systemd-timesyncd.service

Konfiguration:
/etc/systemd/timesyncd.conf

Gründe für korrekt synchronisierte Uhren?

- Richtige Reihenfolge bei Prozessen
- Gültigkeit von Zertifikaten und Logdateien

Warum Monitoring?

Frühzeitige Problemerkennung -> Bevor Dienste ausfallen
Ursachenanalyse -> Nach einem Ausfall die Fehlerursache finden
Ressourcenmanagement -> Kapazitäten planen und optimieren
SLA-Überwachung -> Einhaltung garantierter Verfügbarkeiten

Was wird alles gemonitored?

Serververfügbarkeit -> Ist der Webserver erreichbar?
Bandbreitenauslastung -> Frühwarnsystem bei Netzwerkkollaps
Temperaturüberwachung -> Ausfall von Lüftern erkennen
Webserver-Antwortzeiten -> HTTP-Content wird geprüft

Wichtige Monitoring Werkzeuge:
 

cool

Logging unter Linux:

Logging -> Protokollierung aller wichtigen Ereignisse
logrotate -> Automatische Rotation und Komprimierung alter Logs
systemd-journald -> Moderner Logservice, kryptografisch abgesichert

Wichtige Verzeichnisse:
/var/log/
/var/log/apt/
/var/log/syslog
/var/log/auth.log

Wichtige Befehle für Logs:

"journalctl" -> Systemweite Logs anzeigen
"journalctl -u dienst" -> Logs eines bestimmten Dienstes
"tail -f /var/log/syslog" -> Live Monitoring der Logdatei (Follow)
"logger" -> Manuell Logmeldungen erzeugen

Was sind die 3 Standrad I/O Kanäle?

0, stdin, Tastatur - Input
1, stdout, Bildschirm - Output
2, stderr, Bildschirm - Error

Welche Auskunft erhält man mit echo $0?

Welche Shell läuft

Sie möchten das Programm Crunch im Hintergrund laufen lassen, wie lautet der Befehl?

crunch &

 

Was ist $PATH?

In $PATH werden wichtige Verzeichnisse festgehalten, die ausführbare Programmdateien enthalten, damit diese mit einem einfachen Befehlsaufruf (ohne gesamten absoluten Pfad) ausgeführt werden können.

In welcher Datei sind Paketquellen konfiguriert?

In /etc/apt/sources.list oder /etc/apt/sources.list.d

oder direkt sudo apt sources-list

Was sind Account die als Shell "nologin" konfiguriert haben?

Die Accounts können sich nicht anmelden. Sie sollen nur Programme ausführen können.

Wo befindet sich die DNS Konfiguration?

/etc/resolv.conf

 

Mit welchem Befehl sehen Sie alle IP Einträge der Geräte innerhalb des Netzwerks? (ARP Tabelle)

 

ip n

-IP des Nachbars
- Interface über das kommuniziert wird (ens3)
- MAC- Adresse 

Was bedeutet Loopback Interface?

Virtuelle Netzwerkschnittstelle, über die ein Gerät mich sich selber kommunizieren kann, ohne das physische Netz zu benutzen.

Was sind Ports und was sind well known Ports?

Ports sind Schnittstellen, über die Programme Daten senden und Empfangen. Die Zuordnung ist wichtig, damit die Daten an das richtige Ziel gelangen.

Well known Ports sind Standard Ports für bestimmte Dienste, z.B. HTTPS -> 443
 

Was ist ein absoluter Pfad?

Ein Pfad der mit / beginnt, also vom Root-Verzeichnis ausgeht.

Was ist ein relativer Pfad?

Ein Pfad der im Verzeichnis beginnt in dem man sich im Moment befindet. Kann in Linux nicht mit einem / beginnen.

Was ist ein Symlink und wie ist die Notation?

Notation: "l"
Eine Verknüpfung von einer Datei

Was sind Pseudo-Dateisysteme?

Profcs (processing filesystem) dienen zur Anzeige und Änderung von System- und Prozessparametern. Sind in /proc/ eingebunden. Laufen im RAM

- cpuinfo
- devices

- swaps

Welche Metadaten werden in Inodes gespeichert?

- Art der Datei
- Eigentümer
- Zugriffsrechte
- Zeitpunkte
- Linkzähler
- Grösse

- Verweise auf Datenblöcke