(gelöst) dropbear root locale, wenn remote eingeloggt

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
guennid

(gelöst) dropbear root locale, wenn remote eingeloggt

Beitrag von guennid » 20.09.2014 09:56:41

Also, wenn ich mich auf manchen meiner Maschinen (wheezy) remote als root einlogge, habe ich nur posix als locale. dpkg-reconfigure locales bingt keine Änderung. Direkt eingeloggt, ist dem nicht so: utf8, deutsch. Greade wieder einige unangenehme Erfahrungen beim Kommentieren eines shell-scriptes. Wie bringe ich die Maschine dazu, dass sie root, auch remote eingeloggt, deutsch reden lässt?

Grüße, Günther
Zuletzt geändert von guennid am 20.09.2014 19:53:25, insgesamt 2-mal geändert.

cosmac
Beiträge: 4576
Registriert: 28.03.2005 22:24:30

Re: root locale, wenn remote eingeloggt

Beitrag von cosmac » 20.09.2014 10:23:45

moin, moin,

mal angenommen, du benutzt ssh. Dann ist der Plan (Debian Default) so, dass die locale des Clients verwendet wird, damit jeder Benutzer überall seine Sprache vorfindet. Ursprünglich hatte ssh diesen Mechanismus nicht (vor Version 2) und der ssh-Default ist es auch nicht (danach gilt die Sprache der remote Maschine).

Zuständig sind
* auf dem ssh-Server "AcceptEnv" in /etc/ssh/sshd_config
* auf dem ssh-Client "SendEnv" in /etc/ssh/ssh_config
* und natürlich die LC* Variablen, die der "ssh remote.machine"-Befehl sieht

Dann könnte es noch davon abhängen, ob du die Verbindung als User aufbaust und dann "su root" machst, oder dich direkt als root anmeldest. Der Default für root ist nämlich Posix.
Beware of programmers who carry screwdrivers.

guennid

Re: root locale, wenn remote eingeloggt

Beitrag von guennid » 20.09.2014 10:50:42

ssh wird benutzt, ja (was anderers kenne ich doch gar nicht :wink: )

Der hier zuständige ssh-server ist der, der auf der Maschine, auf die ich drauf will, läuft, richtig? während der ssh-client dann auf der Maschine läuft, von der aus ich die andere erreichen will, richtig?

So, die nächste Komplikation, auf der zickenden Maschine (ich hab' auch andere) gibt's kein Original-ssh, sondern dropbear (ist hier eigentlich standard, kenne ich aber noch nicht so lange) und es existiert keine sshd_config (was aber wohl nur dann von Belang ist, wenn ich die client-server-Geschichte korrekt interpretiere).

Grüße, Günther

cosmac
Beiträge: 4576
Registriert: 28.03.2005 22:24:30

Re: root locale, wenn remote eingeloggt

Beitrag von cosmac » 20.09.2014 13:23:19

guennid hat geschrieben:Der hier zuständige ssh-server ist der, der auf der Maschine, auf die ich drauf will, läuft, richtig? während der ssh-client dann auf der Maschine läuft, von der aus ich die andere erreichen will, richtig?
richtig & richtig
So, die nächste Komplikation, auf der zickenden Maschine (ich hab' auch andere) gibt's kein Original-ssh, sondern dropbear
In dem Fall würde ich die Einstellung in /root/.profile auf dem Server festnageln:

Code: Alles auswählen

LANG=de_DE.utf8
LANGUAGE=de_DE.utf8
Die locale muss natürlich installiert sein und "locale -a" muss sie anzeigen.
Beware of programmers who carry screwdrivers.

guennid

Re: root locale, wenn remote eingeloggt

Beitrag von guennid » 20.09.2014 13:45:12

So, ohne mich vergewisssert zu haben, dass ich die server/client-Geschchte richtig sehe, habe ich jetzt eine wilde purging/reinstalling-session mit openssh-server, -client, dropbear hinter mir, mit dem Ergebenis, dass nur eine Installation des Orignals (openssh-server [und -client, sollte hier irrelevant sein]) auf der Maschine, auf die ich drauf will, das Problem funktionierend gelöst hat. dropbear habe ich nicht hingekriegt und das ärgert mich.

Grüße, Günther

guennid

Re: root locale, wenn remote eingeloggt

Beitrag von guennid » 20.09.2014 13:51:36

Danke cosmac!

Unsere beiden letzten Beiträge liefen wohl ungefähr gleichzeitig. Ich will's vielleicht nochmal versuchen. Dazu aber noch zwei Fragen: dropbear benutzt ebenfalls /etc/ssh - richtig? Dann müsste ich das Verzeichnis vor dem Purgen von openssh sichern - richtig? Das hat aber leider nichts gebracht.

Grüße, Günther

cosmac
Beiträge: 4576
Registriert: 28.03.2005 22:24:30

Re: root locale, wenn remote eingeloggt

Beitrag von cosmac » 20.09.2014 14:54:29

guennid hat geschrieben:dropbear benutzt ebenfalls /etc/ssh - richtig?
nö, jeder bekommt sein eigenes Verzeichnis: /etc/dropbear/. Aber das würde auch nichts nützen, weil dropbear nicht alles unterstützt, was vom ssh-Protokoll her möglich ist. Zum Ausgleich ist er klein und handlich und braucht keine conf-Datei.
Beware of programmers who carry screwdrivers.

guennid

Re: root locale, wenn remote eingeloggt

Beitrag von guennid » 20.09.2014 18:30:03

So, ich habe mir jetzt was aus diesem Uralt-Tread [1] zusammengebastelt.

Ich habe in /etc/profile diese Zeile eingefügt:

Code: Alles auswählen

LANG=de_DE.UTF-8; export LANG
Danach spricht root eingeloggt via

Code: Alles auswählen

ssh root@[rechnername]
deutsch. und auch alle LC_s sind deutsch. Für besonders schön halte ich das nicht. Gibt's bessere Lösungen? cosmacs Hinweis auf /root/profile hat nicht funktioniert.

Warum wird /etc/default/locale nicht ausgewertet?

Grüße, Günther

[1] https://bugs.launchpad.net/ubuntu/+sour ... bug/232064

cosmac
Beiträge: 4576
Registriert: 28.03.2005 22:24:30

Re: (gelöst) root locale, wenn remote eingeloggt

Beitrag von cosmac » 20.09.2014 18:41:16

guennid hat geschrieben:Warum wird /etc/default/locale nicht ausgewertet?
bei mir steht in der /root/.profile etwas, das speziell für root den Wert aus /etc/default/locale überschreibt:

Code: Alles auswählen

# Installed by Debian Installer:
#  no localization for root because C
#  cannot be properly displayed at the Linux console
LANG=C
LANGUAGE=C
cosmacs Hinweis auf /root/profile hat nicht funktioniert.
fehlt da evt. ein Punkt vor dem "profile"?
Beware of programmers who carry screwdrivers.

guennid

Re: (gelöst) root locale, wenn remote eingeloggt

Beitrag von guennid » 20.09.2014 18:53:07

fehlt da evt. ein Punkt vor dem "profile"?
Vertippt! es gibt nur root/.profile.
Grüße, Günther

[edit:]

Code: Alles auswählen

LANG=de_DE-UTF-8
reicht und muss so geschrieben werden
Noch 'ne Zeile ist erforderlich:

Code: Alles auswählen

export LANG

Antworten