linux
Zugriffe von Windows Vista auf ein Passwortgeschützes Samba Share
Problembeschreibung:
Ein passwortgeschütztes Netzlaufwerk, welches von einem Linux Server zur Verfügung gestellt wird, soll auf einen Vista Rechner eingebunden werden. Das funktioniert (warum auch immer) genau nur ein einziges mal, nach dem Reboot des Vista Rechners, kommt ständig die Meldung dass die Zugangsdaten falsch sind. Und das obwohl von einem anderen Linux aus der Zugriff ja funktioniert und sich sonst keine Konfiguration geändert hat!
Glücklicherweis bin ich nicht der erste, der auf dieses Verhalten gestoßen ist und ich hab hier mittlerweiles zwei Lösungen dafür entdeckt:
Sie können folgenden Eintrag in der Registry ändern: "HKEY_LOCAL_MACHINESystemCurrentControlSetControlLsa" den Wert des Eintrags "LmCompatibilityLevel" von "3" auf "1" setzen. Starten Sie dann Ihren Rechner neu.
Hinweis: Die Werte für diesen Registrierungsschlüssel lauten wie folgt:
1: LM und NTLM verwenden, jedoch nie NTLM2.
2: LM- oder NTLM-Authentifizierung verwenden. NTLM2-Situngssicherheit verwenden, wenn möglich.
3: Nur NTLM verwenden. NTLM2 verwenden, wenn vom Server unterstützt.
4: LM-Authentifizierung ablehnen (Windows NT 4-Domänencontroller). Clients verwenden nur NTLM2.
5: LM-und NTLM-Authentifizierung ablehnen (Windows NT 4-Domänencontroller). Clients verwenden nur NTLM2.
Damit zum Beispiel nur NTLMv2 verwendet wird, müssen Sie den Wert für diesen Registrierungsschlüssel auf "5" festlegen.
Daraufhin muss nicht unbedingt der PC neu gestartet werden. Es reicht die explorer.exe Prozesse zu über den Taskmanager zu beenden und neu zu starten.
Quelle: http://www.netzwerktotal.de/vistaundsamba.htm
Alternativ: http://nobluescreens.com/solutions/samba_vista.php
Useless Use of Cat Award
Mitlerweile bin ich ja über mehrere Hinweise gestoßen, dass es manche Menschen einfach nicht vertragen eine *sinnlose* cat Anweisung in einem Shellscript zu sehen. Der ganze Hintergrund der Geschichte wird ja z.B. hier http://partmaps.org/era/unix/award.html zusammengefasst.
Ich denke aber, dass auch ein Konstrukt wie "cat /var/log/messages | grep <Asudruck>" durchaus seine Berechtigung hat. Will ich etwa das Logfile von gestern sehen wird daraus deutlich einfacher ein "zcat /var/log/messages | grep <Asudruck>" oder "bzcat /var/log/messages | grep <Asudruck>" auf der nächsten Maschine daraus. Und das kann wohl der grep alleine noch nicht…
64bit oder nicht, das ist hier dir Frage!
Wie erkennt man, ob in einer Linux Box bereits eine 64bit CPU schlummert? Diese Frage stellt sich natürlich nur bei älterer Hardware, die vielleicht auch noch hunderte Kilometer weit weg plaziert ist.
Die folgende Zeile sieht schon sehr vielversprechend aus. Damit kann ich sicher sein, dass ein 64bit Kernel läuft und damit muss die CPU das wohl auch unterstützen.
> uname -i x86_64
Was aber wenn hier nur i386, i586 oder i686 angezeigt wird?
> cat /proc/cpuinfo
oder für SuSE Linux Systeme
> hwinfo --cpu
Bringt hier die Lösung. Und zwar die Zeile in der die Fags angegeben werden. Das Long Mode Flag oder als "lm" abgekürzt zeigt auch bei installiertem 32bit System ob die Hardware bereits für 64bit gerüstet ist.
Ist Hyperthreading auf meiner Linux Box aktiviert?
Mit dem folgenden Befehl kann man ja jede Menge an Infos über die CPU auslesen:
# cat /proc/cpuinfo
Man sieht sehr schön, hier einen Zweikern Prozessor. Nur hat dieser auch wirklich Hyperthreading aktiviert? Das ht Flag verrät ja nur, ob Hyperthreading unterstützt wird.
processor : 0 vendor_id : AuthenticAMD cpu family : 15 model : 67 model name : AMD Athlon(tm) 64 X2 Dual Core Processor 5000+ stepping : 3 cpu MHz : 1800.000 cache size : 512 KB physical id : 0 siblings : 2 core id : 0 cpu cores : 2 fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy bogomips : 3584.67 TLB size : 1024 4K pages clflush size : 64 cache_alignment : 64 address sizes : 40 bits physical, 48 bits virtual power management: ts fid vid ttp tm stc processor : 1 vendor_id : AuthenticAMD cpu family : 15 model : 67 model name : AMD Athlon(tm) 64 X2 Dual Core Processor 5000+ stepping : 3 cpu MHz : 1800.000 cache size : 512 KB physical id : 0 siblings : 2 core id : 1 cpu cores : 2 fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy bogomips : 3584.67 TLB size : 1024 4K pages clflush size : 64 cache_alignment : 64 address sizes : 40 bits physical, 48 bits virtual power management: ts fid vid ttp tm stc
Die Lösung dieses Problemes fällt zumindest unter Novell/SuSE recht leicht:
# hwinfo --cpu 01: None 00.0: 10103 CPU [Created at cpu.301] Unique ID: rdCR.j8NaKXDZtZ6 Hardware Class: cpu Arch: X86-64 Vendor: "AuthenticAMD" Model: 15.67.3 "AMD Athlon(tm) 64 X2 Dual Core Processor 5000+" Features: fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,mmx,fxsr,sse,sse2,ht,syscall,nx,mmxext,fxsr_opt,rdtscp,lm,3dnowext,3dnow,pni,cx16,lahf_lm,cmp_legacy,svm,extapic,cr8_legacy Clock: 1000 MHz BogoMips: 1991.48 Cache: 512 kb Units/Processor: 2 Config Status: cfg=new, avail=yes, need=no, active=unknown 02: None 01.0: 10103 CPU [Created at cpu.301] Unique ID: wkFv.j8NaKXDZtZ6 Hardware Class: cpu Arch: X86-64 Vendor: "AuthenticAMD" Model: 15.67.3 "AMD Athlon(tm) 64 X2 Dual Core Processor 5000+" Features: fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,mmx,fxsr,sse,sse2,ht,syscall,nx,mmxext,fxsr_opt,rdtscp,lm,3dnowext,3dnow,pni,cx16,lahf_lm,cmp_legacy,svm,extapic,cr8_legacy Clock: 1000 MHz BogoMips: 1991.48 Cache: 512 kb Units/Processor: 2 Config Status: cfg=new, avail=yes, need=no, active=unknown
An der Zeile Units/Processor: 2 erkennt man schön, dass jeder der beiden Kerne tatsächlich noch HT aktiviert hat!
Sollte jemand andere Möglichkeiten kennen, das zuverlässig heraus zu finden, bitte immer nur heraus damit!
Das Wort des Tages – Part 3
Das Wort des Tages sollte grundsätzlich öfter kommen, aber ich komm halt nicht dazu:
Die Invertierung von Alles ist Nichts!
Hier der Beweis für diese Aussage:
Liefert den kompletten Inhalt der Datei:
grep "" <dateiname>
Liefert nix mehr, da die Suche invertiert wird:
grep -v "" <dateiname>
Discover the Difference: Basic Optical Mouse v2.0 unter openSuSE Linux 10.3
Feb 13 21:16:44 hostname kernel: hub 3-0:1.0: Cannot enable port 1. Maybe the USB cable is bad?
Ich bin ja schon echt gespannt ob überhaupt noch eine Chance besteht rauszufinden was mir diese lustige Meldung bei einer neuen Microsoft Maus wohl sagen will!
Update: Scheinbar so ein schöner fehler, der nur in einem von 1000 Fällen, dafür aber absolut reproduzierbar auftritt. Nachdem ich meinen etwa zwei Jahre alten PCI-USB Controller eingebaut hab geht auch diese Maus.
Es kann wohl kein Kernelfehler sein (unter Vista am gleichen Rechner geht die Maus auch nicht)
Verkabelung der Frontanschlüsse (die hinteren Anschlüsse gehen auch nicht)
Hardwaredefekt am Mainboard (am gleichen Anschluss gehen andere Mäuse, USB Sticks und Wechselfestplatten)
Und ich konnte das Problem mit dieser Maus mittlerweile ich noch auf einem komplett anderen Rechner mit Windows XP Reproduzieren. Die Maus muss wohl einen knacks haben. Aber damit werde ich jetzt wohl erstmal leben.
Vor allem gefällt mir der Spruch auf der Verpackung der Maus "Discover the Difference" jetzt noch besser 😉
HowTo: Reread the Partitiontable in Linux
without rebooting the system:
blockdev --rereadpt /dev/sda
blockdev (8) – call block device ioctls from the command line
position fix
Fehlermeldung seit einigen Tagen (seit irgendwelchen Updates)
Dec 2 10:43:30 scaleop kernel: hda-intel: Invalid position buffer, using LPIB read method instead.Dec 2 10:43:30 scaleop kernel: hda-intel: Invalid position buffer, using LPIB read method instead.
Fix: /etc/modprobe.d/sound:
options snd-hda-intel enable=1 index=0 position_fix=1