Categorieën
Uncategorized

Jellyfin (docker) quick and dirty

Done on Debian, Docker required. Mind the folder names.

Preparation – Mount a samba share via fstab

create a folder/mountpoint:
mkdir /media/video

For safety create a credentials file in your home folder called .smbcred
nano .smbcred

Paste and customise
username=shareusername
password=sharepassword
Save and change permissions:
chmod 600 ~/.smbcred

Edit fstab:
sudo nano /etc/fstab

Paste and customise:
//yourserver/yourshare /media/video cifs credentials=/home/youruser/.smbcred 0 0

Save & exit, reload fstab:
mount -a

Check if the folder is accessible.

Running Jellyfin

Create folders for Docker bind mounts:
sudo mkdir /usr/jellyfin
sudo mkdir /usr/jellyfin/config
sudo mkdir /usr/jellyfin/cache

Get container:
docker pull jellyfin/jellyfin

Start Jellyfin using the folders created before:
sudo docker run -d --name jellyfin --user 1000:1000 --net=host --volume /usr/jellyfin/config --volume /usr/jellyfin/cache --mount type=bind,source=/media/windows,target=/media --restart=unless-stopped jellyfin/jellyfin

Check user and group values if necessary. (id -u youruser and id -g youruser)

Jellyfin should be up and the cifs share should be available, check http://yourserver:8096 and finish the wizard

In case of issues or more info check https://jellyfin.org/docs/general/administration/installing.html

Using Windows shares

Jellyfin does not handle SMB, media folders on Windows machines should be mounted on the local server in /etc/fstab. Point docker to the mountpoint.

Categorieën
Uncategorized

View Windows oem 10 product key

No use for shady tools. Just run the following from the command line:

wmic path softwarelicensingservice get OA3xOriginalProductKey

Categorieën
Uncategorized

Lighttpd won’t start on Edgerouter 4

After messing around with certificates the Web GUI unceremoniously crashed and couldn’t be persuaded to come back to life. After using

sudo systemctl restart lighttpd

sudo systemctl status lighttpd

* lighttpd.service - Lighttpd Daemon
Loaded: loaded (/lib/systemd/system/lighttpd.service; static; vendor preset: enabled)
Active: failed (Result: exit-code) since Sun 2021-06-06 22:37:34 CEST; 20s ago
Process: 20876 ExecStart=/usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf (code=exited, status=255)
Process: 20873 ExecStartPre=/usr/sbin/lighttpd -t -f /etc/lighttpd/lighttpd.conf (code=exited, status=0/SUCCESS)
Main PID: 20876 (code=exited, status=255)

The last thing I did was to add a certificate for the Web Gui, cf_origin.cert. This errored out and the gui failed because I probably clicked the wrong thing. GTFO.

Check if the error is still present in the configuration. First run configure mode, then:

run show configuration |grep cert

description "certbottest 80"
cert-file /home/bas/cf_origin.cert <------------
[edit]

‘T is.

GUI is a service in EdgeOS or whatever it’s called so:

show service gui

cert-file /home/bas/cf_origin.cert
http-port 80
https-port 443
listen-address 192.168.2.1
older-ciphers enable
[edit]

The specific line has to be deleted. Just use the value the specific line starts with (cert-file in this case)

delete service gui cert-file

show service gui

-cert-file /home/bas/cf_origin.cert <--- note the hyphen
http-port 80
https-port 443
listen-address 192.168.2.1
older-ciphers enable
[edit]

It’s deletion confirmed:

commit

Le double check: show service gui

http-port 80
https-port 443
listen-address 192.168.2.1
older-ciphers enable
[edit]

Restart lighttpd:

sudo systemctl restart lighttpd

sudo systemctl status lighttpd

* lighttpd.service - Lighttpd Daemon
Loaded: loaded (/lib/systemd/system/lighttpd.service; static; vendor preset: enabled)
Active: active (running) since Sun 2021-06-06 22:50:28 CEST; 30s ago
Process: 21730 ExecStartPre=/usr/sbin/lighttpd -t -f /etc/lighttpd/lighttpd.conf (code=exited, status=0/SUCCESS)
Main PID: 21733 (lighttpd)
CGroup: /system.slice/lighttpd.service
|-21733 /usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf
`-21737 python /var/www/python/gui.py
[edit]

Joy to the world, the GUI can be accessed again. Basically the whole thing revolves around grepping the thing you messed up or looking it up old-school in the configuration: run show configuration. This will narrow it down.