Das Gebietsschema en_US.UTF-8 kann nicht generiert werden
8
Ich habe versucht, mein Gebietsschema en_US.UTF-8ohne Erfolg festzulegen . Basierend auf anderen Antworten im Internet sollte ich zuerst das Gebietsschema mit generieren
sudo locale-gen en_US.UTF-8
Und dann mit anwenden
sudo dpkg-reconfigure locales
Laufen locale-genmacht jedoch etwas Seltsames:
user@Host /home/user $ sudo locale-gen en_US.UTF-8
Generating locales (this might take a while)...
en_US.ISO-8859-1... done
Generation complete.
Wie Sie sehen, wird UTF-8 nie generiert, sondern es wird immer wieder auf ISO-8859-1 zurückgegriffen. Ich kann nie setzen verwalten LC_ALLzu en_US.UTF-8, wahrscheinlich , weil es nicht erzeugen kann.
Sie haben versucht, unter Debian ein Rezept für Ubuntu anzuwenden. Das funktioniert normalerweise, aber in diesem speziellen Fall nicht.
Ubuntu ist von Debian abgeleitet und ändert sich außer dem Installationsprogramm und der GUI kaum. Der locale-genBefehl ist eines der wenigen anderen Dinge, die er ändert. Ich weiß nicht warum.
Unter Debian akzeptiert der locale-genBefehl keine Argumente und generiert die kompilierten Gebietsschemadefinitionen gemäß der konfigurierten Liste der Gebietsschemas neu. Bearbeiten Sie die Datei /etc/locale.genund führen Sie den locale-genBefehl aus, um die Auswahl der Gebietsschemas zu ändern, die Sie verwenden möchten . Alternativ können Sie dpkg-reconfigure localesals Root ausführen , die gewünschten zusätzlichen Gebietsschemas auswählen (und die nicht gewünschten auswählen) und OK drücken.
Wenn Sie unter Ubuntu den locale-genBefehl ohne Argumente ausführen , werden die kompilierten Gebietsschemadefinitionen gemäß der konfigurierten Liste der Gebietsschemas neu generiert. Wenn Sie jedoch einige Argumente übergeben, werden diese zur Liste hinzugefügt und sofort generiert. Die Liste der Gebietsschemas wird in gespeichert /var/lib/locales/supported.d/local. Durch Ausführen werden dpkg-reconfigure localesnur die kompilierten Gebietsschemas neu generiert, ohne dass Sie die Möglichkeit haben, die Auswahl zu ändern.
Zusammenfassend können Sie en_US.UTF-8der Liste der verwendbaren Gebietsschemas Folgendes hinzufügen :
Debian, interaktiv: dpkg-reconfigure locales
Debian, automatisiert: sed -i 's/^# *\(en_US.UTF-8\)/\1/' /etc/locale.gen && locale-gen
Wie würden Sie also Pakete hinzufügen dpkg-reconfigure? Ich habe die interaktive Oberfläche erhalten, aber bei der Auswahl eines Elements mit der Eingabetaste wurde es nicht installiert.
Erik S
@ErikDolor Ich verstehe deine Frage nicht. Sofern Sie die Debconf-Einstellungen nicht geändert haben, dpkg-reconfigure localeswird ein Dialogfeld für den Textmodus mit einem Kontrollkästchen für jedes Gebietsschema angezeigt, das generiert werden kann. Sie scrollen nach unten en_US.UTF-8, überprüfen es und drücken die OK-Taste.
Gilles 'SO - hör auf böse zu sein'
Ich habe versucht, es mit der Eingabetaste zu überprüfen, aber das funktionierte anscheinend als OK.
Erik S
2
@ErikDolor Oh. Drücken Sie die Leertaste, um ein Kontrollkästchen zu aktivieren.
Gilles 'SO - hör auf böse zu sein'
Funktioniert auch für Raspbian Jessie
Neo_Returns
5
Nachdem ich die Man-Datei für locale-gen gelesen hatte, anstatt blind dem Internet zu vertrauen, stellte ich fest, dass locale-gendie Locales tatsächlich zum Generieren benötigt werden /etc/locale.gen. Durch das Kommentieren en_US.UTF-8dort habe ich es geschafft, es zu generieren.
dpkg-reconfigure
? Ich habe die interaktive Oberfläche erhalten, aber bei der Auswahl eines Elements mit der Eingabetaste wurde es nicht installiert.dpkg-reconfigure locales
wird ein Dialogfeld für den Textmodus mit einem Kontrollkästchen für jedes Gebietsschema angezeigt, das generiert werden kann. Sie scrollen nach untenen_US.UTF-8
, überprüfen es und drücken die OK-Taste.Nachdem ich die Man-Datei für locale-gen gelesen hatte, anstatt blind dem Internet zu vertrauen, stellte ich fest, dass
locale-gen
die Locales tatsächlich zum Generieren benötigt werden/etc/locale.gen
. Durch das Kommentierenen_US.UTF-8
dort habe ich es geschafft, es zu generieren.quelle