Grub2 deutsche Tastatur

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
aki
Beiträge: 83
Registriert: 02.02.2018 11:48:58

Grub2 deutsche Tastatur

Beitrag von aki » 04.06.2018 11:17:15

Hallo zusammen,

ich habe leider keine passenden Kategorie für meine Anfrage finden können weshalb ein Mod es ggf. verschieben sollte. Nun zu meiner Problematik. Ich habe auf einem Notebook Grub2 unter anderem mit einem starkem PW gesichert. Nun fällt mir jedoch auf das bei der Abfrage die US Belegung aktiv ist. Dies ist sehr sehr nervig. Nach erfolgreichem entsichern von Grub2 ist dann der Rest auf deutsch. Wo kann ich denn auch in Grub2 selbst das Layout auf deutsch umstellen oder ist dies nicht vorgesehen?

Beste Grüße

Benutzeravatar
smutbert
Beiträge: 8342
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Grub2 deutsche Tastatur

Beitrag von smutbert » 04.06.2018 11:49:34

Tatsächlich würde mich das auch interessieren.

Soweit ich das verstanden habe, ist bei grub ein Tool dabei, mit dem man das gewünschte Tastaturlayout für gruib erstellen kann (»grub-kbdcomp« und »grub-mklayout« aus Debiangrub-common), aber ich habe es nie geschafft das damit erzeugte Tastaturlayout richtig zu laden und verwenden. Ich glaube das lag am grub-Treiber für die Eingabe, bin mir aber nicht mehr sicher – es ist schon eine Zeit her, dass ich das versucht habe und ich habe es dann aufgegeben.

Ich habe mich damals an einem Artikel im arch-Wiki orientiert, den ich nicht mehr finde, aber hier wird in der Antwort im Grunde dasselbe beschrieben: https://askubuntu.com/questions/751259/ ... ard-layout

edit:
Es war nicht direkt ein Wiki-Artikel sondern diese Diskussion über den Wiki-Artikel, an der ich mich bei meinen Versuchen orientiert habe: https://wiki.archlinux.org/index.php/Ta ... ard_layout
Zuletzt geändert von smutbert am 04.06.2018 11:55:47, insgesamt 1-mal geändert.

breakthewall
Beiträge: 507
Registriert: 30.12.2016 23:48:51

Re: Grub2 deutsche Tastatur

Beitrag von breakthewall » 04.06.2018 11:52:40

Zum Zeitpunkt der Passworteingabe, befindet sich GRUB noch in Stage 1 der Ausführung. Und in dieser frühen Phase gibt es nur ein US-Keyboard-Layout. Hier wirst wohl oder übel auf ein universelles Passwort setzen müssen, zumal starke Passwörter ohnehin nicht extrem komplex sein, noch Sonderzeichen enthalten müssen. Und sollte dein System nicht vollständig verschlüsselt sein, dann lässt sich ein GRUB-Passwort auch sehr einfach umgehen.

Benutzeravatar
MSfree
Beiträge: 11605
Registriert: 25.09.2007 19:59:30

Re: Grub2 deutsche Tastatur

Beitrag von MSfree » 04.06.2018 12:17:08

In meiner /boot/grub/grub.cfg steht set lang=de_DE. Ich habe allerdings noch nicht getestet, ob das auch Auswirkungen auf die Tastatur hat, noch weiß ich, wie und ob das über update-grub da reinkommt.

Benutzeravatar
smutbert
Beiträge: 8342
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Grub2 deutsche Tastatur

Beitrag von smutbert » 04.06.2018 12:47:41

Nein, hat es nicht

Die passenden Tastaturlayouts müssen für grub sowohl erst einmal erstellt werden, weil sie nicht mitgeliefert werden, wie auch geladen werden, was genauso wenig automatisch passiert und schließlich gibt es auch noch mehrere grub-Module, die für die Eingabe zuständig sein können und ich glaube nur eines davon „at_keyboard“ (das obendrein nicht immer funktioniert) unterstützt das Laden der Tastaturlayouts.
(Das ist jetzt so ungefähr, das an was ich mich von meinen Versuchen erinnere. Bei einigen Details könnte ich auch falsch liegen und die Situation könnte sich seitdem natürlich verbessert haben.)

aki
Beiträge: 83
Registriert: 02.02.2018 11:48:58

Re: Grub2 deutsche Tastatur

Beitrag von aki » 04.06.2018 13:56:58

Hallo zusammen,

nach einiger Suche war das brauchbarste was ich dazu finden konnte dies hier:

Das geht leider nur unsicher und unvollständig (s.u.). Ich habe mir dafür das folgende Skript /etc/grub.d/01_keyboard_layout erstellt:
vergrößern

Code: Alles auswählen

root@lieselotte:~# cat /etc/grub.d/01_keyboard_layout 
#!/bin/sh -e

mkdir -p /boot/grub/layouts
GRUB_LANG=$( echo $LANG | cut -d_ -f1 )
if test -f /boot/grub/layouts/$GRUB_LANG.gkb
 then echo "Using keyboard map for $GRUB_LANG." >&2
 else echo "Generating keyboard map for $GRUB_LANG." >&2
      ckbcomp $GRUB_LANG | grub-mklayout -o /boot/grub/layouts/$GRUB_LANG.gkb
fi
cat <<-EOF

	terminal_input --append at_keyboard
	terminal_input --append usb_keyboard
	insmod keylayouts
	keymap $GRUB_LANG

	EOF
Man muss das Skript noch ausführbar machen und dann mit update-grub die Konfigurationsdatei von GRUB aktualiseren:

Code: Alles auswählen

root@lieselotte:~# chmod +x /etc/grub.d/01_keyboard_layout 
root@lieselotte:~# update-grub
Unsicher: Das funktioniert nur dann, wenn auch eine Tastatur angeschlossen ist, die sich mit AT bzw. USB ansprechen lässt. Eine Labtop- bzw. Notebook-Tastatur funktioniert ggf. gar nicht und lässt einen vor einem unbedienbaren GRUB2 sitzen! Die Tastatur des Lenovo X220 funktioniert jedenfalls nicht.

Unvollständig: Wenn es funktioniert, hat man etliche wichtige Sonderzeichen wie [=/] usw. und yz auf den „richtigen“ Tasten, während die deutschen Umlaute äöü usw. gar nichts ausgeben. Getestet habe ich es nur mit deutschen Tastaturen. Das Skript sollte aber die jeweilige System-Tastaturbelegung zur GRUB-Tastaturbelegung machen.

Ich werde mich bis auf weiteres wohl oder übel damit abfinden müssen. Man kann Grub2 nicht zufällig neu kompilieren mit deutscher Tastaturbelegung?

@breakthewall

Ja das ist mir durchaus bewusst weshalb ich schon im ursprünglichen Post schrieb unter anderem :-)

Beste Grüße

cw2k
Beiträge: 1
Registriert: 16.03.2022 13:33:37

Re: Grub2 deutsche Tastatur

Beitrag von cw2k » 16.03.2022 13:57:42

Kleine Ergänzung:
terminal_input --remove console

Wenn 'console' und ' at_keyboard' gleichzeitig geladen sind hat das sonst den Effekt, dass die GRosS Und KLEInschrEiBUng sonst, so wie gerade angedeutet, sporadisch umspringt. Super nervigen beim Befehle eintippen. Naja und Passwort blind eingeben - tja...

So der Rest ist 'syntax sugar':

Code: Alles auswählen

#!/bin/sh -e
# /etc/grub.d/01_keyboard_layout.sh
# ^-Put this file here.
# and make it executable:
# chmod +x /etc/grub.d/01_keyboard_layout.sh
#
# update-grub
# ..and finally you've a localised keyboard layout in Grub2
# (... inside the 'normal.mod' Grub; However the rescue shell *suprise* is not effected)
#
# Hmm I wonder why files like this aren't included by default in grub2?

grub_DirLayouts=/boot/grub/layouts

mkdir -p $grub_DirLayouts

# Cut off first part of $LANG, that is for example "de_DE.utf8"
GRUB_LANG=$( echo $LANG | cut -d_ -f1 )

# Generate '/boot/grub/layouts/de.gkb
grub_localLayoutFile=$grub_DirLayouts/$GRUB_LANG.gkb
if test -f 	$grub_localLayoutFile
 then echo      "Using keyboard map $grub_localLayoutFile."		>&2
 else echo "Generating keyboard map $grub_localLayoutFile."		>&2
      ckbcomp $GRUB_LANG	|	grub-mklayout -o $grub_localLayoutFile
fi
cat <<-EOF

	insmod keylayouts
	keymap $GRUB_LANG
	
	# Note: keymap does not affect 'console' so insert keyboards
	terminal_input --append at_keyboard
	terminal_input --append usb_keyboard
	
	terminal_input --remove console
	
	EOF
# Based on 'Re: Grub2 deutsche Tastatur' https://debianforum.de/forum/viewtopic.php?p=1176078#p1176078
Btw hab das code snipped mal hier geuppt:
https://gist.github.com/cw2k/5b4d7a1dc3 ... _layout-sh
... und auch hier:
https://yopad.eu/p/toolbox-365days
verlinkt.

johnyDebian
Beiträge: 1
Registriert: 05.12.2024 14:40:16

Re: Grub2 deutsche Tastatur

Beitrag von johnyDebian » 05.12.2024 15:02:20

System: Mint Cin21.3 64-Bit BIOS , USB:Maus MX1000+Tastatur
Nach der DE-Umstellung in Grub2.06 mit

SET insmod keylayouts
SET insmod at_keyboard

menuentry ' Set de_keyboard ' {
keymap /boot/grub/bepo.gkb
terminal_input --append at_keyboard
terminal_input --remove console
terminal_input at_keyboard
}
arbeitet meine USB-Tastatur genau 16 Tasten-Drücke bevor es einfriert.

Mit der Notebook-Tastatur kann ich noch wechseln

menuentry ' UNset de_keyboard ' {
keymap /boot/grub/bepo.gkb
terminal_input --append console
terminal_input --remove at_keyboard
terminal_input console
}
und alles geht mit en-US weiter.....

Hat jemand eine Lösung ?
In welcher Datei finde ich die Consolen-Codes für die Tastatur - "i386-pc" -Ordner ?
Die würde ich dann mit einem Hex-Editor umschreiben.

(Verbringe im Moment viel Zeit in Grub2 )

Antworten