
Mir ist aufgefallen, dass ich mehrere nicht benötigte Gebietsschemas installiert habe, z. B. firefox-locale-
. Ich brauche nur ein Gebietsschema.
Wie entferne ich den ganzen Rest?
Antwort1
Geben Sie zuerst den locale
Befehl ein, um Ihre aktuelle Gebietsschemakonfiguration auszudrucken. Sie können auch verwenden, locale -a
um eine Liste aller verfügbaren Gebietsschemas anzuzeigen.
Unbenutzte Gebietsschemas bereinigen
Installieren Sie es localepurge
, um alle unerwünschten Sprachen zu entfernen, während Sie diejenigen auswählen, die Sie behalten möchten. Beachten Sie, dass diese Methode die Gebietsschemaeinstellungen auf Ihrem System nicht ändert. Es werden nur die Gebietsschemas gelöscht, die Sie nicht ausgewählt haben. Die Verwendung erfolgt auf eigene Gefahr.
sudo apt-get install localepurge
Danach können Sie neu startenoder versuche zu rennen source /etc/default/locale
.
Um dies neu zu konfigurieren, geben Sie einfach Folgendes im Terminal ein:
sudo dpkg-reconfigure localepurge
Ein anderer Weghier beantwortetist zu
sudo locale-gen --purge <locales YOU WANT TO KEEP>
Referenz
Antwort2
Sofern Sie nicht ständig zwischen verschiedenen Gebietsschemas wechseln müssen, können Sie die nicht verwendeten Gebietsschemas deinstallieren und so Speicherplatz auf Ihrem System freigeben.
Installieren Sie Localepurge über das Terminal:
sudo apt-get install localepurge
Sobald die Installation abgeschlossen ist, werden alle nicht mehr benötigten Lokalisierungsdateien von Ihrem System entfernt.
Antwort3
Notiz:Für einige der folgenden Befehle sind Root-Rechte erforderlich. Erwägen Sie die Verwendung von sudo
.
Basisinformation
Entsprechendman locale-gen
, Gebietsschemas werden in mehreren Dateien festgelegt.
/etc/locale.gen
Die Hauptkonfigurationsdatei hat ein einfaches Format: Jede Zeile, die nicht leer ist und nicht mit einem # beginnt, wird als zu erstellende Gebietsschemadefinition behandelt.
/var/lib/locales/supported.d/
Ein Verzeichnis, das von Sprachpaketen bereitgestellte locale.gen-Ausschnitte enthält. Bearbeiten Sie diese nicht manuell, da sie bei Paketaktualisierungen überschrieben werden.
Gebietsschemas werden in einer einzigen Datei kompiliert (generiert).
/usr/lib/locale/locale-archive
Üblicher standardmäßiger lokaler Archivspeicherort.
Ausführliche Informationen zu den Standorten imArch Wiki.
Überprüfen von Gebietsschemas und des Gebietsschemas
Um verfügbare (bekannte) Gebietsschemas aufzulisten, führen Sie einen der folgenden Befehle aus (mit geringfügigen Ausgabeunterschieden).
locale -a
localectl list-locales
Um die (bereits) generierten Gebietsschemas zu überprüfen, führen Sie den folgenden Befehl aus.
localedef --list-archive
Um das aktuell verwendete Gebietsschema zu überprüfen, führen Sie einen der folgenden Befehle aus (mit geringfügigen Ausgabeunterschieden).
locale
localectl
Festlegen und Generieren (neuer) Gebietsschemas
Gebietsschemas werden normalerweise durch das Auskommentieren von Zeilen in festgelegt /etc/locale.gen
. Danach locale-gen
muss es ausgeführt werden.
nano /etc/locale.gen # uncomment desired lines (locales)
locale-gen
/usr/lib/locale/locale-archive
Dadurch werden für jede nicht kommentierte Zeile in /etc/locale.gen
und darunter Gebietsschemata kompiliert (generiert) /var/lib/locales/supported.d/
, unabhängig davon, ob sie zuvor kompiliert wurden oder nicht.
Alternativ kann der Befehl
locale-gen <locale>
locale-gen
wird beim Generieren des gewünschten Gebietsschemas und nur dieses die entsprechende Zeile auskommentieren .
Hinweis: Die Implementierung locale-gen
ist distributionsabhängig. Beispielsweise ist der obige Befehl unter Ubuntu/Debian gültig, aber nicht unter ArchLinux.
Gebietsschemas entfernen
Beim Ausführen von locale-gen
wird das kompilierte Archiv gelöscht und alle Gebietsschemata in /etc/locale.gen
und darunter /usr/lib/locale/locale-archive
werden neu generiert. Der Befehl locale-gen --purge <locale>
tut nicht, was der Modifikator vorschlägt, sondern das Gegenteil: Er entfernt alle kompilierten Gebietsschemata außer den angegebenen. Um sicherzustellen, dass nur bestimmte Gebietsschemata generiert werden, wenn locale-gen
oder ausgeführt wird und update ausgeführt wird, müssen sowohl als auch /etc/locale.gen
berücksichtigt /usr/lib/locale/locale-archive
werden.
Um Gebietsschemata in zu entfernen /etc/locale.gen
, kommentieren Sie einfach die gewünschten Zeilen und generieren Sie die Gebietsschemata mit neu locale-gen
.
Das Entfernen von Gebietsschemas unter /var/lib/locales/supported.d/
ist schwieriger. Da jede Datei /var/lib/locales/supported.d/<code>
vom Paket abhängt language-pack-<code>-base
, werden alle Änderungen an ersterer wiederhergestellt, wenn letzteres aktualisiert wird. Um dies zu lösen, halten Sie einfach die Pakete, die Dateien unter aktualisieren /var/lib/locales/supported.d/
. Der Befehl, der dies in Ubuntu/Debian erreicht, ist der folgende.
apt-mark language-pack-<code>-base
Um ein zurückgehaltenes Paket zu aktualisieren, müssen SieMarkierung aufhebenes oder einfach--ignore-hold
.
Problemumgehung.Eine etwas aufdringlichere, aber allgemeinere Lösung, die Änderungen unterbindet, /var/lib/locales/supported.d/
ist das Setzen von Dateien mit demAttribut „unveränderlich (i)“. Anstatt Dateien zu löschen, leeren Sie sie. Zum Beispiel:
cd /var/lib/locales/supported.d/
rm <code> && touch <code> # <code> has been emptied
lsattr <code> # regular attributes
chattr +i <code> # adding (+) immutable
lsattr <code> # checking attributes
Festlegen des Gebietsschemas
Durch das Festlegen und Generieren von Gebietsschemas wird das Systemgebietsschema nicht festgelegt. Dies wird mit einem der folgenden Befehle erreicht.
echo LANG=<code> | sudo tee /etc/locale.conf # reboot (might be ignored in Ubuntu)
localectl set-locale LANG=<code>
Antwort4
Installieren Sie BleachBit. Es kann unter anderem Gebietsschemas aus jedem Linux-Betriebssystem entfernen.
Wenn Sie BleachBit starten, wird möglicherweise das Dialogfeld „Einstellungen“ angezeigt, in dem Sie die Gebietsschemas auswählen können, die Sie behalten möchten.
Wenn dies nicht automatisch angezeigt wird, können Sie es über das Dreipunktmenü oben rechts im Fenster öffnen.