Compare commits
2 Commits
d4178cef62
...
1d46e29db2
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1d46e29db2 | ||
|
|
65c3fb63b1 |
18
README.md
@@ -18,11 +18,11 @@ Dieses Projekt enthält ein Bash-Skript und eine Umgebung zum automatischen Konv
|
|||||||
Alle Markdown-Dateien in mkdocs/docs pdfen:
|
Alle Markdown-Dateien in mkdocs/docs pdfen:
|
||||||
./mkdocs-complete.sh
|
./mkdocs-complete.sh
|
||||||
|
|
||||||
Einzelne Datei konvertieren:
|
Einzelne Datei konvertieren (Dateiname relativ zu `mkdocs/docs`):
|
||||||
./mkdocs-to-pdf.sh Linux_Unternehmen/nextcloud-ldap.md
|
./mkdocs-to-pdf.sh nextcloud-ldap.md
|
||||||
|
|
||||||
Mehrere Dateien gleichzeitig
|
Mehrere Dateien gleichzeitig
|
||||||
./mkdocs-to-pdf.sh basics/Einstieg_in_Linux-Desktop.md Linux_Unternehmen/linux-als-ad-client.md
|
./mkdocs-to-pdf.sh Einstieg_in_Linux-Desktop.md linux-als-ad-client.md
|
||||||
````
|
````
|
||||||
|
|
||||||
## Voraussetzungen
|
## Voraussetzungen
|
||||||
@@ -36,11 +36,11 @@ Mehrere Dateien gleichzeitig
|
|||||||
## Verzeichnisstruktur
|
## Verzeichnisstruktur
|
||||||
````
|
````
|
||||||
mkdocs/
|
mkdocs/
|
||||||
├── docs/ <- Markdown Quelldateien und Medien
|
├── docs/ <- Markdown Quelldateien und Medien (jetzt flach organisiert)
|
||||||
│ ├── Linux_Unternehmen/
|
│ ├── nextcloud-ldap.md
|
||||||
│ │ ├── nextcloud-ldap.md
|
│ ├── assets/
|
||||||
│ │ └── nextcloud-ldap-media/ <- Bilder für Markdown
|
│ │ └── nextcloud/ <- Bilder und Design-Assets für Nextcloud-Seite
|
||||||
│ └── basics/
|
│ └── ... (Markdown-Dateien liegen direkt im docs-Root)
|
||||||
├── mkdocs.yml <- MkDocs Konfigurationsdatei
|
├── mkdocs.yml <- MkDocs Konfigurationsdatei
|
||||||
└── site/ <- Ergebnis von MkDocs Build (HTML, PDF)
|
└── site/ <- Ergebnis von MkDocs Build (HTML, PDF)
|
||||||
````
|
````
|
||||||
@@ -52,7 +52,7 @@ text
|
|||||||
|
|
||||||
## Hinweise
|
## Hinweise
|
||||||
|
|
||||||
- Bildpfade in Markdown müssen relativ zum Markdown-Dokument korrekt sein (z.B. `./nextcloud-ldap-media/image1.png`)
|
- Bildpfade in Markdown müssen relativ zum Markdown‑Dokument korrekt sein (z.B. `assets/nextcloud/image1.png` oder `assets/nextcloud/design/Logo.png`)
|
||||||
- Änderungen an Markdown führen bei Ausführung des Skripts zur Neugenerierung der PDFs
|
- Änderungen an Markdown führen bei Ausführung des Skripts zur Neugenerierung der PDFs
|
||||||
- Vor dem Commit werden automatisch PDF-Download-Links hinzugefügt, wenn noch nicht vorhanden
|
- Vor dem Commit werden automatisch PDF-Download-Links hinzugefügt, wenn noch nicht vorhanden
|
||||||
|
|
||||||
|
|||||||
@@ -2,16 +2,16 @@
|
|||||||
|
|
||||||
MKDOCS_DIR="mkdocs/docs"
|
MKDOCS_DIR="mkdocs/docs"
|
||||||
|
|
||||||
# Einzelne Datei als Parameter übergeben
|
# Einzelne Datei als Parameter übergeben (Dateiname relativ zu mkdocs/docs)
|
||||||
if [ $# -eq 0 ]; then
|
if [ $# -eq 0 ]; then
|
||||||
echo "Usage: $0 <pfad/zur/datei.md> [z.B. Linux_Unternehmen/nextcloud-ldap.md]"
|
echo "Usage: $0 <datei.md> [z.B. nextcloud-ldap.md]"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
md_file="$MKDOCS_DIR/$1"
|
md_file="$MKDOCS_DIR/$1"
|
||||||
|
|
||||||
if [[ ! -f "$md_file" ]]; then
|
if [[ ! -f "$md_file" ]]; then
|
||||||
echo "Fehler: $md_file nicht gefunden!"
|
echo "Fehler: $md_file nicht gefunden! (Pfad: mkdocs/docs/)"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
137
mkdocs/docs/Automatisierung_mit_cron_und_systemd.md
Normal file
@@ -0,0 +1,137 @@
|
|||||||
|
````markdown
|
||||||
|
# Automatisierung mit cron und systemd
|
||||||
|
|
||||||
|
|
||||||
|
Stellen Sie sich vor, Sie betreiben einen Server oder eine Anwendung, die rund um die Uhr laufen muss. Als IT-Meister möchten Sie jederzeit nachvollziehen können, ob Ihr System aktiv ist und wann es zuletzt gestartet wurde. Dafür können Sie zwei klassische Linux-Automatisierungswerkzeuge nutzen:
|
||||||
|
|
||||||
|
* **Cronjob:** Führt regelmäßig Aufgaben aus, z.B. jede Minute, jede Stunde oder einmal täglich.
|
||||||
|
* **systemd-Unit:** Startet Aufgaben beim Systemstart oder zu bestimmten Ereignissen.
|
||||||
|
|
||||||
|
Mit diesen Werkzeugen können Sie z.B. eine Datei anlegen oder aktualisieren, um so einen „Herzschlag" (Heartbeat) Ihres Systems zu dokumentieren.
|
||||||
|
|
||||||
|
## Cron-Job: Jede Minute eine Datei aktualisieren
|
||||||
|
|
||||||
|
### Praxisbeispiel: Heartbeat-File
|
||||||
|
|
||||||
|
Sie möchten, dass jede Minute der Zeitstempel einer Datei (/tmp/heartbeat.txt) aktualisiert wird. Das ist nützlich, um zu prüfen, ob Cron und das System laufen.
|
||||||
|
|
||||||
|
**So geht's:**
|
||||||
|
|
||||||
|
Öffnen Sie die Crontab des aktuellen Benutzers:
|
||||||
|
|
||||||
|
```
|
||||||
|
crontab -e
|
||||||
|
```
|
||||||
|
|
||||||
|
Fügen Sie folgende Zeile hinzu:
|
||||||
|
|
||||||
|
```
|
||||||
|
* * * * * /usr/bin/touch /tmp/heartbeat.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
Jetzt wird jede Minute die Datei /tmp/heartbeat.txt neu angelegt oder ihr Zeitstempel aktualisiert. Prüfen Sie das ergebnis, indem Sie sich den Zeitstempel der neuen Datei anschauen:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ls -lah /tmp/heartbeat.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
\newpage
|
||||||
|
|
||||||
|
### Crontab-Syntax erklärt:
|
||||||
|
|
||||||
|
| Feld | Bedeutung | Wert im Beispiel | Bedeutung |
|
||||||
|
| ----------* | --------------* | --------------------------------* | ------------------* |
|
||||||
|
| Minute | 0-59 | \* | jede Minute |
|
||||||
|
| Stunde | 0-23 | \* | jede Stunde |
|
||||||
|
| Tag (Monat) | 1-31 | \* | jeder Tag |
|
||||||
|
| Monat | 1-12 | \* | jeder Monat |
|
||||||
|
| Tag (Woche) | 0-7 (0/7 = Son) | \* | jeder Wochentag |
|
||||||
|
| Befehl | Befehl | /usr/bin/touch /tmp/heartbeat.txt | Was wird ausgeführt |
|
||||||
|
|
||||||
|
**Beispiel:**
|
||||||
|
|
||||||
|
```
|
||||||
|
* * * * * /usr/bin/touch /tmp/heartbeat.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
→ Jede Minute wird die Datei angefasst („touched").
|
||||||
|
|
||||||
|
**Weitere Beispiele:**
|
||||||
|
|
||||||
|
```
|
||||||
|
0 0 * * * /usr/bin/touch /tmp/midnight.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
* \# jeden Tag um Mitternacht
|
||||||
|
|
||||||
|
```
|
||||||
|
*/5 * * * * /usr/bin/touch /tmp/every5min.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
* alle 5 Minuten beginnend 5 Minuten
|
||||||
|
|
||||||
|
## systemd-Unit: Datei beim Systemstart aktualisieren
|
||||||
|
|
||||||
|
### Praxisbeispiel: Boot-Marker
|
||||||
|
|
||||||
|
Sie möchten beim Systemstart eine Datei (/tmp/boot.txt) anlegen oder deren Zeitstempel aktualisieren, um den letzten Bootvorgang zu protokollieren.
|
||||||
|
|
||||||
|
**So geht's:**
|
||||||
|
|
||||||
|
Erstellen Sie eine neue systemd-Service-Datei:
|
||||||
|
|
||||||
|
```shellscript
|
||||||
|
sudo nano /etc/systemd/system/touch-at-boot.service
|
||||||
|
```
|
||||||
|
|
||||||
|
Fügen Sie folgenden Inhalt ein:
|
||||||
|
|
||||||
|
```ini
|
||||||
|
[Unit]
|
||||||
|
Description=Touch file at boot
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
ExecStart=/usr/bin/touch /tmp/boot.txt
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
```
|
||||||
|
|
||||||
|
1. Datei speichern und schließen.
|
||||||
|
2. Service aktivieren und testen:
|
||||||
|
|
||||||
|
```shellscript
|
||||||
|
sudo systemctl daemon-reload
|
||||||
|
sudo systemctl enable touch-at-boot.service
|
||||||
|
sudo systemctl start touch-at-boot.service
|
||||||
|
```
|
||||||
|
|
||||||
|
Nach jedem Neustart wird /tmp/boot.txt aktualisiert.
|
||||||
|
|
||||||
|
**systemd-Unit erklärt:**
|
||||||
|
|
||||||
|
```ini
|
||||||
|
[Unit]: Metadaten und Abhängigkeiten
|
||||||
|
Description: Kurze Beschreibung
|
||||||
|
[Service]: Was soll gemacht werden?
|
||||||
|
Type=oneshot: Einmaliger Befehl, kein dauerhafter Prozess der überwacht werden könnte
|
||||||
|
ExecStart: Der auszuführende Befehl
|
||||||
|
[Install]: Wann/wo soll der Service gestartet werden?
|
||||||
|
WantedBy=multi-user.target: Startet beim normalen Systemstart
|
||||||
|
```
|
||||||
|
|
||||||
|
**systemd-Kommandos:**
|
||||||
|
|
||||||
|
```shellscript
|
||||||
|
sudo systemctl start <service> # Service sofort starten
|
||||||
|
sudo systemctl enable <service> # Service beim Boot aktivieren
|
||||||
|
sudo systemctl status <service> # Status anzeigen
|
||||||
|
sudo systemctl stop <service> # Service stoppen
|
||||||
|
```
|
||||||
|
|
||||||
|
**Wann nutze ich was?**
|
||||||
|
|
||||||
|
* **Cronjob**: Für wiederkehrende Aufgaben (regelmäßig, z.B. jede Minute, stündlich, täglich)
|
||||||
|
* **systemd-Unit**: Für Aufgaben beim Systemstart, beim Herunterfahren oder bei bestimmten Ereignissen
|
||||||
|
````
|
||||||
87
mkdocs/docs/Einstieg_in_Linux-Desktop.md
Normal file
@@ -0,0 +1,87 @@
|
|||||||
|
````markdown
|
||||||
|
# Einstieg in Linux-Desktop
|
||||||
|
|
||||||
|
## Warum Linux? Weil es mehr kann!
|
||||||
|
Linux ist nicht nur ein Betriebssystem – es ist **Freiheit**. Keine Lizenzkosten, keine erzwungenen Updates, keine Datensammelwut. Stattdessen:
|
||||||
|
|
||||||
|
* **Volle Kontrolle** über dein System (keine Blackbox wie bei Windows/macOS).
|
||||||
|
* **Sicherheit** durch Open Source: Jeder kann den Code prüfen – Backdoors? Fehlanzeige!
|
||||||
|
* **Anpassbar** wie Lego: Von minimalistisch bis vollgepackt mit Tools – du entscheidest.
|
||||||
|
* **Perfekt für Entwickler, Maker & Tüftler**: Docker, Python, Server-Tools – alles läuft out-of-the-box.
|
||||||
|
* **Ressourcenschonend**: Läuft auch auf alter Hardware flüssig (z. B. als Media-Center oder NAS).
|
||||||
|
|
||||||
|
**Ihr Ziel heute:**
|
||||||
|
Sie richten einen **Ubuntu-Desktop in VirtualBox** ein, lernen die Oberfläche kennen und setzten ein **Mini-Projekt** um: **Einen lokalen Webserver mit Python**, den sie später sogar von ihrem Host-PC aus aufrufen können.
|
||||||
|
|
||||||
|
## Notieren Sie bei jedem Schritt:
|
||||||
|
|
||||||
|
* Welche Menüpunkte oder Symbole Sie verwendet haben.
|
||||||
|
* Was Ihnen besonders leicht oder schwer gefallen ist.
|
||||||
|
* Fragen oder Auffälligkeiten, die Ihnen beim Arbeiten begegnen.
|
||||||
|
|
||||||
|
## Benutzeroberfläche kennenlernen
|
||||||
|
|
||||||
|
* Erkunden Sie die Menüstruktur und das Anwendungsmenü.
|
||||||
|
* Passen Sie die Taskleiste an (z.B. Position ändern, Plugins wie CPU- oder Temperaturanzeige hinzufügen).
|
||||||
|
* Nutzen Sie die Systemtray-Symbole (Netzwerk, Bluetooth, Lautstärke).
|
||||||
|
* Öffnen Sie verschiedene Fenster und probieren Sie das Fenster-Management aus (Minimieren, Maximieren, Schließen, ausrichten am Seitenrand).
|
||||||
|
* Finden Sie heraus, wie Sie Programme an die Taskleiste oder das Startmenü anheften können.
|
||||||
|
|
||||||
|
## Tastatur-Layout und Sprache einstellen
|
||||||
|
|
||||||
|
* Öffnen Sie die Systemeinstellungen.
|
||||||
|
* Stellen Sie das Tastatur-Layout auf Deutsch (oder Ihr gewünschtes Layout) um.
|
||||||
|
* Passen Sie die Systemsprache an.
|
||||||
|
|
||||||
|
## Dateiverwaltung mit USB-Stick
|
||||||
|
|
||||||
|
* Stecken Sie Ihren USB-Stick ein und öffnen Sie ihn im Dateimanager.
|
||||||
|
* Erstellen Sie auf dem USB-Stick einen neuen Ordner mit Ihrem Namen.
|
||||||
|
* Kopieren Sie eine Datei von der VM auf den USB-Stick und umgekehrt.
|
||||||
|
* Entfernen Sie den USB-Stick sicher über die grafische Oberfläche.
|
||||||
|
|
||||||
|
## Sonderfall etz
|
||||||
|
|
||||||
|
!!! warning **Wichtiger Hinweis:**
|
||||||
|
Damit alle Teilnehmer im Kurs effizient Updates und Software installieren können, wird im Schulungsnetzwerk ein lokaler Paket-Cache (Proxy) verwendet.
|
||||||
|
**Diesen Schritt müssen Sie außerhalb der Schulungsstätte (z.B. zu Hause) nicht durchführen!**
|
||||||
|
|
||||||
|
So richten Sie den Proxy ein:
|
||||||
|
|
||||||
|
1. Öffnen Sie ein Terminal (z.B. über das Startmenü).
|
||||||
|
2. Geben Sie folgenden Befehl ein (ersetzen Sie ggf. die IP-Adresse, durch die im Kurs verwendete):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
echo 'Acquire::http::Proxy "http://10.10.224.119:3142";' | sudo tee /etc/apt/apt.conf.d/02proxy
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Fahren Sie anschließend wie gewohnt mit Updates und Installationen fort.
|
||||||
|
|
||||||
|
## VLC Media Player installieren (grafisch)
|
||||||
|
|
||||||
|
* Öffnen Sie den grafischen Paketmanager („Empfohlene Software“ oder „Add/Remove Software").
|
||||||
|
* Suchen Sie nach „VLC“.
|
||||||
|
* Installieren Sie den VLC Media Player.
|
||||||
|
|
||||||
|
Weitere Programme können Sie in einem kleinen Projekt ausprobieren: [Mein erstes kleines Linux Projekt](Mein_erstes_kleines_Linux-Projekt.md)
|
||||||
|
|
||||||
|
## System aktualisieren
|
||||||
|
|
||||||
|
* Öffnen Sie das grafische Update-Tool („Software Updater" oder „Update Manager").
|
||||||
|
* Starten Sie die Systemaktualisierung und folgen Sie den Anweisungen.
|
||||||
|
|
||||||
|
## Weiteren Benutzer anlegen und Rechte vergeben
|
||||||
|
|
||||||
|
* Öffnen Sie die Einstellungen für „Benutzer und Gruppen".
|
||||||
|
* Erstellen Sie einen neuen Benutzer mit einem selbst gewählten Namen.
|
||||||
|
* Geben Sie diesem Benutzer Administratorrechte (Mitglied der Gruppe „sudo" oder „Administratoren").
|
||||||
|
|
||||||
|
## Remote-Zugriff einrichten und testen
|
||||||
|
|
||||||
|
* Aktivieren Sie „SSH" und „RDP" für den Fernzugriff.
|
||||||
|
* Testen Sie den Remote-Zugriff auch von einem Windows-PC aus:
|
||||||
|
* Für SSH: Verwenden Sie z.B. das Programm „PuTTY" von ihrem Windows aus.
|
||||||
|
* Für RDP: Verwenden Sie Microsoft Remotedesktopverbindung
|
||||||
|
|
||||||
|
Versuchen Sie die Remotezugriffe auf eigene Faust einzurichten. Falls Sie doch lieber eine Schritt-für-Schritt-Anleitung möchten, finden Sie diese [hier](Remotezugriff_einrichten.md).
|
||||||
|
````
|
||||||
256
mkdocs/docs/Grundlagen_der_Konsole.md
Normal file
@@ -0,0 +1,256 @@
|
|||||||
|
````markdown
|
||||||
|
# Grundlagen der Konsole
|
||||||
|
|
||||||
|
## Installation nützlicher Programme
|
||||||
|
|
||||||
|
Bevor Sie beginnen, installieren Sie bitte folgende Programme, die Sie im Kurs benötigen:
|
||||||
|
|
||||||
|
* nano: Einfache Textbearbeitung im Terminal
|
||||||
|
* tree: Anzeige von Ordnerstrukturen
|
||||||
|
* htop: Übersichtliche Systemüberwachung
|
||||||
|
|
||||||
|
Führen Sie diesen Befehl im Terminal aus:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo apt update
|
||||||
|
sudo apt install nano tree htop
|
||||||
|
```
|
||||||
|
|
||||||
|
## Wo befinden Sie sich?
|
||||||
|
|
||||||
|
Lassen Sie sich das aktuelle Verzeichnis anzeigen.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pwd
|
||||||
|
```
|
||||||
|
|
||||||
|
Kurzbeispielausgabe:
|
||||||
|
```bash
|
||||||
|
/home/benutzer
|
||||||
|
```
|
||||||
|
|
||||||
|
## Wechseln Sie in Ihr Home-Verzeichnis.
|
||||||
|
|
||||||
|
Tipp: Das Home-Verzeichnis erreichen Sie mit:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd ~
|
||||||
|
```
|
||||||
|
|
||||||
|
Kurzbeispielausgabe nach cd:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pwd
|
||||||
|
/home/benutzer
|
||||||
|
```
|
||||||
|
|
||||||
|
## Erstellen Sie im Home-Verzeichnis einen Ordner „projekt".
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mkdir -p projekt
|
||||||
|
```
|
||||||
|
|
||||||
|
Prüfung:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ls
|
||||||
|
projekt
|
||||||
|
```
|
||||||
|
|
||||||
|
## Erstellen Sie darin zwei Unterordner „dokumente" und „bilder".
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mkdir -p projekt/dokumente projekt/bilder
|
||||||
|
```
|
||||||
|
|
||||||
|
Prüfung:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ls -lah projekt
|
||||||
|
```
|
||||||
|
|
||||||
|
## Wechseln Sie in den Ordner „projekt".
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd projekt
|
||||||
|
```
|
||||||
|
|
||||||
|
Prüfung:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pwd
|
||||||
|
/home/benutzer/projekt
|
||||||
|
```
|
||||||
|
|
||||||
|
## Erstellen Sie drei Textdateien: „notizen.txt", „aufgaben.txt", „ideen.txt".
|
||||||
|
|
||||||
|
```bash
|
||||||
|
touch notizen.txt aufgaben.txt ideen.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
Prüfung:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ls -la
|
||||||
|
tree
|
||||||
|
```
|
||||||
|
|
||||||
|
## Erstellen Sie zwei Bilddateien (Platzhalter): „bild1.jpg" und „bild2.jpg".
|
||||||
|
|
||||||
|
```bash
|
||||||
|
touch bild1.jpg bild2.jpg
|
||||||
|
```
|
||||||
|
|
||||||
|
Prüfung:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ls -la
|
||||||
|
tree
|
||||||
|
```
|
||||||
|
|
||||||
|
## Kopieren Sie „notizen.txt" und „aufgaben.txt" in den Ordner „dokumente".
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cp notizen.txt aufgaben.txt dokumente/
|
||||||
|
```
|
||||||
|
|
||||||
|
Prüfung:
|
||||||
|
```bash
|
||||||
|
tree
|
||||||
|
```
|
||||||
|
|
||||||
|
## Verschieben Sie „ideen.txt" in den Ordner „dokumente".
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mv ideen.txt dokumente/
|
||||||
|
```
|
||||||
|
|
||||||
|
Prüfung:
|
||||||
|
```bash
|
||||||
|
tree -a
|
||||||
|
```
|
||||||
|
|
||||||
|
## Verschieben Sie „bild1.jpg" und „bild2.jpg" in den Ordner „bilder".
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mv bild1.jpg bild2.jpg bilder/
|
||||||
|
```
|
||||||
|
|
||||||
|
Prüfung:
|
||||||
|
```bash
|
||||||
|
tree
|
||||||
|
```
|
||||||
|
|
||||||
|
## Zeigen Sie die Ordnerstruktur mit „tree" an.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
tree ~/projekt
|
||||||
|
```
|
||||||
|
|
||||||
|
Erweiterte Prüfung:
|
||||||
|
```bash
|
||||||
|
tree ~/projekt
|
||||||
|
```
|
||||||
|
|
||||||
|
## Öffnen Sie eine der Textdateien mit „nano" und schreiben Sie einen kurzen Text hinein.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
nano dokumente/notizen.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
!!! note Speichern Sie mit <kbd>strg</kbd>+<kbd>s</kbd>, beenden Sie mit <kbd>strg</kbd>+<kbd>X</kbd>.
|
||||||
|
|
||||||
|
Prüfung:
|
||||||
|
```bash
|
||||||
|
cat dokumente/notizen.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
## Zeigen Sie Ihre aktuelle IP-Adresse an.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ip address
|
||||||
|
```
|
||||||
|
|
||||||
|
Abgekürzte Beispielausgabe (IPv4):
|
||||||
|
```bash
|
||||||
|
2: eth0: <...>
|
||||||
|
inet 192.168.1.10/24 brd 192.168.1.255 scope global eth0
|
||||||
|
```
|
||||||
|
|
||||||
|
Alternative:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
hostname -I
|
||||||
|
```
|
||||||
|
|
||||||
|
Beispielausgabe:
|
||||||
|
```bash
|
||||||
|
192.168.1.10
|
||||||
|
```
|
||||||
|
|
||||||
|
## Überwachen Sie Ihr System mit „htop".
|
||||||
|
|
||||||
|
```bash
|
||||||
|
htop
|
||||||
|
```
|
||||||
|
|
||||||
|
Abgekürzte Beispielausgabe (nicht-interaktiv, Snap‑Shot):
|
||||||
|
```bash
|
||||||
|
PID USER PRI NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
|
||||||
|
1234 benutzer 20 0 150M 20M 8M S 1.2 0.5 0:01.23 python3
|
||||||
|
567 root 20 0 50M 5M 3M S 0.5 0.1 0:00.45 sshd
|
||||||
|
```
|
||||||
|
|
||||||
|
## Zeigen Sie die Speicherauslastung an.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
df -h
|
||||||
|
```
|
||||||
|
|
||||||
|
Abgekürzte Beispielausgabe:
|
||||||
|
```bash
|
||||||
|
Filesystem Size Used Avail Use% Mounted on
|
||||||
|
/dev/sda1 50G 12G 36G 25% /
|
||||||
|
```
|
||||||
|
|
||||||
|
## Zeigen Sie die Arbeitsspeicher-Auslastung an.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
free -h
|
||||||
|
```
|
||||||
|
|
||||||
|
Abgekürzte Beispielausgabe:
|
||||||
|
```bash
|
||||||
|
total used free shared buff/cache available
|
||||||
|
Mem: 7.8G 1.2G 4.8G 50M 1.8G 6.1G
|
||||||
|
Swap: 2.0G 0B 2.0G
|
||||||
|
```
|
||||||
|
|
||||||
|
## Wie finden Sie Hilfe zu einem Befehl?
|
||||||
|
|
||||||
|
```bash
|
||||||
|
man <Befehl>
|
||||||
|
```
|
||||||
|
|
||||||
|
Beispiel:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
man ls
|
||||||
|
```
|
||||||
|
!!! attention Zum verlassen <kbd>q</kbd> oder <kbd>strg</kbd>+<kbd>c</kbd>
|
||||||
|
|
||||||
|
## Zusatzaufgabe:
|
||||||
|
Erstellen Sie eine weitere Datei im Ordner „dokumente" und verschieben Sie diese anschließend in den Ordner „bilder". Zeigen Sie danach erneut die Struktur mit tree an.
|
||||||
|
|
||||||
|
Beispiel:
|
||||||
|
```bash
|
||||||
|
touch dokumente/zusatz.txt
|
||||||
|
echo "Testinhalt" > dokumente/zusatz.txt
|
||||||
|
mv dokumente/zusatz.txt bilder/
|
||||||
|
tree ~/projekt
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
!!! success Viel Erfolg beim Erkunden der Linux-Befehle und beim Organisieren Ihrer Dateien!
|
||||||
|
|
||||||
|
````
|
||||||
@@ -136,7 +136,7 @@ Fügen Sie folgende Optionen global (unter [global]) oder pro Freigabe ein:
|
|||||||
recycle:touch = yes # Zeitstempel anpassen
|
recycle:touch = yes # Zeitstempel anpassen
|
||||||
````
|
````
|
||||||
### 6.2 Automatische Bereinigung mit Cron
|
### 6.2 Automatische Bereinigung mit Cron
|
||||||
Fügen Sie einen [Cron-Job](../basics/Automatisierung_mit_cron_und_systemd.md) hinzu, um alte Dateien im Papierkorb zu löschen:
|
Fügen Sie einen [Cron-Job](Automatisierung_mit_cron_und_systemd.md) hinzu, um alte Dateien im Papierkorb zu löschen:
|
||||||
````bash
|
````bash
|
||||||
sudo crontab -e
|
sudo crontab -e
|
||||||
````
|
````
|
||||||
|
|||||||
@@ -248,4 +248,4 @@ Manuelles Backup mit rsync:
|
|||||||
sudo apt install rsync -y
|
sudo apt install rsync -y
|
||||||
rsync -av /home/meisterkurs/ /backup/meisterkurs/
|
rsync -av /home/meisterkurs/ /backup/meisterkurs/
|
||||||
````
|
````
|
||||||
!!! note Die Ordner sollten natürlich vorhanden sein, und der User ausreichende Berechtigung dazu haben. Siehe [Ordner erstellen](../basics/Grundlagen_der_Konsole.md) bzw. Berechtigungen in der [Samba-Anleitung](../basics/Windows_Freigaben_fuer_Linux-Einsteiger.md). Wie das regelmäßg gemacht wird, haben Sie schon mit [cron](../basics/Automatisierung_mit_cron_und_systemd.md) gelernt.
|
!!! note Die Ordner sollten natürlich vorhanden sein, und der User ausreichende Berechtigung dazu haben. Siehe [Ordner erstellen](Grundlagen_der_Konsole.md) bzw. Berechtigungen in der [Samba-Anleitung](Windows_Freigaben_fuer_Linux-Einsteiger.md). Wie das regelmäßg gemacht wird, haben Sie schon mit [cron](Automatisierung_mit_cron_und_systemd.md) gelernt.
|
||||||
|
|||||||
@@ -217,7 +217,7 @@ Apache Neustarten und Fertig
|
|||||||
|
|
||||||
## CronJob für regelmäßige Aktualisierung der Datenbank
|
## CronJob für regelmäßige Aktualisierung der Datenbank
|
||||||
|
|
||||||
NextCloud aktualisiert bei jedem Zugriff auf das Webinterface die Datenbank, allerdings kostet dies wertvolle Sekunden bei einem „Wohlfühl-Interface" daher aktivieren Wir einen [CronJob](../basics/Automatisierung_mit_cron_und_systemd.md)
|
NextCloud aktualisiert bei jedem Zugriff auf das Webinterface die Datenbank, allerdings kostet dies wertvolle Sekunden bei einem „Wohlfühl-Interface" daher aktivieren Wir einen [CronJob](Automatisierung_mit_cron_und_systemd.md)
|
||||||
|
|
||||||
Die Aktion soll vom User www-data ausgeführt werden
|
Die Aktion soll vom User www-data ausgeführt werden
|
||||||
|
|
||||||
@@ -253,7 +253,7 @@ Nextcloud ermöglicht eine einfache Anpassung des Designs an Ihr Firmenlayout di
|
|||||||
* Favicon: [Favicon](./Nextcloud_Design/favicon.ico)
|
* Favicon: [Favicon](./Nextcloud_Design/favicon.ico)
|
||||||
|
|
||||||
## LDAP
|
## LDAP
|
||||||
!!! note Konfiguration ``smb.conf`` bei einem [Samba AD-DC](../bonus/linux-als-ad-server.md)
|
!!! note Konfiguration ``smb.conf`` bei einem [Samba AD-DC](linux-als-ad-server.md)
|
||||||
````ini
|
````ini
|
||||||
[global]
|
[global]
|
||||||
ldap server require strong auth = no
|
ldap server require strong auth = no
|
||||||
|
|||||||
85
mkdocs/docs/Mein_erstes_kleines_Linux-Projekt.md
Normal file
@@ -0,0 +1,85 @@
|
|||||||
|
````markdown
|
||||||
|
# Mein erstes Linux Projekt
|
||||||
|
|
||||||
|
**Aufgabe**: Installieren Sie **3 Programme** aus der Liste und dokumentieren:
|
||||||
|
|
||||||
|
1. **Warum** haben Sie sie gewählt?
|
||||||
|
2. **Wie** haben Sie sie installiert (Terminal vs. Anwendungsverwaltung)?
|
||||||
|
3. **Was** können Sie damit machen? (z. B. Screenshot mit Flameshot, Backup mit Timeshift).
|
||||||
|
|
||||||
|
## Tools für Einsteiger
|
||||||
|
|
||||||
|
Warum diese Programme? Weil sie:
|
||||||
|
|
||||||
|
* **Alltagsprobleme lösen** (z. B.Screenshots, PDFs bearbeiten).
|
||||||
|
* **Spaß machen** (z. B. Spiele, Medien).
|
||||||
|
* **Produktivität steigern** (z. B. Notizen, Cloud-Sync).
|
||||||
|
* **Linux spannender machen** (z. B. Terminal-Tools, System-Info).
|
||||||
|
|
||||||
|
Hier sind praktische und nützliche Programme für Linux-Einsteiger, die nicht standardmäßig in Linux Mint vorinstalliert sind -- sortiert nach Kategorien mit klarem Nutzen und Istallationsbefehlen falls nicht über die Programmsuche findbar.
|
||||||
|
|
||||||
|
## Tipps
|
||||||
|
|
||||||
|
1. **Anwendungsverwaltung / Ubuntu Software-Center**:
|
||||||
|
Manche Programme (z. B. GIMP) gibt es dort mit **Bewertungen** - hilfreich für Einsteiger!
|
||||||
|
2. **Flatpak vs. APT**:
|
||||||
|
* **Flatpak** (````sudo flatpak install \...````): Einfacher, aber manchmal langsamer.
|
||||||
|
* **APT** (````sudo apt install \...````): Schneller, aber manuell Updates nötig.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Medien & Unterhaltung
|
||||||
|
|
||||||
|
| **Programm** | **Nutzen** | **Installationsbefehl** |
|
||||||
|
|---------------|--------------------------------------|-------------------------|
|
||||||
|
| **Kdenlive** | Video-Schnitt (einfacher als OpenShot,aber mächtiger). | sudo apt install kdenlive |
|
||||||
|
| **Spotify** | Musik-Streaming (offizielle Linux-App). | sudo flatpak install spotify |
|
||||||
|
| **GIMP** | Bildbearbeitung (Photoshop-Alternative). | sudo apt install gimp |
|
||||||
|
| **OBS Studio** | Bildschirmaufnahmen & Livestreams. | sudo apt install obs-studio |
|
||||||
|
| **Stacer** | System-Optimierung (wie CCleaner für Linux) | sudo apt install stacer |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Produktivität & Office
|
||||||
|
|
||||||
|
|**Programm** | **Nutzen** | **Installationsbefehl** |
|
||||||
|
| ----------------|--------------------------------|---------------------------|
|
||||||
|
|**OnlyOffice** | Kompatibler mit MS Office (bessere Formatierung als LibreOffice). | sudo flatpak install onlyoffice-desktopeditors |
|
||||||
|
| **Flameshot** | Screenshots mit Bearbeitung (besser als gnome-screenshot). | sudo apt install flameshot |
|
||||||
|
| **KeePassXC** | Passwort-Manager (sicher & offline).| sudo apt install keepassxc|
|
||||||
|
| **Nextcloud Client** | Cloud-Sync (z. B. für Meisterkurs/Arbeit). | sudo apt install nextcloud-desktop |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## System & Tools
|
||||||
|
|
||||||
|
| **Programm** | **Nutzen** | **Installationsbefehl**
|
||||||
|
|---------------|----------------------------------|---------------------------|
|
||||||
|
| **Timeshift** | System-Backups (wie "Wiederherstellungspunkt" in Windows). | sudo apt install timeshift |
|
||||||
|
| **GParted** | Partitionen verwalten (z. B. USB-Sticks formatieren). | sudo apt install gparted |
|
||||||
|
| **Neofetch** | Zeigt coole System-Infos im Terminal (Motivation!). | sudo apt install neofetch (dann ````neofetch```` eingeben) |
|
||||||
|
| **htop** | Bessere Task-Manager-Alternative. | sudo apt install htop (dann ````htop```` eingeben) |
|
||||||
|
| **Guake** | Dropdown-Terminal (nach start mit F12 ein-/ausblenden). | sudo apt install guake |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Spiele & Spaß
|
||||||
|
| **Programm** | **Nutzen** |**Installationsbefehl**|
|
||||||
|
| ------------------|----------------------------------- |-------------------------|
|
||||||
|
| **Steam** |Spiele-Plattform (viele Linux-Spiele verfügbar). | sudo apt install steam |
|
||||||
|
| **Lutris** |Spiele-Manager für Windows-Spiele (via Wine). | sudo apt install lutris |
|
||||||
|
| **SuperTuxKart** |Mario-Kart-ähnliches Rennspiel (Open Source). | sudo apt install supertuxkart |
|
||||||
|
| **0 A.D.** |Strategie-Spiel (wie Age of Empires). | sudo apt install 0ad |
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
## Entwicklung & Tüfteln
|
||||||
|
|
||||||
|
| **Programm** | **Nutzen** | **Installationsbefehl** |
|
||||||
|
--------------- |-----------------------------------| -------------------------|
|
||||||
|
| **VS Code** | Code-Editor (besser als Gedit). | sudo flatpak install \--classic code|
|
||||||
|
| **Docker** | Container für Projekte (z. B. Webserver, Datenbanken). | sudo apt install docker.io|
|
||||||
|
| **GitKraken** | Git-Client mit GUI (einfacher als Terminal). | sudo flatpak install gitkraken |\--classic |
|
||||||
|
| **Postman** | API-Testing (für Web-Entwickler). | sudo flatpak install postman|
|
||||||
|
|
||||||
|
````
|
||||||
8
mkdocs/docs/Praxisprojekt_Freigaben_im_Unternehmen.md
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
`````markdown
|
||||||
|
# Praxisprojekt Freigaben im Unternehmen
|
||||||
|
|
||||||
|
Anleitung zur Erstellung und Verwaltung von zentralen Freigaben im Unternehmensnetz.
|
||||||
|
|
||||||
|
... (Inhalt übernommen)
|
||||||
|
|
||||||
|
`````
|
||||||
234
mkdocs/docs/Praxisprojekt_Medien-NAS_fuer_KODI.md
Normal file
@@ -0,0 +1,234 @@
|
|||||||
|
`````markdown
|
||||||
|
# Praxisprojekt Medien-NAS für KODI
|
||||||
|
{align=right}
|
||||||
|
## Ziel des Projekts
|
||||||
|
|
||||||
|
Aufgebaut wird ein **Medien-Server mit Samba**, auf den **Windows-Clients** Medien (Musik, Videos, Bilder, ROMs) per **Windows-Freigabe** ablegen, und den eine **Kodi-VM** wiederum per SMB einbindet.
|
||||||
|
## 1. Vorbereitung
|
||||||
|
|
||||||
|
### 1.1 Voraussetzungen
|
||||||
|
|
||||||
|
* Linux-Server (z. B. Ubuntu 24.04 LTS oder Linux Mint)
|
||||||
|
* Samba ist installiert und läuft
|
||||||
|
* Windows-PC im gleichen Netzwerk (legt Medien per Freigabe ab)
|
||||||
|
* Virtuelle Maschine (z. B. VirtualBox) mit:
|
||||||
|
* Linux Mint + Kodi **oder**
|
||||||
|
* Direkt in Windows
|
||||||
|
* Netzwerkzugriff zwischen Server, Windows-PC und VM
|
||||||
|
|
||||||
|
### 1.2 Samba-Grundkonfiguration prüfen
|
||||||
|
|
||||||
|
Konfigurationsdatei öffnen:
|
||||||
|
|
||||||
|
````bash
|
||||||
|
sudo nano /etc/samba/smb.conf
|
||||||
|
````
|
||||||
|
|
||||||
|
Minimal sinnvoller globaler Abschnitt (Beispiel):
|
||||||
|
|
||||||
|
````ini
|
||||||
|
[global]
|
||||||
|
workgroup = WORKGROUP
|
||||||
|
server string = %h Samba Server
|
||||||
|
|
||||||
|
security = user
|
||||||
|
|
||||||
|
server min protocol = SMB2
|
||||||
|
client min protocol = SMB2
|
||||||
|
|
||||||
|
unix charset = UTF-8
|
||||||
|
ntlm auth = yes
|
||||||
|
|
||||||
|
log file = /var/log/samba/log.%m
|
||||||
|
max log size = 1000
|
||||||
|
````
|
||||||
|
|
||||||
|
Samba testen und Dienst starten:
|
||||||
|
|
||||||
|
````bash
|
||||||
|
sudo samba-tool testparm
|
||||||
|
sudo systemctl restart smbd
|
||||||
|
````
|
||||||
|
|
||||||
|
## 2. Medienverzeichnisse für Samba anlegen
|
||||||
|
|
||||||
|
Die Medien sollen vom Windows-Client aus über freigegebene Ordner auf dem Server landen. Hierfür müssen Ordner mit passenden Rechten angelegt werden.
|
||||||
|
|
||||||
|
### 2.1 Ordnerstruktur anlegen
|
||||||
|
|
||||||
|
````bash
|
||||||
|
sudo mkdir -p /srv/samba/{musik,videos,bilder,roms}
|
||||||
|
````
|
||||||
|
````-p```` erzeugt alle notwendigen Ordner darüber
|
||||||
|
die Worte in den geschweiften Klammern ````{}```` werden nacheinander mit im Befehl ersetzt
|
||||||
|
|
||||||
|
### 2.2 Rechte für einfache (Gast-)Nutzung setzen
|
||||||
|
|
||||||
|
````bash
|
||||||
|
sudo chown -R nobody:nogroup /srv/samba/{musik,videos,bilder,roms}
|
||||||
|
sudo chmod -R 775 /srv/samba/{musik,videos,bilder,roms}
|
||||||
|
````
|
||||||
|
* `nobody:nogroup`: typischer Besitzer für anonyme Zugriffe
|
||||||
|
* `775`: Besitzer/Gruppe Vollzugriff, andere lesen + ausführen
|
||||||
|
|
||||||
|
## 3. Samba-Freigaben für Medien einrichten
|
||||||
|
|
||||||
|
Freigaben in der Datei ````smb.conf```` anhängen:
|
||||||
|
|
||||||
|
````ini
|
||||||
|
|
||||||
|
[Musik]
|
||||||
|
comment = Musik-Freigabe
|
||||||
|
path = /srv/samba/musik
|
||||||
|
browseable = yes
|
||||||
|
read only = no
|
||||||
|
guest ok = yes
|
||||||
|
force create mode = 0664
|
||||||
|
force directory mode = 0775
|
||||||
|
|
||||||
|
[Videos]
|
||||||
|
comment = Video-Freigabe
|
||||||
|
path = /srv/samba/videos
|
||||||
|
browseable = yes
|
||||||
|
read only = no
|
||||||
|
guest ok = yes
|
||||||
|
force create mode = 0664
|
||||||
|
force directory mode = 0775
|
||||||
|
|
||||||
|
[Bilder]
|
||||||
|
comment = Bilder-Freigabe
|
||||||
|
path = /srv/samba/bilder
|
||||||
|
browseable = yes
|
||||||
|
read only = no
|
||||||
|
guest ok = yes
|
||||||
|
force create mode = 0664
|
||||||
|
force directory mode = 0775
|
||||||
|
|
||||||
|
[ROMs]
|
||||||
|
comment = ROMs für Retro-Spiele
|
||||||
|
path = /srv/samba/roms
|
||||||
|
browseable = yes
|
||||||
|
read only = no
|
||||||
|
guest ok = yes
|
||||||
|
force create mode = 0664
|
||||||
|
force directory mode = 0775
|
||||||
|
````
|
||||||
|
Samba testen und Dienst starten:
|
||||||
|
|
||||||
|
````bash
|
||||||
|
sudo samba-tool testparm
|
||||||
|
sudo systemctl restart smbd
|
||||||
|
````
|
||||||
|
## 4. Medien vom Windows-PC auf den Server kopieren
|
||||||
|
|
||||||
|
### 4.1 Freigaben von Windows aus verbinden
|
||||||
|
|
||||||
|
Auf dem Windows-PC im Explorer:
|
||||||
|
````
|
||||||
|
\\IP_DES_SERVERS\Musik
|
||||||
|
\\IP_DES_SERVERS\Videos
|
||||||
|
\\IP_DES_SERVERS\Bilder
|
||||||
|
\\IP_DES_SERVERS\ROMs
|
||||||
|
````
|
||||||
|
Falls Gastzugriff erlaubt ist (`guest ok = yes`), kann meist ohne Benutzername/Passwort zugegriffen werden.
|
||||||
|
In produktiven Szenarien sollten stattdessen Benutzerkonten und `guest ok = no` verwendet werden.
|
||||||
|
### 4.2 Medien kopieren
|
||||||
|
|
||||||
|
* Auf dem Windows-PC:
|
||||||
|
* Musik-Dateien nach `\\IP\\Musik` kopieren
|
||||||
|
* Video-Dateien nach `\\IP\\Videos`
|
||||||
|
* Bilder nach `\\IP\\Bilder`
|
||||||
|
* ROMs (z. B. `.nes`, `.sfc`, `.iso`) nach `\\IP\\ROMs`
|
||||||
|
|
||||||
|
Zur Kontrolle auf dem Server:
|
||||||
|
````bash
|
||||||
|
ls /srv/samba/musik
|
||||||
|
ls /srv/samba/videos
|
||||||
|
ls /srv/samba/bilder
|
||||||
|
ls /srv/samba/roms
|
||||||
|
````
|
||||||
|
|
||||||
|
## 5. Kodi installieren
|
||||||
|
|
||||||
|
## 5.1 Option A: Kodi auf Ubuntu-Desktop
|
||||||
|
Installieren Sie das Programm KODI aus der Softwaresammlung oder:
|
||||||
|
````bash
|
||||||
|
sudo apt update
|
||||||
|
sudo apt install kodi
|
||||||
|
````
|
||||||
|
## 5.2 Option B: Kodi auf Windows
|
||||||
|
Laden Sie Kodi von der [Homepage kodi.tv](https://kodi.tv/download/) herunter und instlalieren Sie
|
||||||
|
|
||||||
|
## 6. Samba-Freigaben in Kodi einbinden
|
||||||
|
|
||||||
|
### 6.1 Netzwerkfreigaben als Quellen hinzufügen
|
||||||
|
|
||||||
|
In Kodi:
|
||||||
|
|
||||||
|
1. **Dateimanager** öffnen
|
||||||
|
2. **Quelle hinzufügen**
|
||||||
|
3. **Durchsuchen → Netzwerkfreigabe hinzufügen → SMB**
|
||||||
|
4. Server-IP eintragen (z. B. `192.168.178.50`)
|
||||||
|
5. Freigabe auswählen, z. B.:
|
||||||
|
* `Musik`
|
||||||
|
* `Videos`
|
||||||
|
* `Bilder`
|
||||||
|
* `ROMs`
|
||||||
|
|
||||||
|
Wenn `guest ok = yes` gesetzt ist, kann meist mit **Gast** zugegriffen werden.
|
||||||
|
Bei Benutzerauthentifizierung:
|
||||||
|
|
||||||
|
* Benutzername: Samba-Benutzer (z. B. `medienuser`)
|
||||||
|
* Passwort: entsprechend `smbpasswd`
|
||||||
|
|
||||||
|
Quelle benennen, z. B. „Musik-Samba“.
|
||||||
|
|
||||||
|
### 6.2 Medienbibliothek einrichten
|
||||||
|
|
||||||
|
#### Musik
|
||||||
|
|
||||||
|
1. In Kodi zu **Musik → Dateien**
|
||||||
|
2. Quelle „Musik-Samba“ auswählen
|
||||||
|
3. Kontextmenü (Rechtsklick oder Menütaste) → **Zur Bibliothek hinzufügen**
|
||||||
|
4. Scraper wählen (z. B. „Universal Album Scraper")
|
||||||
|
|
||||||
|
#### Videos
|
||||||
|
|
||||||
|
Analog:
|
||||||
|
|
||||||
|
1. **Filme/Serien → Dateien**
|
||||||
|
2. Quelle „Videos-Samba“ auswählen
|
||||||
|
3. **Inhalt festlegen** → Typ (Filme, Serien…)
|
||||||
|
4. Passenden Scraper wählen
|
||||||
|
|
||||||
|
#### Bilder
|
||||||
|
|
||||||
|
Unter **Bilder** Quellen hinzufügen und direkt als Bilderquelle verwenden.
|
||||||
|
|
||||||
|
## 7. Kodi anpassen
|
||||||
|
|
||||||
|
### 7.1 Wetter-Add-on
|
||||||
|
|
||||||
|
1. **Add-ons → Aus Repository installieren → Wetter**
|
||||||
|
2. Ein Wetter-Add-on (z. B. OpenWeatherMap) auswählen
|
||||||
|
3. Installieren
|
||||||
|
4. In den Add-on-Einstellungen:
|
||||||
|
* API-Schlüssel eintragen (bei Bedarf vorher erstellen)
|
||||||
|
* Standort konfigurieren (z. B. „Berlin, DE")
|
||||||
|
|
||||||
|
### 7.2 Retro-Spiele (ROMs)
|
||||||
|
|
||||||
|
1. **Add-ons → Aus Repository installieren → Spiele → Emulator-Add-ons**
|
||||||
|
2. Passende Emulatoren (z. B. für NES, SNES, PlayStation) installieren
|
||||||
|
3. In den Emulator-Einstellungen:
|
||||||
|
* ROM-Pfade hinzufügen, z. B. `smb://192.168.178.50/ROMs`
|
||||||
|
Mehr Funktionen was Spielen angeht müssen Sie sich im Netz informieren.
|
||||||
|
|
||||||
|
### 7.3 Skin anpassen
|
||||||
|
|
||||||
|
1. **Einstellungen → Oberfläche → Skin**
|
||||||
|
2. „Weitere Skins herunterladen“ auswählen
|
||||||
|
3. Z. B. **Estuary Mod V2** installieren
|
||||||
|
4. Aktivieren → Kodi neustarten
|
||||||
|
|
||||||
|
`````
|
||||||
118
mkdocs/docs/Remotezugriff_einrichten.md
Normal file
@@ -0,0 +1,118 @@
|
|||||||
|
````markdown
|
||||||
|
# Remote-Zugriff auf Linux Mint von Windows aus (GUI-basiert)
|
||||||
|
|
||||||
|
Diese Anleitung zeigt Schritt für Schritt, wie Sie von einem Windows-Rechner aus auf ein Linux‑Mint‑System zugreifen:
|
||||||
|
|
||||||
|
1. Zuerst richten Sie **grafischen Remote-Desktop** mit **xrdp** und der Windows-Remotedesktop-App ein und testen ihn direkt.
|
||||||
|
2. Anschließend richten Sie den **SSH-Zugriff** mit **PuTTY** ein und testen ihn ebenfalls sofort.
|
||||||
|
|
||||||
|
## 1. Grafischer Remote-Desktop mit xrdp
|
||||||
|
|
||||||
|
### 1.1 xrdp auf Linux Mint installieren
|
||||||
|
|
||||||
|
1. Melden Sie sich lokal an Ihrem **Linux‑Mint‑Rechner** an.
|
||||||
|
2. Öffnen Sie das **Menü** und starten Sie die **Anwendungsverwaltung** (Software-Manager).
|
||||||
|
3. Geben Sie oben im Suchfeld **„xrdp“** ein.
|
||||||
|
4. Wählen Sie den Eintrag **„xrdp“** aus.
|
||||||
|
5. Klicken Sie auf **„Installieren“** und geben Sie bei Nachfrage Ihr Passwort ein.
|
||||||
|
6. Warten Sie, bis die Installation abgeschlossen ist – der Dienst startet danach automatisch.
|
||||||
|
|
||||||
|
!!! tip Hinweis: Bei der Installation legt xrdp automatisch die Gruppe **„xrdp“** an. Nur Benutzer dieser Gruppe dürfen sich per Remote Desktop anmelden.
|
||||||
|
|
||||||
|
### 1.2 Benutzer grafisch der Gruppe „xrdp“ hinzufügen
|
||||||
|
|
||||||
|
1. Öffnen Sie das **Menü**.
|
||||||
|
2. Gehen Sie zu **„Einstellungen“ → „Benutzer und Gruppen“** (oder ähnlich benannter Eintrag).
|
||||||
|
3. Bestätigen Sie bei Bedarf mit Ihrem Passwort.
|
||||||
|
4. Wählen Sie in der Benutzerliste den gewünschten Benutzer (z. B. `meister`) aus.
|
||||||
|
5. Klicken Sie auf **„Gruppen verwalten“** oder **„Erweiterte Einstellungen“**.
|
||||||
|
6. In der Liste der Gruppen setzen Sie ein **Häkchen** bei **„xrdp“**.
|
||||||
|
7. Bestätigen Sie mit **„OK“**, **„Anwenden“** oder **„Speichern“**.
|
||||||
|
8. Melden Sie den Benutzer einmal **ab und wieder an**, damit die Gruppenzugehörigkeit aktiv wird.
|
||||||
|
|
||||||
|
### 1.3 IP-Adresse von Linux Mint ohne Terminal ermitteln
|
||||||
|
|
||||||
|
1. Klicken Sie unten rechts in der Panel-Leiste auf das **Netzwerksymbol** (LAN oder WLAN).
|
||||||
|
2. Wählen Sie **„Verbindungsinformationen“** oder **„Netzwerkverbindungen“**.
|
||||||
|
3. In den Verbindungsdetails sehen Sie die **IPv4-Adresse**, z. B. `192.168.1.50`.
|
||||||
|
4. Notieren Sie sich diese Adresse – sie wird gleich für den Test benötigt.
|
||||||
|
|
||||||
|
### 1.4 Remote Desktop von Windows aus testen
|
||||||
|
|
||||||
|
1. Wechseln Sie an Ihren **Windows-Rechner**.
|
||||||
|
2. Öffnen Sie das Startmenü und suchen Sie nach **„Remotedesktopverbindung“** oder geben Sie `mstsc` in die Suche ein.
|
||||||
|
3. Starten Sie die Anwendung **„Remotedesktopverbindung“**.
|
||||||
|
4. Im Feld **„Computer“** tragen Sie die IP-Adresse des Linux‑Mint‑Rechners ein, z. B. `192.168.1.50`.
|
||||||
|
5. Optional: Klicken Sie auf **„Optionen einblenden“**, um Anzeigeeinstellungen anzupassen.
|
||||||
|
6. Klicken Sie auf **„Verbinden“**.
|
||||||
|
7. Beim ersten Verbindungsaufbau erscheint ein Hinweis zur Identität des Remotecomputers:
|
||||||
|
* Bestätigen Sie mit **„Ja“**.
|
||||||
|
8. Es erscheint der **xrdp-Anmeldebildschirm**:
|
||||||
|
* Sitzungsart: **„Xorg“** belassen (Standard)
|
||||||
|
* **Benutzername**: z. B. `meister`
|
||||||
|
* **Passwort**: Passwort des Linux-Kontos
|
||||||
|
9. Klicken Sie auf **„OK“** oder **„Anmelden“**.
|
||||||
|
|
||||||
|
Nach kurzer Zeit sollte der Linux‑Mint‑Desktop in einem Fenster auf Ihrem Windows-Rechner erscheinen.
|
||||||
|
Sie haben damit den ersten Erfolg: grafischer Remote-Zugriff funktioniert.
|
||||||
|
|
||||||
|
--*
|
||||||
|
|
||||||
|
## 2. Textbasierter Zugriff mit SSH und PuTTY
|
||||||
|
|
||||||
|
Nach dem erfolgreichen grafischen Zugriff richten Sie nun den SSH-Zugriff ein.
|
||||||
|
|
||||||
|
### 2.1 OpenSSH-Server über die Anwendungsverwaltung installieren
|
||||||
|
|
||||||
|
1. Melden Sie sich (falls nötig) wieder lokal an Ihrem **Linux‑Mint‑Rechner** an.
|
||||||
|
2. Öffnen Sie das **Menü** und starten Sie erneut die **Anwendungsverwaltung**.
|
||||||
|
3. Geben Sie im Suchfeld **„OpenSSH Server“** oder **„openssh-server“** ein.
|
||||||
|
4. Wählen Sie den Eintrag **„OpenSSH Server“** aus.
|
||||||
|
5. Klicken Sie auf **„Installieren“** und geben Sie Ihr Passwort ein.
|
||||||
|
6. Warten Sie, bis die Installation abgeschlossen ist – der SSH-Dienst startet automatisch und wird beim Systemstart aktiviert.
|
||||||
|
|
||||||
|
!!! tip Die IP-Adresse bleibt dieselbe wie im Remote-Desktop-Teil; sie muss nicht neu gesucht werden.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 2.2 PuTTY auf Windows installieren
|
||||||
|
|
||||||
|
1. Öffnen Sie auf dem **Windows-Rechner** den Webbrowser.
|
||||||
|
2. Rufen Sie die offizielle PuTTY-Downloadseite auf, z. B.:
|
||||||
|
`https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html`
|
||||||
|
3. Laden Sie den **64‑Bit Windows Installer** herunter.
|
||||||
|
4. Starten Sie den Installer per Doppelklick und folgen Sie dem Assistenten (Standardeinstellungen reichen).
|
||||||
|
5. Nach der Installation finden Sie **PuTTY** im Startmenü.
|
||||||
|
|
||||||
|
|
||||||
|
### 2.3 SSH-Verbindung mit PuTTY testen
|
||||||
|
|
||||||
|
1. Starten Sie **PuTTY** über das Windows-Startmenü.
|
||||||
|
2. Im Feld **„Host Name (or IP address)"** tragen Sie die IP-Adresse des Linux‑Mint‑Rechners ein, z. B. `192.168.1.50`.
|
||||||
|
3. Prüfen Sie:
|
||||||
|
* **Port**: `22`
|
||||||
|
* **Connection type**: `SSH`
|
||||||
|
4. Optional:
|
||||||
|
* Geben Sie unter **„Saved Sessions"** einen Namen wie `Mint-SSH` ein.
|
||||||
|
* Klicken Sie auf **„Save"**, um die Sitzung zu speichern.
|
||||||
|
5. Klicken Sie auf **„Open"**.
|
||||||
|
6. Beim ersten Verbindungsaufbau erscheint ein Sicherheitshinweis zum Server-Schlüssel:
|
||||||
|
* Bestätigen Sie mit **„Accept"** bzw. **„Ja"**.
|
||||||
|
7. Geben Sie im Terminalfenster den **Benutzernamen** Ihres Linux-Kontos ein und drücken Sie Enter.
|
||||||
|
8. Geben Sie anschließend Ihr **Passwort** ein (es wird beim Tippen nicht angezeigt) und bestätigen Sie mit Enter.
|
||||||
|
|
||||||
|
Sie sind nun per SSH mit Linux Mint verbunden und können textbasierte Befehle ausführen, Konfigurationsdateien bearbeiten und Protokolle ansehen.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 3. Kurzer Überblick: Was wurde erreicht?
|
||||||
|
|
||||||
|
* **xrdp + Remotede sktop**:
|
||||||
|
* Grafischer Zugriff auf den Linux‑Mint‑Desktop von Windows aus
|
||||||
|
* Benutzersteuerung über die bestehende Gruppe **„xrdp"**
|
||||||
|
|
||||||
|
* **OpenSSH-Server + PuTTY**:
|
||||||
|
* Textbasierter Zugriff (Shell) auf Linux Mint
|
||||||
|
* Ideal für Administration, Skripte und Log-Analyse
|
||||||
|
|
||||||
|
````
|
||||||
10
mkdocs/docs/Server_Installation.md
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
`````markdown
|
||||||
|
# Ubuntu Server installieren und vorbereiten
|
||||||
|
|
||||||
|
## 1. Vorbereitung der virtuellen Maschine in VirtualBox
|
||||||
|
... (Inhalt übernommen)
|
||||||
|
|
||||||
|
## Erste Schritte nach der Installation
|
||||||
|
... (Inhalt übernommen)
|
||||||
|
|
||||||
|
`````
|
||||||
397
mkdocs/docs/Windows_Freigaben_fuer_Linux-Einsteiger.md
Normal file
@@ -0,0 +1,397 @@
|
|||||||
|
`````markdown
|
||||||
|
# Samba-Konfiguration für Linux-Einsteiger
|
||||||
|

|
||||||
|
## Einführung in Samba
|
||||||
|
**Samba** ist eine Open-Source-Software, die es Linux-Systemen ermöglicht, **Datei* und Druckdienste** für Windows-, macOS* und andere Linux-Clients bereitzustellen. Samba implementiert das **SMB/CIFS-Protokoll** (Server Message Block / Common Internet File System), das in Windows-Netzwerken standardmäßig verwendet wird.
|
||||||
|
|
||||||
|
### Wichtige Anwendungsfälle:
|
||||||
|
* **Dateifreigaben** im lokalen Netzwerk (z. B. für Medien, Dokumente oder Backups).
|
||||||
|
* **Druckerfreigaben** für Windows-Clients.
|
||||||
|
* **Zentraler Speicher** für mehrere Nutzer (z. B. in kleinen Büros oder Heimnetzwerken).
|
||||||
|
|
||||||
|
### Voraussetzungen:
|
||||||
|
* Ein **Linux-Server** (z. B. Ubuntu, Debian, Raspberry Pi OS).
|
||||||
|
* **Root-Zugriff** oder ````sudo````-Berechtigungen.
|
||||||
|
* Grundkenntnisse in der **Linux-Kommandozeile**.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Installation von Samba
|
||||||
|
|
||||||
|
### 1. Paketdatenbank aktualisieren
|
||||||
|
```bash
|
||||||
|
sudo apt update && sudo apt upgrade -y
|
||||||
|
```
|
||||||
|
### 2. Samba installieren
|
||||||
|
````bash
|
||||||
|
sudo apt install samba
|
||||||
|
````
|
||||||
|
### 3. Dienststatus prüfen
|
||||||
|
````bash
|
||||||
|
sudo systemctl status smbd
|
||||||
|
````
|
||||||
|
|
||||||
|
> Erwarteter Output: active (running).
|
||||||
|
Falls nicht aktiv: sudo systemctl start smbd und sudo systemctl enable smbd.
|
||||||
|
|
||||||
|
Zum verlassen ````q```` oder ````strg + c````
|
||||||
|
|
||||||
|
## Die Konfigurationsdatei smb.conf
|
||||||
|
Die zentrale Konfigurationsdatei /etc/samba/smb.conf steuert das Verhalten des Samba-Servers. Sie ist in zwei Hauptbereiche unterteilt:
|
||||||
|
|
||||||
|
**[global]**: Globale Einstellungen für den gesamten Server.
|
||||||
|
**[Freigabename]**: Definition einzelner Freigaben (Ordner, Drucker).
|
||||||
|
### Globale Einstellungen ````[global]````
|
||||||
|
Die globalen Einstellungen gelten für alle Freigaben, sofern sie nicht in einer Freigabe überschrieben werden.
|
||||||
|
Wichtige Optionen für einen Standalone-Server:
|
||||||
|
````ini
|
||||||
|
|
||||||
|
[global]
|
||||||
|
# Netzwerk-Identifikation
|
||||||
|
workgroup = WORKGROUP # Name der Arbeitsgruppe (wie in Windows)
|
||||||
|
server string = %h server (Samba, Ubuntu) # Beschreibung des Servers (%h = Hostname)
|
||||||
|
|
||||||
|
# Netzwerk-Interfaces
|
||||||
|
interfaces = 127.0.0.0/8 eth0 # Auf welchen Interfaces soll Samba laufen?
|
||||||
|
bind interfaces only = yes # Nur auf den genannten Interfaces
|
||||||
|
|
||||||
|
# Protokollierung
|
||||||
|
log file = /var/log/samba/log.%m # Log-Datei pro Client (%m = Client-Name)
|
||||||
|
max log size = 1000 # Maximale Log-Größe in KB
|
||||||
|
logging = file # Logs nur in Dateien (nicht syslog)
|
||||||
|
|
||||||
|
# Sicherheit
|
||||||
|
server role = standalone server # Server arbeitet allein (keine Domain)
|
||||||
|
map to guest = bad user # Unbekannte Nutzer werden als "Gast" behandelt
|
||||||
|
obey pam restrictions = yes # Nutzer müssen Linux-PAM-Regeln einhalten
|
||||||
|
unix password sync = yes # Samba-Passwort ändert auch Linux-Passwort
|
||||||
|
passwd program = /usr/bin/passwd %u # Programm zum Ändern des Passworts
|
||||||
|
pam password change = yes # PAM für Passwort-Änderungen nutzen
|
||||||
|
|
||||||
|
# Nutzerfreigaben
|
||||||
|
usershare allow guests = yes # Gäste dürfen auf Nutzerfreigaben zugreifen
|
||||||
|
````
|
||||||
|
Hinweise:
|
||||||
|
````
|
||||||
|
; oder #:
|
||||||
|
; = Deaktivierter Vorschlag (kann aktiviert werden).
|
||||||
|
# = Standardwert (wird auch ohne Angabe genutzt).
|
||||||
|
````
|
||||||
|
Platzhalter:
|
||||||
|
````
|
||||||
|
%h = Hostname des Servers.
|
||||||
|
%m = Name des Clients.
|
||||||
|
%S = Name der aktuellen Freigabe.
|
||||||
|
````
|
||||||
|
#### Anpassungen an Windows 11
|
||||||
|
Fügen sie unterhalb dieser Einstellungen im noch im Bereich [Global] :
|
||||||
|
````ini
|
||||||
|
# Protokolle und Kompatibilität
|
||||||
|
server min protocol = SMB2
|
||||||
|
smb encrypt = desired
|
||||||
|
````
|
||||||
|
### Freigaben definieren
|
||||||
|
Freigaben werden in eigenen Abschnitten definiert, z. B. [Musik] oder [Dokumente]. Jede Freigabe hat einen Namen (erscheint im Netzwerk) und Optionen für Zugriffsrechte.
|
||||||
|
Grundlegende Optionen:
|
||||||
|
|
||||||
|
|Option |Bedeutung |Beispiel |
|
||||||
|
|--------------|------------------------------------------------------------------------|--------------------------|
|
||||||
|
|comment |Beschreibung der Freigabe (erscheint im Explorer). |comment = Medienarchiv |
|
||||||
|
|path |Pfad zum freigegebenen Ordner. |path = /srv/samba/musik |
|
||||||
|
|browseable |yes: Freigabe ist im Netzwerk sichtbar. no: Nur mit direktem Pfad. |browseable = yes |
|
||||||
|
|read only |yes: Nur Lesezugriff. no: Schreibzugriff erlaubt. |read only = no |
|
||||||
|
|guest ok |yes: Gäste (ohne Passwort) dürfen zugreifen. |guest ok = yes |
|
||||||
|
|valid users |Liste der Nutzer/Gruppen, die überhaupt zugreifen dürfen. |valid users = @mitarbeiter|
|
||||||
|
|write list |Liste der Nutzer/Gruppen, die schreiben dürfen (überschreibt read only).|write list = @teamleitung |
|
||||||
|
|create mask |Berechtigungen für neue Dateien (oktal). |create mask = 0664 |
|
||||||
|
|directory mask|Berechtigungen für neue Ordner (oktal). |directory mask = 0775 |
|
||||||
|
|force group |Neue Dateien/Ordner gehören automatisch zu dieser Gruppe. |force group = mitarbeiter |
|
||||||
|
|
||||||
|
#### Sonderfälle: Home-Verzeichnisse und Drucker
|
||||||
|
1. Nutzer-Home-Verzeichnisse
|
||||||
|
Jeder Nutzer kann automatisch auf sein eigenes Home-Verzeichnis zugreifen:
|
||||||
|
````ini
|
||||||
|
|
||||||
|
[homes]
|
||||||
|
comment = Persönlicher Ordner
|
||||||
|
browseable = no # Nur der eigene Nutzer sieht die Freigabe
|
||||||
|
read only = no # Nutzer darf schreiben
|
||||||
|
valid users = %S # %S = aktueller Nutzer (z. B. "felix")
|
||||||
|
create mask = 0700 # Neue Dateien: rwx------
|
||||||
|
directory mask = 0700 # Neue Ordner: rwx------
|
||||||
|
````
|
||||||
|
2. Druckerfreigabe
|
||||||
|
Samba kann Drucker für Windows-Clients freigeben:
|
||||||
|
````ini
|
||||||
|
|
||||||
|
[printers]
|
||||||
|
comment = Alle Drucker
|
||||||
|
path = /var/spool/samba # Spoolfolder für Druckaufträge
|
||||||
|
browseable = no # Drucker sind nicht im Explorer sichtbar
|
||||||
|
printable = yes # Erlaubt Druckaufträge
|
||||||
|
guest ok = no # Nur authentifizierte Nutzer dürfen drucken
|
||||||
|
|
||||||
|
[print$]
|
||||||
|
comment = Druckertreiber
|
||||||
|
path = /var/lib/samba/printers
|
||||||
|
browseable = yes
|
||||||
|
read only = yes
|
||||||
|
guest ok = no
|
||||||
|
write list = root, @lpadmin # Nur Admins dürfen Treiber hochladen
|
||||||
|
````
|
||||||
|
|
||||||
|
|
||||||
|
## Rechteverwaltung unter Linux
|
||||||
|
Die korrekte Vergabe von Datei* und Ordnerrechten ist essenziell für die Sicherheit und Funktionalität von Samba-Freigaben.
|
||||||
|
### ````chown````: Besitzer und Gruppe ändern
|
||||||
|
Jede Datei/Ordner gehört einem **Besitzer (User)** und einer **Gruppe (Group)**.
|
||||||
|
Syntax:
|
||||||
|
````bash
|
||||||
|
sudo chown [BESITZER]:[GRUPPE] [DATEI/ORDNER]
|
||||||
|
````
|
||||||
|
Beispiele:
|
||||||
|
|
||||||
|
|Befehl| Wirkung|
|
||||||
|
|-|-|
|
||||||
|
|sudo chown felix:mitarbeiter /srv/samba|Besitzer: felix, Gruppe: mitarbeiter. |
|
||||||
|
|sudo chgrp mitarbeiter /srv/samba|Ändert nur die Gruppe auf mitarbeiter. |
|
||||||
|
|sudo chown -R nobody:mitarbeiter /srv/samba|Rekursiv: Besitzer: nobody, Gruppe: mitarbeiter für alle Unterordner/Dateien.|
|
||||||
|
|
||||||
|
|
||||||
|
Hinweise:
|
||||||
|
|
||||||
|
**sudo** ist erforderlich, wenn Sie nicht der Besitzer sind.
|
||||||
|
**-R** (rekursiv): Wendet die Änderung auf alle Unterordner/Dateien an.
|
||||||
|
**Samba-Empfehlung**: Für Freigaben oft nobody oder root als Besitzer und eine **spezifische Gruppe** (z. B. mitarbeiter) verwenden.
|
||||||
|
|
||||||
|
### ````chmod````: Zugriffsrechte setzen
|
||||||
|
Die Zugriffsrechte werden für **drei Kategorien** von Nutzern definiert:
|
||||||
|
|
||||||
|
**Besitzer (User)**: Der Nutzer, dem die Datei/der Ordner gehört.
|
||||||
|
**Gruppe (Group)**: Die Gruppe, der die Datei/der Ordner zugeordnet ist.
|
||||||
|
**Andere (Others)**: Alle anderen Nutzer.
|
||||||
|
|
||||||
|
Jede Kategorie kann drei Rechte haben:
|
||||||
|
|
||||||
|
````r```` **(Read)**: Lesen.
|
||||||
|
````w```` **(Write)**: Schreiben.
|
||||||
|
````x```` **(Execute)**: Ausführen (bei Ordnern: Betreten).
|
||||||
|
#### Symbolische Darstellung:
|
||||||
|
````
|
||||||
|
rwx r-x r--
|
||||||
|
│ │ │
|
||||||
|
│ │ └─ Andere (Others): Lesen (r), kein Schreiben (–), kein Ausführen (–)
|
||||||
|
│ └───── Gruppe (Group): Lesen (r), kein Schreiben (–), Ausführen (x)
|
||||||
|
└───────── Besitzer (User): Lesen (r), Schreiben (w), Ausführen (x)
|
||||||
|
````
|
||||||
|
#### Oktal-Darstellung:
|
||||||
|
Jedes Recht wird durch eine **Zahl** repräsentiert:
|
||||||
|
|
||||||
|
````r```` = 4
|
||||||
|
````w```` = 2
|
||||||
|
````x```` = 1
|
||||||
|
Die Rechte für jede Kategorie werden **addiert**:
|
||||||
|
|
||||||
|
|Rechte|Oktal-Wert|Bedeutung |
|
||||||
|
|------|----------|---------------------|
|
||||||
|
|````---```` |0 |Keine Rechte |
|
||||||
|
|````--x```` |1 |Nur Ausführen |
|
||||||
|
|````-w-```` |2 |Nur Schreiben |
|
||||||
|
|````-wx```` |3 |Schreiben + Ausführen|
|
||||||
|
|````r--```` |4 |Nur Lesen |
|
||||||
|
|````r-x```` |5 |Lesen + Ausführen |
|
||||||
|
|````rw-```` |6 |Lesen + Schreiben |
|
||||||
|
|````rwx```` |7 |Vollzugriff |
|
||||||
|
````
|
||||||
|
|
||||||
|
Die Oktal-Modi für alle drei Kategorien werden kombiniert:
|
||||||
|
|
||||||
|
* ````755```` = ````rwxr-xr-x```` (Besitzer: Vollzugriff, Gruppe/Andere: Lesen + Ausführen)
|
||||||
|
* ````644```` = ````rw-r--r--```` (Besitzer: Lesen + Schreiben, Gruppe/Andere: Nur Lesen)
|
||||||
|
* ````770```` = ````rwxrwx---```` (Besitzer/Gruppe: Vollzugriff, Andere: Keine Rechte)
|
||||||
|
|
||||||
|
Syntax von chmod:
|
||||||
|
````bash
|
||||||
|
sudo chmod [OPTIONEN] [RECHTE] [DATEI/ORDNER]
|
||||||
|
````
|
||||||
|
|
||||||
|
* ````RECHTE````: Symbolisch (z. B. ````u=rwx,g=rx,o=rx````) oder oktal (z. B. ````755````).
|
||||||
|
* ````OPTIONEN````:
|
||||||
|
|
||||||
|
* ````-R````: Rekursiv (für alle Unterordner/Dateien).
|
||||||
|
|
||||||
|
#### Beispiele:
|
||||||
|
|
||||||
|
|Befehl |Wirkung |
|
||||||
|
|----------------------------|---------------------------------------------|
|
||||||
|
|sudo chmod 755 /srv/samba |Besitzer: rwx, Gruppe/Andere: r-x. |
|
||||||
|
|sudo chmod 644 datei.txt |Besitzer: rw-, Gruppe/Andere: r--. |
|
||||||
|
|sudo chmod -R 770 /srv/samba|Rekursiv: Besitzer/Gruppe: rwx, Andere: ---. |
|
||||||
|
|sudo chmod u+x skript.sh |Fügt dem Besitzer das Ausführrecht (x) hinzu.|
|
||||||
|
|
||||||
|
Samba-spezifische Empfehlungen:
|
||||||
|
|
||||||
|
**Freigabe-Ordner:**
|
||||||
|
|
||||||
|
* ````775```` ````(rwxrwxr-x)````: Besitzer und Gruppe haben Vollzugriff, Andere dürfen lesen und Ordner betreten.
|
||||||
|
* ````770```` ````(rwxrwx---)````: Nur Besitzer und Gruppe haben Zugriff (empfohlen für sensible Daten).
|
||||||
|
|
||||||
|
**Dateien in Freigaben:**
|
||||||
|
|
||||||
|
* ````664```` ````(rw-rw-r--)````: Besitzer und Gruppe dürfen lesen/schreiben, Andere nur lesen.
|
||||||
|
* ````660```` ````(rw-rw----)````: Nur Besitzer und Gruppe dürfen lesen/schreiben.
|
||||||
|
|
||||||
|
|
||||||
|
### Gruppenverwaltung
|
||||||
|
Gruppen ermöglichen die zentrale Steuerung von Zugriffsrechten für mehrere Nutzer.
|
||||||
|
#### 1. Nutzer und Gruppe erstellen:
|
||||||
|
````bash
|
||||||
|
sudo adduser felix
|
||||||
|
sudo addgroup mitarbeiter
|
||||||
|
````
|
||||||
|
#### 2. Nutzer einer Gruppe hinzufügen:
|
||||||
|
````bash
|
||||||
|
|
||||||
|
sudo usermod -aG mitarbeiter felix # Fügt "felix" der Gruppe "mitarbeiter" hinzu.
|
||||||
|
````
|
||||||
|
|
||||||
|
**````-aG````**: ````-a```` (append) stellt sicher, dass der Nutzer nicht aus anderen Gruppen entfernt wird.
|
||||||
|
#### 3. Gruppe einer Datei/Ordner zuweisen:
|
||||||
|
````bash
|
||||||
|
|
||||||
|
sudo chgrp mitarbeiter /srv/samba/dokumente # Setzt die Gruppe auf "mitarbeiter".
|
||||||
|
sudo chmod 770 /srv/samba/dokumente # Gruppe erhält Vollzugriff.
|
||||||
|
````
|
||||||
|
#### 4. Gruppe in Samba nutzen:
|
||||||
|
````ini
|
||||||
|
|
||||||
|
[Dokumente]
|
||||||
|
path = /srv/samba/dokumente
|
||||||
|
valid users = @mitarbeiter # Nur Nutzer der Gruppe "mitarbeiter" dürfen zugreifen.
|
||||||
|
write list = @teamleitung # Nur Gruppe "teamleitung" darf schreiben.
|
||||||
|
force group = mitarbeiter # Neue Dateien/Ordner gehören automatisch zur Gruppe "mitarbeiter".
|
||||||
|
````
|
||||||
|
|
||||||
|
## Samba-Freigaben in der Praxis
|
||||||
|
### Beispiel 1: Öffentliche Freigabe
|
||||||
|
Anwendungsfall: Medienfreigabe für alle Nutzer im Netzwerk (z. B. Musik, Filme).
|
||||||
|
**Schritt 1: Ordner erstellen und Rechte setzen**
|
||||||
|
````bash
|
||||||
|
sudo mkdir -p /srv/samba/medien
|
||||||
|
sudo chown nobody:nogroup /srv/samba/medien # Besitzer: "nobody", Gruppe: "nogroup"
|
||||||
|
sudo chmod 777 /srv/samba/medien # Temporär volle Rechte (für Test)
|
||||||
|
````
|
||||||
|
**Schritt 2: Freigabe in smb.conf definieren**
|
||||||
|
````ini
|
||||||
|
[Medien]
|
||||||
|
comment = öffentliche Medienfreigabe
|
||||||
|
path = /srv/samba/medien
|
||||||
|
browseable = yes
|
||||||
|
read only = no
|
||||||
|
guest ok = yes
|
||||||
|
````
|
||||||
|
**Schritt 3: Samba neu starten**
|
||||||
|
````bash
|
||||||
|
sudo systemctl restart smbd
|
||||||
|
````
|
||||||
|
**Schritt 4: Von Windows aus testen**
|
||||||
|
> Im Explorer: ````\\<IP-des-Servers>\\Medien```` eingeben.
|
||||||
|
|
||||||
|
### Beispiel 2: Eingeschränkte Freigabe
|
||||||
|
Anwendungsfall: Vertrauliche Dokumente für bestimmte Nutzer/Gruppen.
|
||||||
|
**Schritt 1: Gruppe und Nutzer anlegen**
|
||||||
|
````bash
|
||||||
|
sudo adduser felix
|
||||||
|
sudo adduser hans
|
||||||
|
sudo addgroup mitarbeiter
|
||||||
|
sudo addgroup teamleitung
|
||||||
|
sudo usermod -aG mitarbeiter felix
|
||||||
|
sudo usermod -aG mitarbeiter hans
|
||||||
|
sudo usermod -aG teamleitung felix
|
||||||
|
````
|
||||||
|
**Schritt 2: Ordner erstellen und Rechte setzen**
|
||||||
|
````bash
|
||||||
|
sudo mkdir -p /srv/samba/dokumente
|
||||||
|
sudo chown nobody:mitarbeiter /srv/samba/dokumente
|
||||||
|
sudo chmod 770 /srv/samba/dokumente
|
||||||
|
````
|
||||||
|
**Schritt 3: Freigabe in smb.conf definieren**
|
||||||
|
````ini
|
||||||
|
[Dokumente]
|
||||||
|
comment = Vertrauliche Dokumente
|
||||||
|
path = /srv/samba/dokumente
|
||||||
|
browseable = yes
|
||||||
|
read only = no
|
||||||
|
guest ok = no
|
||||||
|
valid users = @mitarbeiter # Nur Gruppe "mitarbeiter" darf zugreifen
|
||||||
|
write list = @teamleitung # Nur Gruppe "teamleitung" darf schreiben
|
||||||
|
force group = mitarbeiter # Neue Dateien/Ordner gehören zur Gruppe "mitarbeiter"
|
||||||
|
force create mode = 0660 # Neue Dateien: rw-rw----
|
||||||
|
force directory mode = 0770 # Neue Ordner: rwxrwx---
|
||||||
|
````
|
||||||
|
**Schritt 4: Nutzer zu Samba hinzufügen**
|
||||||
|
````bash
|
||||||
|
sudo smbpasswd -a felix
|
||||||
|
sudo smbpasswd -a hans
|
||||||
|
````
|
||||||
|
**Schritt 5: Samba neu starten**
|
||||||
|
````bash
|
||||||
|
|
||||||
|
sudo systemctl restart smbd
|
||||||
|
````
|
||||||
|
|
||||||
|
## Schritt-für-Schritt: Neue Freigabe erstellen
|
||||||
|
|
||||||
|
|
||||||
|
**1. Ordner anlegen:**
|
||||||
|
````bash
|
||||||
|
sudo mkdir -p /srv/samba/neue_freigabe
|
||||||
|
````
|
||||||
|
|
||||||
|
|
||||||
|
**2. Besitzer und Gruppe setzen:**
|
||||||
|
````bash
|
||||||
|
sudo chown nobody:mitarbeiter /srv/samba/neue_freigabe
|
||||||
|
````
|
||||||
|
|
||||||
|
**3. Rechte setzen:**
|
||||||
|
````bash
|
||||||
|
|
||||||
|
sudo chmod 770 /srv/samba/neue_freigabe
|
||||||
|
````
|
||||||
|
|
||||||
|
**4. Freigabe in /etc/samba/smb.conf definieren:**
|
||||||
|
````ini
|
||||||
|
|
||||||
|
[NeueFreigabe]
|
||||||
|
comment = Beschreibung der Freigabe
|
||||||
|
path = /srv/samba/neue_freigabe
|
||||||
|
browseable = yes
|
||||||
|
read only = no
|
||||||
|
guest ok = no
|
||||||
|
valid users = @mitarbeiter
|
||||||
|
write list = @teamleitung
|
||||||
|
````
|
||||||
|
**5. Konfiguration testen:**
|
||||||
|
````bash
|
||||||
|
|
||||||
|
sudo samba-tool testparm
|
||||||
|
````
|
||||||
|
|
||||||
|
**6. Samba neu starten:**
|
||||||
|
````bash
|
||||||
|
|
||||||
|
sudo systemctl restart smbd
|
||||||
|
````
|
||||||
|
|
||||||
|
## Häufige Fehler und Lösungen:
|
||||||
|
|
||||||
|
|Problem |Ursache |Lösung |
|
||||||
|
|------------------------------------|------------------------------------------------------|----------------------------------------------------------------------|
|
||||||
|
|Freigabe nicht sichtbar |browseable = no oder Firewall blockiert Samba. |browseable = yes setzen oder Firewall prüfen (sudo ufw allow samba). |
|
||||||
|
|Zugriff verweigert |Nutzer nicht in smbpasswd oder falsche Rechte. |sudo smbpasswd -a nutzername ausführen. Rechte mit chmod/chown prüfen.|
|
||||||
|
|Dateien können nicht gelöscht werden|Nutzer ist nicht Besitzer und hat keine Schreibrechte.|chmod g+w oder chown anpassen. |
|
||||||
|
|Gruppe wird nicht übernommen |force group fehlt in smb.conf. |force group = gruppenname ergänzen. |
|
||||||
|
|Neue Dateien haben falsche Rechte |force create mode/force directory mode fehlt. |force create mode = 0660 und force directory mode = 0770 setzen. |
|
||||||
|
|
||||||
|
`````
|
||||||
170
mkdocs/docs/Windows_Programme_unter_Linux.md
Normal file
@@ -0,0 +1,170 @@
|
|||||||
|
`````markdown
|
||||||
|
# Windows-Programme unter Linux
|
||||||
|
|
||||||
|
Diese Anleitung zeigt Schritt für Schritt, wie Sie unter Linux Mint zuerst Notepad++ und anschließend 7‑Zip (Windows‑Version) mit Bottles installieren.
|
||||||
|
|
||||||
|
## Voraussetzungen
|
||||||
|
|
||||||
|
* Installiertes Linux Mint
|
||||||
|
* Internetzugang
|
||||||
|
* Ein normales Benutzerkonto
|
||||||
|
|
||||||
|
## Bottles installieren
|
||||||
|
|
||||||
|
1. Öffnen Sie das **Menü** unten links und starten Sie den **Software‑Manager**.
|
||||||
|
2. Suchen Sie nach **„Bottles“**.
|
||||||
|
3. Wählen Sie **„Bottles“** (Quelle „Flathub“ oder „Flatpak“) und klicken Sie auf **Installieren**.
|
||||||
|
4. Nach der Installation finden Sie Bottles im Menü, z. B. unter **Zubehör → Bottles**.
|
||||||
|
|
||||||
|
## Flatseal installieren und Berechtigungen für Bottles setzen
|
||||||
|
|
||||||
|
Damit Verknüpfungen (Desktop‑Icons und Menüeinträge) korrekt angelegt werden können, braucht Bottles Zugriff auf bestimmte Ordner.
|
||||||
|
|
||||||
|
### Flatseal installieren
|
||||||
|
|
||||||
|
1. Öffnen Sie erneut den **Software‑Manager**.
|
||||||
|
2. Suchen Sie nach **„Flatseal“**.
|
||||||
|
3. Wählen Sie **„Flatseal“** aus und klicken Sie auf **Installieren**.
|
||||||
|
|
||||||
|
### Berechtigungen für Bottles anpassen
|
||||||
|
|
||||||
|
1. Starten Sie **Flatseal** über das Menü.
|
||||||
|
2. Wählen Sie in der linken Liste die Anwendung **„Bottles“** aus.
|
||||||
|
3. Gehen Sie zum Bereich **„Filesystem"** (oder „Dateisystem“).
|
||||||
|
4. Aktivieren bzw. fügen Sie folgende Pfade hinzu:
|
||||||
|
* ```xdg-data/applications```
|
||||||
|
* ```~/.local/share/applications```
|
||||||
|
5. Speichern ist nicht nötig; die Änderungen gelten sofort.
|
||||||
|
6. Schließen Sie Flatseal und starten Sie **Bottles** einmal neu.
|
||||||
|
|
||||||
|
Damit kann Bottles jetzt Desktop‑Verknüpfungen und Menüeinträge korrekt anlegen.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Notepad++
|
||||||
|
|
||||||
|
### Erste Bottle für Notepad++ anlegen
|
||||||
|
|
||||||
|
1. Starten Sie **Bottles**.
|
||||||
|
2. Klicken Sie auf **„Create a new bottle"** bzw oben links auf das ````+````.
|
||||||
|
3. Geben Sie einen Namen ein, zum Beispiel **„NotepadPlusPlus"**.
|
||||||
|
4. Wählen Sie als Umgebung **„Application"** (Programm).
|
||||||
|
5. Klicken Sie auf **„Create"** und warten Sie, bis die Bottle erstellt wurde.
|
||||||
|
|
||||||
|
### Notepad++ herunterladen
|
||||||
|
|
||||||
|
1. Öffnen Sie Ihren **Webbrowser** (z. B. Firefox).
|
||||||
|
2. Rufen Sie die Seite auf:
|
||||||
|
* `https://notepad-plus-plus.org`
|
||||||
|
3. Klicken Sie auf **Download**.
|
||||||
|
4. Laden Sie den **Windows‑Installer** (Dateiname ähnlich `npp.x.y.Installer.exe`) in den Ordner **Downloads** herunter.
|
||||||
|
|
||||||
|
### Notepad++ in Bottles installieren
|
||||||
|
|
||||||
|
1. Wechseln Sie zu **Bottles** und öffnen Sie die Bottle **„NotepadPlusPlus"**.
|
||||||
|
2. Klicken Sie auf **„Run executable"**.
|
||||||
|
3. Navigieren Sie im Dateidialog zum Ordner **Downloads**.
|
||||||
|
4. Wählen Sie die Datei `npp.x.y.Installer.exe` aus und klicken Sie auf **Öffnen**.
|
||||||
|
5. Im Installationsassistenten:
|
||||||
|
* Sprache auswählen (z. B. Deutsch)
|
||||||
|
* Lizenzbedingungen akzeptieren
|
||||||
|
* Standardpfad beibehalten
|
||||||
|
* Komponenten unverändert lassen
|
||||||
|
6. Zum Schluss auf **Fertigstellen** klicken.
|
||||||
|
|
||||||
|
Bottles legt nun in dieser Bottle einen Programmeintrag für Notepad++ an und kann – mit den eingestellten Rechten – auch Verknüpfungen anlegen.
|
||||||
|
|
||||||
|
### Notepad++ starten und testen
|
||||||
|
|
||||||
|
1. Öffnen Sie in **Bottles** die Bottle **„NotepadPlusPlus"**.
|
||||||
|
2. Unter **„Programs"** (Programme) finden Sie **„Notepad++"**.
|
||||||
|
3. Klicken Sie auf **Notepad++**, um das Programm zu starten.
|
||||||
|
4. Testen Sie die Funktion:
|
||||||
|
* Neue Datei anlegen
|
||||||
|
* Text schreiben
|
||||||
|
* Datei in Ihrem Home‑Ordner speichern
|
||||||
|
|
||||||
|
Wenn die Berechtigungen korrekt gesetzt sind, können Sie in Bottles außerdem eine **Desktop‑Verknüpfung** oder einen **Menüeintrag** erstellen. Hierfür einfach auf ````...```` klicken und
|
||||||
|
|
||||||
|
## 7-Zip
|
||||||
|
|
||||||
|
### Zweite Bottle für 7‑Zip anlegen
|
||||||
|
|
||||||
|
1. Starten Sie **Bottles**, falls es geschlossen ist.
|
||||||
|
2. Klicken Sie auf **„Create a new bottle"**.
|
||||||
|
3. Geben Sie einen Namen ein, z. B. **„7zip"**.
|
||||||
|
4. Wählen Sie wieder die Umgebung **„Application"**.
|
||||||
|
5. Klicken Sie auf **„Create"** und warten Sie, bis die Bottle eingerichtet ist.
|
||||||
|
|
||||||
|
### 7‑Zip herunterladen
|
||||||
|
|
||||||
|
1. Öffnen Sie den **Webbrowser**.
|
||||||
|
2. Rufen Sie die offizielle 7‑Zip‑Seite auf:
|
||||||
|
* `https://www.7-zip.org`
|
||||||
|
3. Laden Sie die **64‑Bit‑Version für Windows** herunter (Datei ähnlich `7zxx-x64.exe`).
|
||||||
|
4. Speichern Sie die Datei im Ordner **Downloads**.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 7‑Zip in Bottles installieren
|
||||||
|
|
||||||
|
1. Öffnen Sie in **Bottles** die Bottle **„7zip"**.
|
||||||
|
2. Klicken Sie auf **„Run executable"**.
|
||||||
|
3. Wählen Sie im Ordner **Downloads** die Datei `7zxx-x64.exe` aus.
|
||||||
|
4. Bestätigen Sie mit **Öffnen**.
|
||||||
|
5. Im Installationsfenster von 7‑Zip:
|
||||||
|
* Installationspfad unverändert lassen (`C:\Program Files\7-Zip`)
|
||||||
|
* Auf **Install** klicken
|
||||||
|
* Nach Abschluss auf **Close** klicken
|
||||||
|
|
||||||
|
### 7‑Zip starten
|
||||||
|
|
||||||
|
1. Öffnen Sie in **Bottles** die Bottle **„7zip"**.
|
||||||
|
2. Unter **„Programs"** finden Sie **„7zFM"**.
|
||||||
|
3. Klicken Sie auf diesen Eintrag, um den 7‑Zip‑Dateimanager zu starten.
|
||||||
|
|
||||||
|
#### Dateien mit 7‑Zip komprimieren
|
||||||
|
|
||||||
|
1. Im 7‑Zip‑Fenster wählen Sie oben ein Laufwerk aus, z. B. **„Z:“**.
|
||||||
|
* „Z:“ ist normalerweise mit Ihrem Linux‑Dateisystem verbunden.
|
||||||
|
2. Navigieren Sie zu Ihrem **Home‑Ordner** und zu einem Testordner (z. B. `Dokumente/Test`).
|
||||||
|
3. Markieren Sie einige Dateien, die Sie komprimieren möchten.
|
||||||
|
4. Klicken Sie oben auf **„Add"** (Hinzufügen).
|
||||||
|
5. Im Dialog:
|
||||||
|
* Archivname eingeben, z. B. `testarchiv.7z`
|
||||||
|
* Format wählen (z. B. `7z` oder `zip`)
|
||||||
|
* Kompressionsstufe auswählen (z. B. „Normal")
|
||||||
|
6. Klicken Sie auf **OK**.
|
||||||
|
7. Das neue Archiv erscheint im gleichen Ordner.
|
||||||
|
|
||||||
|
#### Archive mit 7‑Zip entpacken
|
||||||
|
|
||||||
|
1. Suchen Sie im 7‑Zip‑Fenster ein vorhandenes Archiv (`.zip`, `.7z` o. Ä.).
|
||||||
|
2. Markieren Sie das Archiv mit einem Linksklick.
|
||||||
|
3. Klicken Sie oben auf **„Extract"** (Entpacken).
|
||||||
|
4. Wählen Sie im Dialog den Zielordner oder akzeptieren Sie den vorgeschlagenen Ordner.
|
||||||
|
5. Klicken Sie auf **OK**.
|
||||||
|
6. Die entpackten Dateien erscheinen anschließend im gewählten Ordner.
|
||||||
|
|
||||||
|
## Häufige Probleme und einfache Lösungen
|
||||||
|
|
||||||
|
### Programm startet nicht
|
||||||
|
|
||||||
|
* Schließen Sie die Bottle und öffnen Sie sie erneut.
|
||||||
|
* Starten Sie Bottles bei Bedarf vollständig neu und versuchen Sie es noch einmal.
|
||||||
|
|
||||||
|
### Desktop‑Verknüpfung fehlt
|
||||||
|
|
||||||
|
* Desktop-Verknüpfungen sind erst mal nur im Startmenü
|
||||||
|
* Prüfen Sie in **Flatseal**, ob Bottles Zugriff auf
|
||||||
|
* `~/Desktop`
|
||||||
|
* `~/.local/share/applications`
|
||||||
|
hat.
|
||||||
|
* Falls Änderungen vorgenommen wurden, muss bottles neu gestartet werden. Idealerweise reboot.
|
||||||
|
|
||||||
|
### Dateien im Linux‑System nicht sichtbar
|
||||||
|
|
||||||
|
* Stellen Sie im 7‑Zip‑Fenster sicher, dass Sie das Laufwerk **„Z:“** gewählt haben.
|
||||||
|
* Navigieren Sie von dort in Ihr Home‑Verzeichnis.
|
||||||
|
|
||||||
|
`````
|
||||||
|
Before Width: | Height: | Size: 187 KiB After Width: | Height: | Size: 187 KiB |
|
Before Width: | Height: | Size: 375 KiB After Width: | Height: | Size: 375 KiB |
|
Before Width: | Height: | Size: 9.8 KiB After Width: | Height: | Size: 9.8 KiB |
|
Before Width: | Height: | Size: 93 KiB After Width: | Height: | Size: 93 KiB |
|
Before Width: | Height: | Size: 250 KiB After Width: | Height: | Size: 250 KiB |
|
Before Width: | Height: | Size: 433 KiB After Width: | Height: | Size: 433 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 158 KiB After Width: | Height: | Size: 158 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 78 KiB |
8
mkdocs/docs/automatisierung-mit-ansible.md
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
````markdown
|
||||||
|
# Automatisierung mit Ansible
|
||||||
|
|
||||||
|
Kurze Einführung in Ansible und typische Playbook-Beispiele.
|
||||||
|
|
||||||
|
... (Inhalt aus Bonus wird hier übernommen)
|
||||||
|
|
||||||
|
````
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
# Praxisprojekt Medien-NAS für KODI
|
# Praxisprojekt Medien-NAS für KODI
|
||||||
|
{align=right}
|
||||||
## Ziel des Projekts
|
## Ziel des Projekts
|
||||||
|
|
||||||
Aufgebaut wird ein **Medien-Server mit Samba**, auf den **Windows-Clients** Medien (Musik, Videos, Bilder, ROMs) per **Windows-Freigabe** ablegen, und den eine **Kodi-VM** wiederum per SMB einbindet.
|
Aufgebaut wird ein **Medien-Server mit Samba**, auf den **Windows-Clients** Medien (Musik, Videos, Bilder, ROMs) per **Windows-Freigabe** ablegen, und den eine **Kodi-VM** wiederum per SMB einbindet.
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
# Samba-Konfiguration für Linux-Einsteiger
|
# Samba-Konfiguration für Linux-Einsteiger
|
||||||
|

|
||||||
## Einführung in Samba
|
## Einführung in Samba
|
||||||
**Samba** ist eine Open-Source-Software, die es Linux-Systemen ermöglicht, **Datei* und Druckdienste** für Windows-, macOS* und andere Linux-Clients bereitzustellen. Samba implementiert das **SMB/CIFS-Protokoll** (Server Message Block / Common Internet File System), das in Windows-Netzwerken standardmäßig verwendet wird.
|
**Samba** ist eine Open-Source-Software, die es Linux-Systemen ermöglicht, **Datei* und Druckdienste** für Windows-, macOS* und andere Linux-Clients bereitzustellen. Samba implementiert das **SMB/CIFS-Protokoll** (Server Message Block / Common Internet File System), das in Windows-Netzwerken standardmäßig verwendet wird.
|
||||||
|
|
||||||
|
|||||||
67
mkdocs/docs/docker-grundlagen.md
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
`````markdown
|
||||||
|
# Docker-Grundlagen
|
||||||
|
## Virtuelle Maschinen (VMs) vs. Container
|
||||||
|
|
||||||
|
|Kriterium |Virtuelle Maschine (VM) |Container |
|
||||||
|
|-------------------|----------------------------------------------|------------------------------------|
|
||||||
|
|Isolation |Vollständige OS-Isolation (Hardware-Ebene) |Prozess-Isolation (OS-Ebene) |
|
||||||
|
|Ressourcenverbrauch|Hoch (eigenes OS pro VM) |Gering (teilt Host-OS-Kernel) |
|
||||||
|
|Startzeit |Minuten |Sekunden |
|
||||||
|
|Portabilität |Schwerer (große Images) |Leicht (kleine Images) |
|
||||||
|
|Anwendungsfall |Vollständige Systeme (z. B. Windows auf Linux)|Mikroservices, Web-Apps, Datenbanken|
|
||||||
|
|
||||||
|
**Fazit**: Container sind ideal für schnelle, ressourcenschonende Bereitstellung von Anwendungen.
|
||||||
|
## Docker installieren
|
||||||
|
|
||||||
|
[Immer aktuelles Setup anschauen](https://docs.docker.com/engine/install/ubuntu/)
|
||||||
|
|
||||||
|
````bash
|
||||||
|
# Alte Docker-Versionen entfernen
|
||||||
|
sudo apt removes docker.io docker-compose docker-compose-v2 docker-doc podman-docker containerd runc
|
||||||
|
# Abhängigkeiten installieren
|
||||||
|
sudo apt update
|
||||||
|
sudo apt install -y ca-certificates curl gnupg
|
||||||
|
|
||||||
|
# Docker-Repository hinzufügen
|
||||||
|
sudo install -m 0755 -d /etc/apt/keyrings
|
||||||
|
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
|
||||||
|
sudo chmod a+r /etc/apt/keyrings/docker.asc
|
||||||
|
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
|
||||||
|
Types: deb
|
||||||
|
URIs: https://download.docker.com/linux/ubuntu
|
||||||
|
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
|
||||||
|
Components: stable
|
||||||
|
Signed-By: /etc/apt/keyrings/docker.asc
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# Docker installieren
|
||||||
|
sudo apt update
|
||||||
|
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
||||||
|
|
||||||
|
# Docker-Dienst starten und aktivieren
|
||||||
|
sudo systemctl enable docker
|
||||||
|
sudo systemctl start docker
|
||||||
|
|
||||||
|
# Benutzer zur Docker-Gruppe hinzufügen (für Passwortlosigkeit)
|
||||||
|
sudo usermod -aG docker $USER
|
||||||
|
newgrp docker # Aktuelle Shell aktualisieren
|
||||||
|
````
|
||||||
|
|
||||||
|
## Erste Schritte: "Hello World" mit Docker
|
||||||
|
Fertigen Container ausprobieren:
|
||||||
|
````bash
|
||||||
|
docker run hello-world
|
||||||
|
````
|
||||||
|
> Ausgabe:
|
||||||
|
````
|
||||||
|
Hello from Docker!
|
||||||
|
This message shows that your installation appears to be working correctly.
|
||||||
|
...
|
||||||
|
````
|
||||||
|
Tatsächlich erklärt der Container selbst was er getan hat.
|
||||||
|
* ````docker run````: Führt einen Container aus.
|
||||||
|
* ````hello-world````: Offizielles Test-Image von Docker Hub.
|
||||||
|
|
||||||
|
... (Inhalt gekürzt für Übersicht)
|
||||||
|
|
||||||
|
`````
|
||||||
@@ -2,13 +2,41 @@
|
|||||||
|
|
||||||
Sehr geehrte Teilnehmende,
|
Sehr geehrte Teilnehmende,
|
||||||
|
|
||||||
willkommen zur Kursübersicht rund um Linux für angehende IT-Meisterinnen und IT-Meister.
|
willkommen zur Kursübersicht für den Meisterkurs "Linux Grundlagen". Diese Startseite bietet eine schnelle Orientierung über die Kapitel, direkte Verweise auf die Unterlagen und kurze Hinweise, worum es jeweils geht.
|
||||||
Diese Dokumentation bietet eine strukturierte Zusammenstellung der Arbeitsaufträge und Grundlagen, um praxisnah und fundiert in Linux und Unternehmensumgebungen einzusteigen.
|
|
||||||
|
|
||||||
Die Inhalte begleiten von den ersten Schritten am Desktop und in der Konsole über wichtige Automatisierungsthemen wie `cron` und `systemd` bis hin zu realen Einsatzszenarien im Unternehmen, etwa Active Directory, Samba-Freigaben und Nextcloud. Zusätzlich werden Bonuskapitel zu Docker angeboten, um containerbasierte Technologien kennenzulernen.
|
Kursstruktur — Schneller Überblick
|
||||||
|
|
||||||
|
- **Grundlagen**: Einstieg am Desktop, Arbeiten in der Konsole und kleine Praxisprojekte
|
||||||
|
- Einstieg in den Linux‑Desktop: [Einstieg in Linux-Desktop](Einstieg_in_Linux-Desktop.md)
|
||||||
|
- Grundlagen der Konsole: [Grundlagen der Konsole](Grundlagen_der_Konsole.md)
|
||||||
|
- Windows‑Programme unter Linux: [Windows‑Programme unter Linux](Windows_Programme_unter_Linux.md)
|
||||||
|
- Kleines Praxisprojekt: [Mein erstes kleines Linux‑Projekt](Mein_erstes_kleines_Linux-Projekt.md)
|
||||||
|
- Medien‑NAS (KODI): [Praxisprojekt Medien‑NAS für KODI](Praxisprojekt_Medien-NAS_fuer_KODI.md)
|
||||||
|
|
||||||
Die Navigation auf der linken Seite ermöglicht einen schnellen Zugriff auf die gewünschten Themen. Für den bestmöglichen Lernerfolg wünschen wir viel Erfolg und Freude.
|
|
||||||
|
- Automatisierung mit `cron` und `systemd`: [Automatisierung mit cron und systemd](Automatisierung_mit_cron_und_systemd.md)
|
||||||
|
- Windows‑Freigaben für Linux‑Einsteiger (Samba): [Windows‑Freigaben für Linux‑Einsteiger](Windows_Freigaben_fuer_Linux-Einsteiger.md)
|
||||||
|
|
||||||
Mit freundlichen Grüßen
|
|
||||||
|
- Ubuntu Server: [Server installieren und konfigurieren](Server_Installation.md)
|
||||||
|
- Freigaben im Unternehmen: [Praxisprojekt Freigaben im Unternehmen](Praxisprojekt_Freigaben_im_Unternehmen.md)
|
||||||
|
- Nextcloud mit LDAP: [Nextcloud & LDAP](nextcloud-ldap.md)
|
||||||
|
|
||||||
|
|
||||||
|
- Linux als AD‑Server: [Linux als Active Directory Server](linux-als-ad-server.md)
|
||||||
|
- Linux als AD‑Client: [Linux als Client in Active Directory](linux-als-ad-client.md)
|
||||||
|
- Automatisierung mit Ansible: [Automatisierung mit Ansible](automatisierung-mit-ansible.md)
|
||||||
|
- Docker‑Grundlagen: [Docker Grundlagen](docker-grundlagen.md)
|
||||||
|
|
||||||
|
|
||||||
|
Vorgehen für Kursaufgaben
|
||||||
|
|
||||||
|
1. Folgen Sie der empfohlenen Reihenfolge: Basics → Automatisierung → Linux im Unternehmen → Bonuskapitel.
|
||||||
|
2. Führen Sie die Praxisprojekte Schritt für Schritt durch und dokumentieren Sie Ergebnisse.
|
||||||
|
3. Nutzen Sie die linken Navigationselemente für schnellen Zugriff.
|
||||||
|
|
||||||
|
Viel Erfolg und gutes Gelingen!
|
||||||
|
|
||||||
|
Mit freundlichen Grüßen
|
||||||
|
|
||||||
**Florian Hensel**
|
**Florian Hensel**
|
||||||
|
|||||||
BIN
mkdocs/docs/linux-als-ad-client.md
Normal file
11
mkdocs/docs/linux-als-ad-server.md
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
````markdown
|
||||||
|
# Installation Ubuntu Server 24.04 LTS
|
||||||
|
|
||||||
|
Die Installation des Ubuntu Servers Erfolgt in Virtualbox. Achten Sie
|
||||||
|
bei der Einrichtung der VM darauf, dass die unbeaufsichtigte
|
||||||
|
Installation nicht durchgeführt wird, da einzelne Schritte relevant
|
||||||
|
sind.
|
||||||
|
|
||||||
|
... (gekürzt; vollständige Anleitung verbleibt im Original)
|
||||||
|
|
||||||
|
````
|
||||||
123
mkdocs/docs/nextcloud-ldap.md
Normal file
@@ -0,0 +1,123 @@
|
|||||||
|
# Nextcloud mit LDAP-Anbindung
|
||||||
|
|
||||||
|
Nextcloud ermöglicht eine private Cloud für Ihre Organisation. Diese Anleitung zeigt die grundlegende Installation, Datenbank‑Einrichtung, Webserverkonfiguration, SSL, Cron‑Jobs und die Anbindung an ein LDAP/AD.
|
||||||
|
|
||||||
|
## Vorbereitungen
|
||||||
|
|
||||||
|
- Installieren Sie einen Webserver (z.B. `apache2`) und eine SQL‑Datenbank (`mariadb-server`).
|
||||||
|
- Stellen Sie sicher, dass Sie einen DNS‑eintrag / FQDN für die Nextcloud‑Instanz haben.
|
||||||
|
|
||||||
|
## Installation — benötigte Pakete
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo apt update
|
||||||
|
sudo apt install apache2 mariadb-server libapache2-mod-php php php-mysql \
|
||||||
|
php-xml php-gd php-curl php-zip php-mbstring php-intl php-bcmath php-gmp \
|
||||||
|
php-imagick php-redis redis-server php-ldap php-smbclient unzip phpmyadmin
|
||||||
|
```
|
||||||
|
|
||||||
|
Konfigurieren Sie `phpmyadmin` während der Installation für `apache2` und sichern Sie die Datenbank mit `sudo mysql_secure_installation`.
|
||||||
|
|
||||||
|
## Nextcloud herunterladen und installieren
|
||||||
|
|
||||||
|
```bash
|
||||||
|
wget https://download.nextcloud.com/server/releases/latest.zip
|
||||||
|
unzip latest.zip
|
||||||
|
sudo cp -r nextcloud /var/www/
|
||||||
|
sudo chown -R www-data:www-data /var/www/nextcloud/
|
||||||
|
sudo mkdir /srv/cloud && sudo chown www-data:www-data /srv/cloud
|
||||||
|
```
|
||||||
|
|
||||||
|
Erstellen Sie eine Apache‑Site `/etc/apache2/sites-available/nextcloud.conf` (Beispiel unten) und aktivieren Sie die Site:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo a2ensite nextcloud
|
||||||
|
sudo a2dissite 000-default.conf
|
||||||
|
sudo a2enmod rewrite headers env dir mime setenvif ssl
|
||||||
|
sudo systemctl restart apache2
|
||||||
|
```
|
||||||
|
|
||||||
|
Beispiel VirtualHost (HTTP → HTTPS Redirect und SSL später):
|
||||||
|
|
||||||
|
```apacheconf
|
||||||
|
<VirtualHost *:80>
|
||||||
|
DocumentRoot "/var/www/nextcloud"
|
||||||
|
ServerName nextcloud.example.local
|
||||||
|
RewriteEngine On
|
||||||
|
RewriteCond %{HTTPS} Off
|
||||||
|
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
|
||||||
|
</VirtualHost>
|
||||||
|
```
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Redis als Cache aktivieren
|
||||||
|
|
||||||
|
Installieren Sie `redis-server` (siehe Paketliste) und passen Sie die Nextcloud‑Config an (`/var/www/nextcloud/config/config.php`):
|
||||||
|
|
||||||
|
```php
|
||||||
|
'memcache.distributed' => '\\OC\\Memcache\\Redis',
|
||||||
|
'memcache.local' => '\\OC\\Memcache\\Redis',
|
||||||
|
'memcache.locking' => '\\OC\\Memcache\\Redis',
|
||||||
|
'redis' => array('host' => 'localhost','port' => 6379),
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
## SSL — selbstsigniertes Zertifikat (Beispiel)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo openssl req -new -x509 -days 365 -nodes -out /etc/ssl/certs/NextCloud.pem -keyout /etc/ssl/private/NextCloud.key
|
||||||
|
```
|
||||||
|
|
||||||
|
Aktivieren Sie das Zertifikat in der Apache‑Site (VirtualHost :443) und starten Sie Apache neu.
|
||||||
|
|
||||||
|
## Cronjob für Nextcloud
|
||||||
|
|
||||||
|
Nextcloud sollte per Cron regelmäßig Aufgaben ausführen. Beispiel (ausführen als `www-data`):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo crontab -u www-data -e
|
||||||
|
*/15 * * * * php -f /var/www/nextcloud/cron.php
|
||||||
|
```
|
||||||
|
|
||||||
|
Weitere Informationen zu Cron und systemd finden Sie in der Anleitung: [Automatisierung mit cron und systemd](Automatisierung_mit_cron_und_systemd.md).
|
||||||
|
|
||||||
|
## Design + Firmenlogo
|
||||||
|
|
||||||
|
Passen Sie das Design über das Nextcloud‑Admin‑Interface an. Empfohlene Dateiformate: `.png`, `.jpg`, `.ico`.
|
||||||
|
|
||||||
|
- Logo: `assets/nextcloud/design/Logo.png`
|
||||||
|
- Hintergrund / Login‑Bild: `assets/nextcloud/design/Login_Image.jpg`
|
||||||
|
- Favicon: `assets/nextcloud/design/favicon.ico`
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## LDAP/AD‑Anbindung (Übersicht)
|
||||||
|
|
||||||
|
Nextcloud kann Benutzer und Gruppen über LDAP/AD synchronisieren. Aktivieren Sie in Nextcloud die App "LDAP user and group backend" und konfigurieren Sie:
|
||||||
|
|
||||||
|
- LDAP‑Server (FQDN + Port)
|
||||||
|
- Bind‑Account (lesender Account) und Passwort
|
||||||
|
- Such‑Bases für Nutzer und Gruppen
|
||||||
|
- Attribute (z.B. `sAMAccountName`) für Login
|
||||||
|
|
||||||
|
Hinweis: Für Samba AD‑Domaincontroller siehe Anleitung: [Linux als Active Directory Server](linux-als-ad-server.md).
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Hinweise
|
||||||
|
|
||||||
|
- Verwenden Sie Dateinamen ohne Leerzeichen.
|
||||||
|
- Testen Sie die Nextcloud‑Webinstallation lokal unter `http://<IP>/` bevor Sie SSL aktivieren.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
Diese Seite wurde rekonstruiert aus der vorhandenen Site‑Ausgabe; bitte prüfe Inhalt und Formatierung und ergänze ggf. Details oder Screenshots.
|
||||||
|
`````markdown
|
||||||
|
# Nextcloud mit LDAP-Anbindung
|
||||||
|
|
||||||
|
NextCloud bringt ihnen eine erweiterte Funktionalität der Bereitstellung und Synchronisierung ihrer Daten für Mitarbeiter. NextCloud biete über Erweiterungen und Plug-Ins die Möglichkeit auch in anderen Teilen ihres Unternehmens Verbesserungen der Zusammenarbeit zu schaffen. Prinzipiell ist NextCloud aber ihre Private Cloud - Sie wissen, wo die Daten liegen und Sie wissen wer darauf zugreifen kann und darf.
|
||||||
|
|
||||||
|
... (Inhalt übernommen)
|
||||||
|
|
||||||
|
`````
|
||||||
@@ -6,23 +6,23 @@ copyright: >
|
|||||||
nav:
|
nav:
|
||||||
- Home: index.md
|
- Home: index.md
|
||||||
- Grundlagen:
|
- Grundlagen:
|
||||||
- Einstieg in Linux-Desktop: basics/Einstieg_in_Linux-Desktop.md
|
- Einstieg in Linux-Desktop: Einstieg_in_Linux-Desktop.md
|
||||||
- Remotezugriff einrichten: basics/Remotezugriff_einrichten.md
|
- Remotezugriff einrichten: Remotezugriff_einrichten.md
|
||||||
- Kleines Linux-Projekt: basics/Mein_erstes_kleines_Linux-Projekt.md
|
- Kleines Linux-Projekt: Mein_erstes_kleines_Linux-Projekt.md
|
||||||
- Windows-Programme unter Linux: basics/Windows_Programme_unter_Linux.md
|
- Windows-Programme unter Linux: Windows_Programme_unter_Linux.md
|
||||||
- Grundlagen der Konsole: basics/Grundlagen_der_Konsole.md
|
- Grundlagen der Konsole: Grundlagen_der_Konsole.md
|
||||||
- Automatisierung mit cron und systemd: basics/Automatisierung_mit_cron_und_systemd.md
|
- Automatisierung mit cron und systemd: Automatisierung_mit_cron_und_systemd.md
|
||||||
- Windows-Freigaben für Linux-Einsteiger: basics/Windows_Freigaben_fuer_Linux-Einsteiger.md
|
- Windows-Freigaben für Linux-Einsteiger: Windows_Freigaben_fuer_Linux-Einsteiger.md
|
||||||
- Praxisprojekt Medien-NAS für KODI: basics/Praxisprojekt_Medien-NAS_fuer_KODI.md
|
- Praxisprojekt Medien-NAS für KODI: Praxisprojekt_Medien-NAS_fuer_KODI.md
|
||||||
- Linux im Unternehmen:
|
- Linux im Unternehmen:
|
||||||
- Ubuntu Server installieren und konfigurieren: Linux_Unternehmen/Server_Installation.md
|
- Ubuntu Server installieren und konfigurieren: Server_Installation.md
|
||||||
- Praxisprojekt Freigaben im Unternehmen: Linux_Unternehmen/Praxisprojekt_Freigaben_im_Unternehmen.md
|
- Praxisprojekt Freigaben im Unternehmen: Praxisprojekt_Freigaben_im_Unternehmen.md
|
||||||
- Nextcloud mit LDAP-Anbindung: Linux_Unternehmen/nextcloud-ldap.md
|
- Nextcloud mit LDAP-Anbindung: nextcloud-ldap.md
|
||||||
- Bonuskapitel:
|
- Bonuskapitel:
|
||||||
- Linux als Active Directory Server: bonus/linux-als-ad-server.md
|
- Linux als Active Directory Server: linux-als-ad-server.md
|
||||||
- Linux als Client in Active Directory: bonus/linux-als-ad-client.md
|
- Linux als Client in Active Directory: linux-als-ad-client.md
|
||||||
- Automatisierung mit Ansible: bonus/automatisierung-mit-ansible.md
|
- Automatisierung mit Ansible: automatisierung-mit-ansible.md
|
||||||
- Docker Grundlagen: bonus/docker-grundlagen.md
|
- Docker Grundlagen: docker-grundlagen.md
|
||||||
# Theme
|
# Theme
|
||||||
theme:
|
theme:
|
||||||
logo: assets/Logo.png
|
logo: assets/Logo.png
|
||||||
|
|||||||