diff --git a/7.html b/7.html index 49c149e..7da5abb 100644 --- a/7.html +++ b/7.html @@ -222,6 +222,9 @@ drwxrwxrwt 18 root root 114688 Jan 16 20:29 /tmp// +
+ Aufgabe: Erstellt ein neues Verzeichnis "test". In diesem Verzeichnis eine Datei foo.bar. Ändert den Besitzer des Verz. auf root. Entzieht dem Verzeichnis die Leserechte für alle ausser den Besitzer. Versucht die Datei zu löschen. +

Part 1 - Benutzerverwaltung

diff --git a/8.html b/8.html index c9e918d..195f902 100644 --- a/8.html +++ b/8.html @@ -28,10 +28,12 @@ link.href = window.location.search.match( /print-pdf/gi ) ? 'css/print/pdf.css' : 'css/print/paper.css'; document.getElementsByTagName( 'head' )[0].appendChild( link ); + -
@@ -40,7 +42,7 @@

LINUX

Das universelle Betriebssystem

-

Eine Einführung - Teil 7 +

Eine Einführung - Teil 8

Deutsche Angestellten Akademie

@@ -51,50 +53,293 @@
-

Einstieg in die Systemverwaltung

+

Systemverwaltung

+
+
+ Begriff: daemon + +

Ein Systemdienst der automatisch startet und ohne Eingriffe arbeitet ( meistens :-) ) +

vgl. Dienste unter Windows +

Name endet oft mit „d“ +

+
+ +

Begriff: Runlevel

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
RunlevelBeschreibung +
0 + Shutdown. Alle Netzverbindungen werden geschlossen, Dateipuffer werden geschrieben, Mounts auf Partitionen werden entfernt (d. h. die im Verzeichnisbaum eingebundenen Datenträger werden ausgehängt). +
S + Single-User-Runlevel; niedrigster Systemzustand für Wartungsarbeiten, in dem ausschließlich Systemressourcen wie Festplatten oder Dateisysteme aktiv sind. +
1 + Einzelnutzerbetrieb ohne Netzwerk mit ausschließlich lokalen Ressourcen. In vielen Implementierungen identisch mit 'S'. +
2 + Lokaler Mehrnutzerbetrieb ohne Netzwerk mit ausschließlich lokalen Ressourcen. Unter einigen Linuxdistributionen (z. B. Debian) wird in Runlevel 2 auch das Netzwerk konfiguriert. +
3 + Netzwerkbetrieb, über das Netzwerk erreichbare Ressourcen sind nutzbar, eine grafische Oberfläche steht nicht zur Verfügung. Firewalls sollten aktiviert werden. +
4 + Ist normalerweise nicht definiert. Kann aber für diverse Dienste genutzt werden. +
5 + Wie 3, zusätzlich wird die grafische Oberfläche bereitgestellt. +
6 + Reboot. Alle Netzverbindungen werden geschlossen, Dateipuffer werden geschrieben, Mounts auf Partitionen werden entfernt. +
+
+ +
+

Part 5 - systemd

- + +
+
+ +
+ +

systemd ist organisiert mit +

+

+

+ Dateien: +

/lib/systemd/system/ -> default +

/etc/systemd/system/ -> custom +

+
+ +
+

Informationen anzeigen

+ + +
+ +
+

Dienste Steuern

+ +
+ +
+ +
+ + +
+

Eine unit

