Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
file /var/log/messages: data ;falscher Dateityp, Anzeige=Hex
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German)
View previous topic :: View next topic  
Author Message
Randy Andy
Veteran
Veteran


Joined: 19 Jun 2007
Posts: 1046
Location: /dev/koelsch

PostPosted: Sat Jul 14, 2012 6:21 pm    Post subject: file /var/log/messages: data ;falscher Dateityp, Anzeige=Hex Reply with quote

Hallo Leute.

Seit einiger Zeit zeigt mir less die Datei /var/log/messages immer in der Hex-Darstellung an.
Wieso, hat er doch früher nie gemacht?
Kann man die Anzeige im less irgendwie umstellen, ha ich versehentlich irgendeine Tastenkombination erwischt - unwahrscheinlich, die Hilfe sagt mir eher nein.

more zeigt's mir richtig an, aber less ist ja bekanntlich more, daher möchte ich lieber wieder less nutzen - verwirrend das, ich weiß, aber ich denke ihr wisst schon was ich meine.

Code:
file /var/log/messages zeigt:
/var/log/messages: data


Insofern würde ich eigentlich sagen dass less alles richtig macht und more es falsch zeigt, trotzdem wäre mir die Textdarstellung lieber.
Lösche ich messages, so wird es wieder neu mit gleichem datentyp angelegt.
Kann ich den irgendwie ändern, Stichwort magic? Hab zwar dessen Erwähnung in meinem Linux-Kompendium gefunden, aber nichts wie man das beeinflussen kann.
Oder legt das Logging den Datentyp falsch an, und das ist alles?

Ausser vielleicht irgendwelcher Einträge in (/etc/magic gibt's bei mir nicht) in /usr/share/mime/magic?
Aber das kann's doch nicht sein und warum ging's denn vorher.

Downgrade auf verschiedene less Versionen brachte auch nix.
Wieso interpretiert more das anders als less? Fragen über Fragen - bin verwirrt und ahnungslos, mir Fehlen anscheinend wichtige Basics.

Bitte um Erleuchtung - Ommhh.... und mein Dank wird Euch auf Ewig nachlaufen :lol:
Andy.
_________________
If you want to see a Distro done right, compile it yourself!
Back to top
View user's profile Send private message
disi
Veteran
Veteran


Joined: 28 Nov 2003
Posts: 1354
Location: Out There ...

PostPosted: Sat Jul 14, 2012 7:13 pm    Post subject: Reply with quote

Guck mal hier:
http://forums.gentoo.org/viewtopic-t-929738.html

Ich habe einfach ein
Code:
export LESSOPEN="%s"

In meine .zshrc gepackt
_________________
Gentoo on Uptime Project - Larry is a cow
Back to top
View user's profile Send private message
Randy Andy
Veteran
Veteran


Joined: 19 Jun 2007
Posts: 1046
Location: /dev/koelsch

PostPosted: Mon Jul 16, 2012 7:11 am    Post subject: Reply with quote

Danke disi,

für den interessanten Hinweis, mal sehen was ich damit mache.

Ist ja eigentlich nur ein Workaround, aber nicht die Lösung der Ursache.

Daher würde ich den Thread gerne offen lassen, vielleicht hilft's ja.

Übrigens, ich verwende auch syslog-ng.
Liegt's an ihm, da er die Logs so schreibt dass sie von file als data erkannt werden.

Mit Dateien die als text ausgewiesen werden macht less ja alles richtig, wie z. B. /var/log/emerge.log

Gruß, Andy.
_________________
If you want to see a Distro done right, compile it yourself!
Back to top
View user's profile Send private message
toralf
Advocate
Advocate


Joined: 01 Feb 2004
Posts: 2672
Location: Hamburg/Germany

PostPosted: Mon Jul 16, 2012 9:54 am    Post subject: Reply with quote

Randy Andy wrote:

Liegt's an ihm, da er die Logs so schreibt dass sie von file als data erkannt werden
Nö, ich tippe mal darauf, daß irgendeine Kernel-Message non-printable characters ausgespuckt hat und nun die Logik von "file" fehlschlägt.
Wenn Du logrotate oder dgl. benutzt, sollte eine neue syslog-Datei dann wieder auch als Nur-Text erkannt werden.
Back to top
View user's profile Send private message
Randy Andy
Veteran
Veteran


Joined: 19 Jun 2007
Posts: 1046
Location: /dev/koelsch

PostPosted: Tue Jul 17, 2012 8:33 am    Post subject: Reply with quote

Toralf,

in meinem ersten post habe ich doch geschrieben, dass ich das bereits versucht hatte:
Quote:
Lösche ich messages, so wird es wieder neu mit gleichem datentyp angelegt.


Gestern kam übrigens eine neue Version von less in den tree, das änderte ab auch nichts an dem Verhalten - was zu erwarten war.

Trotzdem habe ich noch einmal die messages Datei gelöscht und siehe da, für kurze Zeit erkannte sie file als ASCII Dateityp und solange wird sie dann auch von less korrekt angezeigt.

Ich habe die Vermutung dass erst nach einem reboot, wenn die Kernel-Meldungen geloggt werden, besagte "non-printable characters" auftauchen und somit der datentyp wieder auf data wechselt.
Hab auch schon eine Idee woran das liegen könnte, brauch nur noch etwas Zeit um dem nachzugehen, aber falls das einer von Euch vorab testen möchte, hier meine Idee:

Entweder liegt es an den nls (native language support) settings des kernels, oder aber die locale settings spielen hier mit hinein.

@disi
Du hast ja das gleiche Problem (gehabt/gefixed durch workaround mit lesspipe).

Vielleicht wollen wir mal unsere Settings vergleichen bzw. hier posten.
Ich vermute nun, dass nur nicht native en user, mit abweichenden locale settings davon betroffen sind, also die mit Mischsystemen zwischen UTF8 (16byte/Zeichen) und anderen Zeichensätzen (8Byte/Zeichen), so wie z.B. im Localization Wiki beschrieben.
Vielleicht werden dadurch quasi "non-printable characters" erzeugt, die dann beim Logging weggeschrieben werden.

Wir werden sehen ob an meiner These was dran ist...

Informellen Gruß, Andy.
_________________
If you want to see a Distro done right, compile it yourself!
Back to top
View user's profile Send private message
disi
Veteran
Veteran


Joined: 28 Nov 2003
Posts: 1354
Location: Out There ...

PostPosted: Tue Jul 17, 2012 8:53 am    Post subject: Reply with quote

Also als LANG habe ich 'en_GB.UTF-8' (nicht die default 'en_US.UTF-8')

Eingestellt in /etc/locale.gen und ein locale-gen laufen lassen.
Dann 'eselect locale' und 'en_GB.UTF-8' gewaehlt, was es in /etc/env.d/02locale schreibt.

Da ist aber noch eine 'LC_ALL' gesetzt, meine ich, die auf 'C' verbleibt, sprich das Programm waehlt selbst welche locale es benutzen moechte.

Muesste nomma gucken Zuhause...
_________________
Gentoo on Uptime Project - Larry is a cow
Back to top
View user's profile Send private message
bell
Guru
Guru


Joined: 27 Nov 2007
Posts: 418

PostPosted: Tue Jul 17, 2012 9:20 am    Post subject: Reply with quote

Versucht es mal mit
Code:
cat /var/log/messages | less
Damit wird das Log als Text dargestellt und die nicht druckbaren Sonderzeichen als "^X" weiss hervorgehoben.
Was ist der Fehler?
Back to top
View user's profile Send private message
platinumviper
l33t
l33t


Joined: 12 Feb 2004
Posts: 616
Location: Munich, Germany

PostPosted: Tue Jul 17, 2012 9:59 am    Post subject: Reply with quote

Sieht die Datei denn irgendwie seltsam aus, wenn du sie mit vim o.ä. öffnest?
_________________
No money back garantee. In case of problems, don't call us, we call you.
Back to top
View user's profile Send private message
Randy Andy
Veteran
Veteran


Joined: 19 Jun 2007
Posts: 1046
Location: /dev/koelsch

PostPosted: Tue Jul 17, 2012 11:09 am    Post subject: Reply with quote

Hi Leute,

Interessanter Weise zeigt nicht jeder Editor diese Zeichen an.

Less und more zeigen sie mir nicht, der Viewer (F3) des Midnight Commanders zeigt sie als ...Punktchen, aber im Editor Modus (F4) werden sie als @ angezeigt.
Vim zeigt mir das korrekt an, so sehen die relevanten Zeichen/Zeilen vollständig aus:
Quote:

Jul 17 16:45:19 big-server syslog-ng[2109]: syslog-ng starting up; version='3.3.5'
Jul 17 16:45:19 ^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@ kernel: [ 0.000000] Initializing cgroup subsys cpu
Jul 17 16:45:19 big-server kernel: [ 0.000000] Linux version 3.4.4-gentoo (root@big-server) (gcc version 4.6.3 (Gentoo 4.6.3 p1.3, pie-0.5.1) ) #1 SMP PREEMPT Sun Jun 24 17:51:42 CEST 2012


Löscht man alle ^@ Zeichen aus der messages, so ändert sich der Datentyp von data auf ASCII und less zeigt's wieder richtig an.


Die Ursache hat aber doch nix mit den nls oder der localen zu tun.
Es liegt wohl doch an der syslog-ng -version. Genauer gesagt am threading patch.

Ist das threading aktiv in der syslog-ng.conf, dann schreibt der logger diese komischen Zeichen in die messages.
Das passiert übrigens nur nach dem booten.
Verwendet man die alte syslog-ng.conf ohne threading, dann wird wieder ohne seltsame Zeichen geloggt.

Vermutlich würde auch ein downgrade auf ältere Versionen helfen, aber so geht's auch erst mal, bis eine richtige Abhilfe da ist.

Hab schon mal eine Bug-Report geschrieben und siehe da, einer kannte die Zeichen auch schon...
https://bugs.gentoo.org/show_bug.cgi?id=406623

Gruß, Andy.

[edit, nachdem zu Hause am vernünftigen OS, konnte ich die relevanten Zeichen hinzufügen.
Interessant wie sich die Darstellung dieses posts dadurch verändert, naja, solange ihr dabei nicht less verwendet :wink: ]
_________________
If you want to see a Distro done right, compile it yourself!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum