Filesystem Encoding

  • Ich habe eine Frage zum Filesystem Encoding auf den Boxen.

    Wenn ich in meinem Plugin sys.getfilesystemencoding() aufrufe, dann bekomme ich ANSI X3.4-1968 geliefert.

    Jetzt frage ich mich wie ich Dateinamen mit Umlauten anlegen kann, bei mir werden anstelle der Umlaute immer ?? angezeigt, wenn ich ein Listing im Terminal mache. Auch die Aufnahmen haben die ?? Im Namen. Im Dateibrowser auf der Box sind die Umlaute aber korrekt.

  • Umlaute in Filesystemen:


    root@dm920:~$ cd /media/hdd

    root@dm920:/media/hdd$ touch aöüß

    root@dm920:/media/hdd$ ls -l

    -rw-r--r-- 1 root root 0 Sep 19 22:08 aöüß

    root@dm920:/media/hdd$ ls a* | od -x

    0000000 c361 c3b6 c3bc 0a9f


    Die Zeichen Werden normal als UTF-8 gespeichert.


    Bitte keine Quelltexte mit CP1152 oder ähnlichen Zeichensätzen verwenden.


    Die Fragezeichen kommen zustande, wenn das erzeugende und das ausgebende Programm unterschiedliche Zeichensätze verwenden.

  • Vielleicht habe mich da zu ungenau ausgedrückt.

    Ich lege über mein Plugin Cover Bilder an, diese werden heruntergeladen und dann auf der Box bzw. einem angeschlossenen Gerät gespeichert. Der Dateiname wird durch das Plugin gebildet und ist UTF-8. Innerhalb des Plugins gibt es auch keine Probleme.


    Wenn ich aber jetzt eine SSH Verbindung zur Box aufbaue (z.B. mit WinSCP oder Putty) und eine Listing des Ordners machen "ls -al" dann sehe ich bei Dateien die Umlaute im Namen haben, die beiden ??.

    Dann ist das also ein Problem des ausgebenden Programms und dessen Zeichensätze?


    Ich bin jetzt nicht vor der Box - werde aber heute Abend mal die Ausgabe von "od" überprüfen, vielleicht schreibe mein Plugin ja doch nicht mit UTF-8 Encoding.

  • Schau mal was bei Putty eingestellt ist. (Siehe Screenshot)

    Bei mir werden Umlaute richtig ausgegeben.


    gruß pclin

  • Dann liegt es vermutlich noch an den Umgebungsvariablen.


    Im CLI eingeben (putty)

    Code
    export LANG=de_DE.UTF-8
    export TERM=xterm
    export XTERM_LOCALE=de_DE.UTF-8

    gruß pclin


    EDIT:

    Teste auch mal mein Beispiel aus Post #4 Screenshot 2

    Dreambox ONE, TWO, DM920UHD, DM900UHD, DM820HD HDD + USB-HUB, Stick 64GB, USB-HDD, Keyboard K400r, Wlan-Stick 11n

    (Flash) DP-OE2.6 (BAXII) eigenes OE2.6, debian-buster, Diverse

    (Flash) DP-OE2.5 (BAXII) eigenes OE2.5-e2+kodi+X, debian-stretch, Diverse
    ---

    AudioDSP: miniDSP 2x4HD

    TV: LG OLED65BX9LB (PicCap)

    ---

    Hyperion (NG), Hyperion (Classic) mit Plugin HyperionControl auf der Dreambox ONE/TWO

    ESP32 mit WLED Wlan 263 LED's SK6812-NW 60 LED/m

    DM9x0 Plugin EnigmaLight, Hyperion (NG)


    Ambilight for ever

    Einmal editiert, zuletzt von pclin ()

  • Ist so nie von DP bzw. Image-Teams gesetzt, das muss man selber machen.

    Für dauerhaft in /etc/profile eintragen.


    gruß pclin

    Dreambox ONE, TWO, DM920UHD, DM900UHD, DM820HD HDD + USB-HUB, Stick 64GB, USB-HDD, Keyboard K400r, Wlan-Stick 11n

    (Flash) DP-OE2.6 (BAXII) eigenes OE2.6, debian-buster, Diverse

    (Flash) DP-OE2.5 (BAXII) eigenes OE2.5-e2+kodi+X, debian-stretch, Diverse
    ---

    AudioDSP: miniDSP 2x4HD

    TV: LG OLED65BX9LB (PicCap)

    ---

    Hyperion (NG), Hyperion (Classic) mit Plugin HyperionControl auf der Dreambox ONE/TWO

    ESP32 mit WLED Wlan 263 LED's SK6812-NW 60 LED/m

    DM9x0 Plugin EnigmaLight, Hyperion (NG)


    Ambilight for ever