+
[Unit]
+Description=OpenBSD Secure Shell server
+After=network.target auditd.service
+ConditionPathExists=!/etc/ssh/sshd_not_to_be_run
+
+[Service]
+EnvironmentFile=-/etc/default/ssh
+ExecStartPre=/usr/sbin/sshd -t
+ExecStart=/usr/sbin/sshd -D $SSHD_OPTS
+ExecReload=/usr/sbin/sshd -t
+ExecReload=/bin/kill -HUP $MAINPID
+KillMode=process
+Restart=on-failure
+RestartPreventExitStatus=255
+Type=notify
+RuntimeDirectory=sshd
+RuntimeDirectoryMode=0755
+
+[Install]
+WantedBy=multi-user.target
+Alias=sshd.service
+		
+
+ + +
+ Aufgabe: Erstellt eine Unit und startet sie. +
+ /etc/systemd/system/simple-webserver.service +
[Unit]
+Description=Simple Web Server
+
+[Service]
+Type=simple
+ExecStart=/home/USERNAME-HIER-EINSETZEN/hello-web.sh
+
+[Install]
+WantedBy=multi-user.target
+
+						
+ ~/hello-web.sh +
#!/bin/bash 
+cd /home/
+python3 -m http.server 8082 
+
+ +
+ + +
+
systemctl start simple-webserver.service
+
systemctl status simple-webserver.service
+ Wenn das gescheitert sein sollte: +
journalctl -xe 
+
journalctl --unit=simple-webserver.service 
+
+ +
Browser öffnen: http://localhost:8082/BENUTZERNAME
+ +

Ändern der Standard-Units

+ + + +
+ +
+

Ensprechenungen der alten Runlevel und der neuen Targets

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SysV Runlevelsystemd TargetNotes +
0runlevel0.target, poweroff.targetHalt the system. +
1, s, singlerunlevel1.target, rescue.targetSingle user mode. +
2, 4runlevel2.target, runlevel4.target, multi-user.targetUser-defined/Site-specific runlevels. By default, identical to 3. +
3runlevel3.target, multi-user.targetMulti-user, non-graphical. Users can usually login via multiple consoles or via the network. +
5runlevel5.target, graphical.targetMulti-user, graphical. Usually has all the services of runlevel 3 plus a graphical login. +
6runlevel6.target, reboot.targetReboot +
emergencyemergency.targetEmergency shell +
+
+ +
+ Ausserdem: + + +
+ + +
+

journalctl

+ Das logging system moderner Linux Distributionen. +
+ +
+

systemctl

+
+
-

Part 3 - daemons

+

Part 5 - daemons

-

Part 4 - Uhrzeit und Datum

-
- -
-

Part 5 - Zeitgesteuerte Jobs

-
- -
-

Part 6 - Cron

+

Part 6 - Uhrzeit und Datum

Part 7 - Startup / Shutdown

-
- +

Der Boot-Ablauf mit systemd

+ +

Das initramfs ist ein komprimiertes Archiv, das für den Systemstart benötigte Dateien enthält.

- - - - - - - - - -
- - - diff --git a/beispiele/8/hello-web.service b/beispiele/8/hello-web.service new file mode 100644 index 0000000..63377d6 --- /dev/null +++ b/beispiele/8/hello-web.service @@ -0,0 +1,9 @@ +[Unit] +Description=Simple WSGI Server + +[Service] +Type=simple +ExecStart=/home/USERNAME-HIER-EINSETZEN/hello-web.sh + +[Install] +WantedBy=multi-user.target diff --git a/beispiele/8/hello-web.sh b/beispiele/8/hello-web.sh new file mode 100644 index 0000000..c6b9397 --- /dev/null +++ b/beispiele/8/hello-web.sh @@ -0,0 +1,2 @@ +#!/bin/bash +cd /home/; python3 -m http.server 8082 \ No newline at end of file diff --git a/img/startup-systemd.png b/img/startup-systemd.png new file mode 100644 index 0000000..2b86da4 Binary files /dev/null and b/img/startup-systemd.png differ diff --git a/index.html b/index.html index 90e0c49..82354f8 100644 --- a/index.html +++ b/index.html @@ -23,6 +23,7 @@
  • 5. Abend - Bash Scripting Fortsetzung
  • 6. Abend - vim / emacs
  • 7. Abend - Systemverwaltung
  • +
  • 8. Abend - Systemd
  • @@ -78,6 +79,9 @@
  • Offizielle emacs Seite
  • Emacs Basics
  • GNU Emacs Referenzkarte +

    systemd

    +
  • Arch Wiki - Systemd
  • +
  • Debian.org - Systemd