# Praxisprojekt Medien-NAS für KODI

## 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.  
Der ursprüngliche USB-Stick entfällt – alle Medien kommen direkt aus dem Netzwerk (z. B. vom Windows-PC).

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

---

## Inhaltsverzeichnis
[TOC]
