# init.d Meldungen werden beim Booten ohne Umlaute dargestellt

## Flasher

Hallo!

Ich habe heute mein System genau nach den Anleitungen vom Wiki (UTF-8 und Deutsche Lokalisierung) umgestellt.

Leider hakt es noch an zwei Stellen:

1. init.d Ausgaben:

Nachdem beim Booten die Kernelmeldungen durchgelaufen sind erfolgt das starten der verschiedenen daemons. Die Ausgaben werden hier (wenn sie Sonderzeichen enthalten) falsch dargestellt

z.B. PrA-fung nach nA€chstem EinhA€ngen

2. Die login prompt schmeißt sobald ich einen Umlaut eingebe alle weiteren Zeichen durcheinander und ich erhalte für "einfache" Symbole andere Zeichen. Sobald ich aber eingeloggt bin (bash) klappt es mit den Sonderzeichen wunderbar.

Bei der Umstellung habe ich meinen Kernel neu kompiliert: Hierzu habe unter "File systems" --> "Native Language Support" --> Default NLS Option: utf8 angegeben und die Optionen "Codepage 850" und NLS UTF-8 markiert.

Den ganzen Rest wie z.B. ISO 8859-1 usw lasse ich nicht mehr mit kompilieren

Einige Konfigurationsdateien:

1. /etc/conf.d/consolefont

```
# /etc/conf.d/consolefont

CONSOLEFONT="lat9w-16"

CONSOLETRANSLATION="8859-15_to_uni"
```

2. /etc/conf.d/keymaps

```
# /etc/conf.d/keymaps

KEYMAP="de-latin1-nodeadkeys"

SET_WINDOWKEYS="yes"

# The maps to load for extended keyboards.  Most users will leave this as is.

EXTENDED_KEYMAPS=""

DUMPKEYS_CHARSET=""

```

3. Die Ausgabe von locale -a

```
C

de_DE.utf8

en_US.utf8

POSIX

```

4. /etc/rc.conf

```
# /etc/rc.conf

UNICODE="yes"

EDITOR="/usr/bin/vim"
```

5. /etc/make.conf

```
# Host Setting

# ============

CHOST="x86_64-pc-linux-gnu"

# Host and optimization settings 

# ==============================

CFLAGS="-march=athlon64 -O2 -pipe"

CXXFLAGS="${CFLAGS}"

LINGUAS="de"

[...]

```

/etc/env.d/02locale

```
# /etc/env.d/02locale

LANG="de_DE.UTF-8"

LC_ALL="de_DE.UTF-8"

GDM_LANG="de_DE.UTF-8"

LC_CTYPE="de_DE.UTF-8"

LC_NUMERIC="de_DE.UTF-8"

LC_TIME="de_DE.UTF-8"

LC_COLLATE="de_DE.UTF-8"

LC_MONETARY="de_DE.UTF-8"

LC_MESSAGES="de_DE.UTF-8"

LC_PAPER="de_DE.UTF-8"

LC_NAME="de_DE.UTF-8"

LC_ADDRESS="de_DE.UTF-8"

LC_TELEPHONE="de_DE.UTF-8"

LC_MEASUREMENT="de_DE.UTF-8"

LC_IDENTIFICATION="de_DE.UTF-8"
```

Mehr Stellen weiß ich nichtmehr wo man etwas wegen dem Zeichensatz eintragen könnte  :Wink: 

Aber irgendwo muss es noch hängen!

Hat da jemand einen Tip für mich?

Grüße,

Flasher

----------

## jkoerner

Moin,

die Bootmeldungen sind nicht für utf-8 geschrieben. Bei den obligatorischen Check-Meldungen für das Dateisystem werden bei mir auch diese kryptischen Zeichen dargestellt. Auf der Console ist dann alles ok.

Beim Login vermute ich, daß du das in gdm/kdm irgendwo einstellen kannst. Ich logge mich anders ein.

Bei mir /etc/conf.d/consolefont

```
CONSOLEFONT="default8x16"

CONSOLETRANSLATION="8859-15_to_uni"
```

8x16 passt zu meinem Bildschirm, andere Größen sind möglich.

/etc/conf.d/keymaps

```
EXTENDED_KEYMAPS="backspace keypad euro" 

DUMPKEYS_CHARSET="iso-8859-15"
```

Alles andere scheint ok zu sein.

Guck mal was in der /etc/locale.gen eingetragen ist

----------

## AROK

Hallo,

das Gleiche hab ich auch. https://forums.gentoo.org/viewtopic-p-4266416.html#4266416

Müssen wir uns wohl mit abfinden!

Gruß

AROK

----------

## Flasher

Hi!

Ich habe auch noch lange herumgesucht und mein System dabei komplett auf en_US.UTF8 umgestellt, hat aber alles nichts gebracht. Naja ich wollte es sowieso auf englisch   :Wink: 

Wie heißt denn eigentlich das package für den consolen login?

sysvinit arbeitet die runlevels ab, welches Tool macht den login? Vielleicht könnte man da mit UTF8 ansetzen!

Grüße,

Flasher

----------

## Max Steel

Also hier läufts, mit diesem How-To

http://de.gentoo-wiki.com/Utf8

----------

## Necoro

zur not alle tools mit -nls compilieren, die nervige meldungen ausgeben ... denn sind die auf englisch und damit ohne umlaute *g*

----------

## ChrisJumper

 *Necoro wrote:*   

> zur not alle tools mit -nls compilieren, die nervige meldungen ausgeben ... denn sind die auf englisch und damit ohne umlaute *g*

 

Du meinst also wenn ich bei sys-fs/e2fsprogs das "nls" Useflag wegnehme. Wird der Englische Text verwendet und alles ist in Butter?

DAAAANKE :D

Der Tipp gefällt mir! Werde es sofort ausprobieren.

Trotzdem ist es die schmutzige Lösung, kann man es nicht irgendwie anders lösen indem man Speziell beim Booten, bezw. dort vor dem Einhängen eine fsck Version verwendet die utf8 nicht unterstützt. Und nach dem Bootvorgang die normale mit utf8?

Warum ist es aber eigentlich so schwer, das ganze Ordentlich zu machen? Eine Variable muss doch erkennen welcher Zeichensatz verwendet wird und eine kleine Stelle im Programm damit doch entscheiden können ob es jetzt die Deutsch-UTF8-Version verwendet oder die DEUTSCH-iso-8859-15?!

----------

## @4u

Das Problem ist ganz einfach erklärt: Erst später im Bootvorgang werden die Skripte "consolefont" und "keymaps" aus dem init.d ausgeführt. Der Dateisystemcheck findet hingegen korrekterweise zuvor statt. Man könnte (root ist ja direkt nach der Kernel bereits ro) also diese init-Skripte manuell vorziehen oder es einfach belassen. So oft sollte man nun auch keine Ausgabe von chkfs haben  :Wink: 

----------

