yavdr ansible

  • Das Problem: Sobald kein Netzwerkkabel steckt, ist die Bootzeit sehr lang.

    Sicher, dass er da nicht auf den DHCP-Server wartet (netplan ist da IIRC etwas bockig, so dass man im Zweifelsfall direkt über systemd-networkd gehen muss)?

    systemd-analyze critical-chain

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Nein.


    Das System ist Ubuntu 20.04 LTS Serverinstallation mit OpenSSH Server und das Ansible Script laufen lassen.

    Nix verändert.

  • Mit der Rolle yavdr-desktop wird nun udisk eingeführt, welches mit einem X System funktioniert.

    Leider mit einem headless System nicht, wegen fehlendem X.

    Ich hatte versucht dies in eine extra Rolle zu implantieren, aber leider ohne Erfolg.

    Mount funktioniert, unmount leider nicht.

    Vielleicht hat ja jemand eine Idee!?

    Anbei mein Versuch.

    seahawk1986 Murry  

    Files

    VDR User: 2127
    YaVDR-bionic , Case: HFX Classic, Mainboard: ASUS H97M-E, CPU: Intel Celeron CPU G1840T, GPU: GeForce GT 1030, DVB-S: Digital Devices Cine S2 V6
    YaVDR-bionic (24/7), Case: Akasa, Mainboard: NUC D34010WYB, DVB-S: SkyTV Ultimate VIII, Miscellaneous: epgd, pihole (DoH)

    YaVDR-bionic (headless), System: HP 260 G2 DM, DVB-S: Sundtek SkyTV Ultimate IV

  • Vielleicht hat ja jemand eine Idee!?

    Die rc.local sollte man eigentlich nicht mehr nutzen und udiskie sollte unter dem User vdr laufen, damit der auch umounten darf.


    Für focal ist der Start von udiskie in der der headless-Session schon mit drin (die rolle udiskie wird als Abhängigkeit zuvor ausgeführt): https://github.com/yavdr/yavdr…al/roles/headless-session

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Für focal ist der Start von udiskie in der der headless-Session schon mit drin

    Ich habe mir mal die notwendigen Rollen aus focal kopiert und bin dabei auf Probleme gestoßen.

    Kopiert habe ich udiskie, session-common und headless-session

    Im Playbook rufe ich nur headless-session auf, der Rest ist abhängig.

    Probleme hatte ich mit:

    - udiskie.service.j2, hier musste das Description: dynamic ersetzt werden durch Description=dynamic

    - es wird zwar das Paket policykit-1 installiert, aber keine Berechtigungen. Ich hänge meine Datei mal an, kann man sicher noch verbessern10-udisks.pkla.txt

    Für mich nicht lösbar, udiskie wird unter den User vdr gestartet, das mounten funktioniert aber nicht.

    Fehlermeldung:

    Der Fehler sieht nach Berechtigung aus. An den angelegten Berechtigungen kann es aber eigentlich nicht liegen.

    Wenn ich udiskie kille killall udiskie und dann als User vdr neu starte, wird die Festplatte sofort gemountet.

    root@vdrslz:/root# su vdr

    vdr@vdrslz:$ udiskie -v &

    Bin (mal wieder) ratlos

    Frank

    VDR User: 2127
    YaVDR-bionic , Case: HFX Classic, Mainboard: ASUS H97M-E, CPU: Intel Celeron CPU G1840T, GPU: GeForce GT 1030, DVB-S: Digital Devices Cine S2 V6
    YaVDR-bionic (24/7), Case: Akasa, Mainboard: NUC D34010WYB, DVB-S: SkyTV Ultimate VIII, Miscellaneous: epgd, pihole (DoH)

    YaVDR-bionic (headless), System: HP 260 G2 DM, DVB-S: Sundtek SkyTV Ultimate IV

  • Hi,


    ich wollte eigentlich mal etwas mit zfs spielen, wie ich jetzt jedoch herausfinden musste, bietet nur der Installer der Ubuntu Desktop Variante die Option an, das Root Filesystem auf zfs zu legen, nicht jedoch die Server Variante.


    Ist die Installation von yavdr via Ansible mit der Desktop Variante ebenfalls möglich, oder würde das keinen Sinn machen?

  • Ist die Installation von yavdr via Ansible mit der Desktop Variante ebenfalls möglich, oder würde das keinen Sinn machen?

    Der Login-Manager, der vom Ubuntu-Desktop Installer eingerichtet wird, beißt sich leider mit den von yavdr-ansible eingerichteten Rollen zum Start des X-Servers und der Desktop-Session - aber du könntest mal den in https://blog.ls-al.com/ubuntu-server-20-04-zfs-root-and-oci/ beschriebenen Weg probieren.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Bin (mal wieder) ratlos

    Wird die Session des Users vdr denn von loginctl gelistet?

    Code
    1. loginctl list-session

    Und dann mal mit der Session-ID nachsehen, welchen Status die hat:

    Code
    1. loginctl show-session $SESSION_ID

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Ja, die ist da.

    Code
    1. root@vdrslz:~# loginctl list-sessions
    2. SESSION UID USER SEAT TTY
    3. 3 0 root
    4. 1 666 vdr seat0 tty7

    Hatte vorhin ohne udiskie zu killen als User vdrudiskie-mount -a probiert und das hat auch funktioniert.

    VDR User: 2127
    YaVDR-bionic , Case: HFX Classic, Mainboard: ASUS H97M-E, CPU: Intel Celeron CPU G1840T, GPU: GeForce GT 1030, DVB-S: Digital Devices Cine S2 V6
    YaVDR-bionic (24/7), Case: Akasa, Mainboard: NUC D34010WYB, DVB-S: SkyTV Ultimate VIII, Miscellaneous: epgd, pihole (DoH)

    YaVDR-bionic (headless), System: HP 260 G2 DM, DVB-S: Sundtek SkyTV Ultimate IV

  • An den angelegten Berechtigungen kann es aber eigentlich nicht liegen.

    OK, das nehme ich mal zurück und behaupte das Gegenteil:mua

    Das Problem liegt doch in der 10-udisks.pkla.

    Scheinbar ist die Session des Users vdr für polkit inaktiv, es muss also explicit mit ResultInactive=yes die Standardeinstellung überschrieben werden.

    Anbei die aktualisierte Datei.10-udisks.pkla.txt

    Die tatsächlich notwendigen Berechtigungen Action=org.freedesktop.udisks2.* kann man sicher noch etwas feiner aufschlüsseln.


    Gruß

    Frank

    VDR User: 2127
    YaVDR-bionic , Case: HFX Classic, Mainboard: ASUS H97M-E, CPU: Intel Celeron CPU G1840T, GPU: GeForce GT 1030, DVB-S: Digital Devices Cine S2 V6
    YaVDR-bionic (24/7), Case: Akasa, Mainboard: NUC D34010WYB, DVB-S: SkyTV Ultimate VIII, Miscellaneous: epgd, pihole (DoH)

    YaVDR-bionic (headless), System: HP 260 G2 DM, DVB-S: Sundtek SkyTV Ultimate IV

  • Probleme hatte ich mit:

    - udiskie.service.j2, hier musste das Description: dynamic ersetzt werden durch Description=dynamic

    Danke für den Hinweis, das habe ich gerade behoben.


    Die Session wird aktiv, wenn man auf das tty7 wechselt (also z.B. programmatisch mit sudo chvt 7). Man könnte den headless-VDR an das tty7 binden und dann z.B. mit dem skincurses-Plugin über die Konsole bedienbar machen, für softhddrm wollte ich mir das auch noch ansehen.


    Ein Snippet, um die vdr.service entsprechend zu erweitern würde in etwa so aussehen:

    Code: /etc/systemd/system/vdr.service.d/use-tty7.conf
    1. [Unit]
    2. Conflicts=getty@tty7.service
    3. [Service]
    4. StandardInput=tty-force
    5. StandardOutput=syslog
    6. TTYPath=/dev/tty7
    7. TTYReset=no
    8. TTYVHangup=yes
    9. ExecStartPre=/bin/chvt 7

    Die remote.conf müsste dann noch um KBD.*-Einträge erweitert werden (oder man lernt die Tasten über skincurses an) - im Template aus yaVDR 0.6 hatten wir noch ein paar Einträge drinnen, das müsste ich für yavdr-ansible noch überarbeiten, damit es nach Möglichkeit zu der Tastenbelegung passt, bei der die Buchstabentasten möglichst frei bleiben: https://github.com/yavdr/yavdr…dr/remote.conf/50_keys#L1

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Das mit skincurses muss ich mir noch mal ansehen (da Crasht der VDR unter focal, sobald er beim Start eine Nachricht zeichnen will), aber es sollte schon genügen den ExecStartPre Befehl einzubauen.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Ein Snippet, um die vdr.service entsprechend zu erweitern würde in etwa so aussehen

    Ersetzt das dann die headless-session? Die läuft ja auch auf tty7.

    Ich weiß ja nicht wie andere eine headless-Installation nutzen, aber bei mir steht der Rechner ohne Monitor, Tastatur usw. in der Ecke.

    Eine Möglichkeit zur Bedienung über Tastatur wäre da nur nice to have.

    Oder bringt das auch Vorteile bei einer ssh Verbindung?

    VDR User: 2127
    YaVDR-bionic , Case: HFX Classic, Mainboard: ASUS H97M-E, CPU: Intel Celeron CPU G1840T, GPU: GeForce GT 1030, DVB-S: Digital Devices Cine S2 V6
    YaVDR-bionic (24/7), Case: Akasa, Mainboard: NUC D34010WYB, DVB-S: SkyTV Ultimate VIII, Miscellaneous: epgd, pihole (DoH)

    YaVDR-bionic (headless), System: HP 260 G2 DM, DVB-S: Sundtek SkyTV Ultimate IV

  • Ersetzt das dann die headless-session?

    Nein, das soll nur dafür sorgen, dass der User vdr eine aktive Session bekommt. Man könnte das so runterbrechen:

    Code: /etc/systemd/system/vdr.service.d/use-tty7.conf
    1. [Unit]
    2. Conflicts=getty@tty7.service
    3. [Service]
    4. ExecStartPre=/bin/chvt 7

    Oder bringt das auch Vorteile bei einer ssh Verbindung?

    Ich bin noch am Überlegen, wie man das am besten verbaut (ich hab erst mal andere Baustellen, an denen ich weiter kommen möchte) - eventuell lohnt es sich das skincurses-Interface in eine tmux-Session zu stecken, dann wäre das auch über SSH gut nutzbar.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Alles klar, wenn ich vielleicht irgendwann was testen kann, gib Bescheid.

    Bei mir läuft es jetzt ja mit den Berechtigungen über policykit.

    VDR User: 2127
    YaVDR-bionic , Case: HFX Classic, Mainboard: ASUS H97M-E, CPU: Intel Celeron CPU G1840T, GPU: GeForce GT 1030, DVB-S: Digital Devices Cine S2 V6
    YaVDR-bionic (24/7), Case: Akasa, Mainboard: NUC D34010WYB, DVB-S: SkyTV Ultimate VIII, Miscellaneous: epgd, pihole (DoH)

    YaVDR-bionic (headless), System: HP 260 G2 DM, DVB-S: Sundtek SkyTV Ultimate IV

  • Hallo zusammen,


    ich habe mir einen neuen Fernseher für VDR 1 gekauft.


    Damit die Grafikeinstellungen passen, habe ich das yavdr-ansible-playbook durchlaufen gelassen.


    Nun habe ich noch das Problem, dass meine genutzten Applikationen Firefox und VLC-Player etwas über den Bildschirmrand hinausgehen und somit mit der Maus nicht mehr erreichbar sind.


    Welche Datei müsste man resetten bzw. editieren, sodass die Fenstergröße zum neuen Fernseher passt?


    Vielen Dank!


    Schöne Grüße


    Christian

  • Welche Datei müsste man resetten bzw. editieren, sodass die Fenstergröße zum neuen Fernseher passt?

    Am besten für die Darstellung ist es, wenn du den Overscan im TV abschalten kannst. Wenn du das über den VDR lösen willst, hast du immer eine krumme Skalierung eines künstlich verkleinerten Bildes auf die native Auflösung des TVs.


    Für nvidia-Karten geht das über das Template für die /etc/X11/xorg.conf - für einen HD-ready TV würde das z.B. so aussehen:

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hallo seahawk1986,


    vielen Dank für deine Rückmeldung!


    Ich habe mal in der Bedienungsanleitung und am Fernseher nachgeschaut.

    Bei der Bildeinstellung gibt es die Möglichkeiten "16:9 Standard", "Benutzerdefiniert" und "4:3".

    In der Einstellung "Benutzerdefiniert", wäre es möglich den Overscan zu beinflussen.

    Aber beim bestätigen der Einstellung lande ich immer wieder bei 16:9.


    Beim Fernseher handelt es sich um ein Samsung UE43RU7449.

    Beim VDR 1 habe ich bei der letzten Revision und Update auf yavdr-ansible die Asus Grafikkarte GT 730 ausgebaut,

    die Bildausgabe läuft somit über die integrierte Grafikkarte der CPU.


    Könnte man bei der Intel-Grafikkarte analog der Nvidia-Karten an der xorg.conf etwas beinflussen?


    Schöne Grüße


    Christian