[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Problems with sftp :-(



On 08.05.06 21:49:57, Jan Leewe Behrendt wrote:
> Am Montag, 8. Mai 2006 21:17 schrieb Andreas Pakulat:
> > On 08.05.06 20:52:41, Jan Leewe Behrendt wrote:
> > > Allerdings ist ja denke ich der Kubuntu-Kernel schon mit
> > > utf-Unterstützung kompiliert und dort tritt das gleiche Phänomen auf.
> >
> > grep NLS /boot/config-<kernelversion> sagt dir genaueres,
> > CONFIG_NLS_DEFAULT gibt die default Kodierung an.
> 
> grep NLS /boot/config-`uname -r` sagt mir, dass alles, was ich benötige, als 
> Modul mit drin ist...

Die Frage ist auf was steht DEFAULT?
 
> >
> > > Kann es wirklich sein, dass der sftp-Server da dermaßen hinterherhinkt
> > > und UTF nicht kann?
> >
> > Koennen kann er das wohl, eventuell weiss er nur nicht das die Umgebung
> > UTF benutzt. Bei mir ist z.B. LANG=C fuer alle die das nicht in
> > $HOME/.bash_profile oder aehnlichem aendern. Moeglich das es daran
> > leigt.
> 
> jbehrendt@server:~$ locale

Ist das als root? Und selbst wenn das als root hinhaut ist das nicht
unbedingt ne Garantie dafuer das das auch gilt wenn die Datei benannt
wird. 

Ohne genaueres Wissen ueber sshd und sftp-server Interna wirst du da
nicht weiterkommen. Denn man kann ja nicht einfach mal so den Verkehr
mitschneiden und schauen ob der Client die falsche Kodierung vorgibt
oder der Server-Part dann die falsche "Zielkodierung" raussucht. Wie
gesagt es ist moeglich das CONFIG_NLS_DEFAULT da hilft und das ganze
dann klappt (besonders wenn das momentan auf iso8859-1 steht).

> Das war meine erste Vermutung... Aber das ist in /etc/environment festgelegt

Das bedeutet aber nicht das alle Prozesse diese Variable gesetzt haben,
insbesondere werden Umgebungsvariablen evtl. wieder "entfernt" aus
Sicherheitsgruenden.

> > > Kann ich irgendwie herausfinden, mit welcher kodierung eine Datei
> > > abgespeichert wurde?
> >
> > Der Inhalt der Datei sollte unberuehrt sein, die Kodierung des
> > Dateinamens kriegt man raus indem man in einer "korrekten" Umgebung ls |
> > file - ausfuehrt. In meiner UTF-8 Umgebung sagt mir das halt das das
> > Ergebnis latin1 kodiert ist.
> 
> Stimmt, bei mir auch... Nur, warum geht es dann nicht, obwohl ich die locale 
> auf de_DE zurückstelle?

Was geht dann nicht? Wenn du auf de_DE umstellst sollten die Dateinamen
in latin1 erzeugt werden und das Terminal auf dem Server mit LANG=de_DE
sollte bei einem ls die richtigen Dateinamen anzeigen.

Andreas

-- 
Someone whom you reject today, will reject you tomorrow.



Reply to: