Tag Archives: Linux

Gebrauchte Daten kaufen

In den letzten Wochen habe ich für dienstliche Zwecke vier alte Speicherkarten vom Typ MMC gebraucht bei der elektronischen Bucht erstanden. Auf allen vieren waren noch Daten drauf. Sicher, die waren frisch formatiert, aber alle nur im Schnelldurchlauf. Neues Dateisystem anlegen und fertig. Kein einziger der Verkäufer hielt es für notwendig, wirklich alle Daten zu löschen.

Ich bin nun kein Forensiker und meine Zeit für solchen Spielkram ist begrenzt. Aber da ich den coolen Hex-Editor Bless sowieso installiert und Images der Karten angelegt hatte, um Partitionstabellen und Volume Boot Records zu untersuchen, hab ich natürlich noch kurz weiter über die Dumps geschaut. Beim wirklich nur flüchtigen drüber Gucken habe ich Kartendaten für ein Navigationsgerät, Musikdateien im mp3-Format und Tabellen mit Adressen von Ärzten1 gefunden. Gerade bei letzterem handelt es sich um sensible Daten, die man vermutlich nicht wissentlich weitergegeben hat. Da rollen sich mir ja dann schon die Fußnägel hoch.

Damit die ganze Aufregung hier nicht umsonst ist, noch ein kleiner Tipp, wie man hier zwei Fliegen mit einer Klappe schlagen kann. Man benutzt einfach das Tool badblocks unter Linux im Schreibmodus. Vorsicht ist angebracht, mit Datenträgern, die man noch braucht, wenn aber wirklich alles gelöscht werden kann, dann hier der Auszug aus der manpage mit der passenden Option:

-w Use write-mode test. With this option, badblocks scans for bad blocks by writing some patterns (0xaa, 0x55, 0xff, 0x00) on every block of the device, reading every block and comparing the contents.

Das Programm schreibt also bestimmte Muster auf die Karte und liest diese dann nochmal zurück und zwar für jeden einzelnen Block. Wenn Fehler dabei auftreten, werden die gemeldet und man kann den Datenträger wegwerfen. Wenn keine Fehler auftreten, kann man die Karte ruhigen Gewissens verkaufen und sicher sein, dass ausschließlich Nullen drauf stehen.

Ganz wichtig: damit das funktioniert, führt man badblocks mit root-Rechten aus und lässt es auf das ganze Device los. Da muss man vorher das passende rausfinden und 100% (und kein µ weniger) sicher sein, dass man das richtige erwischt hat. Wenn noch ein Filesystem auf der Karte ist, einfach mounten und mit mount nach dem Device gucken. Oder mit dmesg anzeigen lassen, wie die Karte beim Anstecken erkannt wurde. Oder aus /proc/partitions das Device mit der passenden Größe ablesen. Oder am besten alle Möglichkeiten zusammen. Der fertige Befehl in meinem Fall hier und heute:

Falls man nun gerade kein Linux zur Hand hat, bitte in Windows beim Formatieren unbedingt vermeiden die »Schnellformatierung« zu aktivieren. Oder am besten nach der Formatierung nochmal das Programm h2testw der c’t drüber laufen und Daten schreiben lassen, damit wenigstens die Adressdaten der Homöopathen verschwinden. Nicht dass die am Ende noch wer aufsucht, oder vermöbelt oder potenziert oder so …

Ach ja und abgesehen vom Verkaufen von alten Datenträgern: die erwähnten Programme sollte man auch auf jeden frisch neu erworbenen Datenträger loslassen, um sicherzugehen, dass der auch funktioniert. Ist mir nämlich in den letzten Wochen mit einer neuen Festplatte und einem neuen USB-Stick passiert, dass die gleich vom Start weg defekt waren und umgetauscht werden mussten.

  1. und Homöopathen, man beachte die Unterscheidung … ;) []

Logitech-HID mit Debian Sid

Nutzer der Unstable-Variante von Debian (auch als Debian Sid bekannt) bekommen ja bekanntlich regelmäßig Gratisabenteuer aus dem Bereich der Systemadimistration geschenkt; sozusagen ein Quest-Abo.

Problem des Tages: Einen Systemstart nach dem letzten Update funktionierten Bluetooth-Tastatur und -Maus von Logitech nicht mehr, in meinem Fall konkret das Dinovo-Set.

Ich habe häufiger Ärger mit Logitech unter Linux, meistens ließ sich das aber mit einem Reset des Bluetooth-Dongles1 beheben. Dieses Mal nicht, der Fehler war persistent.
dmesg, logs und Modulliste waren soweit korrekt, es war alles da, was für die Geräte gebraucht würde und es wurde laut lsusb auch alles erkannt. Nur funktionierte einfach nichts. $SUCHMASCHINE lieferte dafür auch keine weiteren Ergebnisse.

Letztendlich habe ich das Problem in den udev-Regeln2, speziell der Datei 70-hid2hci.rules gefunden. Dort steht in Zeile 15:

Ein kurzer Blick auf die Manpage zeigt, dass der Aufruf nicht korrekt ist. Ich habe die Zeile so abgeändert:

Seit dem funktionieren Tastatur und Maus wieder einwandfrei.

Die Regel deckt einen großen Bereich von Logitech-Produkten ab, das Problem tritt also wohl auch dort auf. Debian-Bugreport kommt dann später noch.

  1. Abziehen und wieder dranstecken. ;) []
  2. zu finden unter /lib/udev/rules.d/ []

Zurück im Jahr 2000 mit fli4l

Ich befinde mich gerade auf den Chemnitzer Linux-Tagen 2010 am Stand von eisfair und fli4l. Unser überaus schicker Standrouter1 ist ein sogenanntes WRAP Board, also schon bisschen abgehangen. Der Hersteller hat hier leider keine Pufferbatterie für die RTC vorgesehen, so dass die Uhr nach jedem Stromausfall am 1.1.2000 um 0:00 (UTC) losläuft.

Nun läuft selbstverständlich fli4l (in der aktuellen Version 3.4.0) auf der Kiste und dort gibt es das Paket (bei fli4l traditionell opt genannt) chrony, was eben chrony bereitstellt, einen kleinen Dienst um die Zeit über NTP abzugleichen. Den Sprung von 2000 auf 2010 möchte der aber nicht automatisch abgleichen, so dass hier ein manueller Eingriff erforderlich ist. Die nötige Prozedur ist leider nicht ganz selbsterklärend, daher hier das kurze HowTo, wie man dort vorgehen kann.

Schritt 1: Den chronyd mit den richtigen Optionen neu starten. Per default wird dort bloß -r gesetzt. Die Option -s erlaubt auch das Setzen der RTC über chrony. Also erstmal per ssh einloggen. Dann:

Schritt 2: Beim chronyd einloggen. Dazu gibt man auf der Shell einfach chronyc ein. Per default darf man dann erstmal fast nichts, aber man kann das vom Paketmaintainer hinterlegte Passwort eingeben, um mehr Rechte zu erlangen. Bitte wie folgt eingeben:

Schritt 3: Die Zeit setzen. Dazu erlaubt man sich das zunächst mal mit dem Befehl manual, dann setzt man die Zeit und dann sagt man ihm noch, dass er das auch der RTC verklickern soll. Beim Setzen der Zeit reicht es das auf eine Minute genau zu machen, den Rest erledigt chrony später ganz normal per NTP.

Bei der Eingabe von settime springt die von chronyd erzeugte CPU-Last auf über 90%. Nach einem weiteren Neustart von chronyd, ist die Zeit gesetzt, ich kann nicht sagen warum, aber der pragmatische Ansatz funktioniert hier. Also:

Jetzt passt schonmal die Systemzeit, ein rtcdata im chronyc zeigt aber noch die alte Zeit der RTC. Also führt man hier nochmal ein trimrtc aus. Die Änderung braucht ein paar Minuten um übernommen zu werden, das geschieht aber dann automatisch.

So, und jetzt wo die Zeit vom Messerouter richtig eingestellt ist, freuen wir uns auf den zweiten Tag hier. Gestern war es schon gut besucht und es waren viele freundliche Interessenten am Stand. Der Sonntag Morgen läuft etwas ruhiger an, da könnte man eigentlich nochmal einen Kaffee trinken …

Update: die so gesetzte Uhrzeit übersteht auch einen Soft Reboot. D.h. wenn man das WRAP hinter eine USV hängt, braucht man die ganze Prozedur nur einmal auszuführen! ;-)

  1. wo alle Besucher nur fragen, wo man die Hardware kaufen kann []

Coffee Connection: Netzwerkverbindungen mit Java im Debian Sid

Ein länglicher Titel für ein ärgerliches Problem mit kurzer Lösung:

Seit einigen Tagen mag sich Eclipse unter Debian Sid auf meinem Arbeitsnotebook nicht mehr mit dem Internet verbinden. Die Fehlermeldungen sind, je nach Modul, verschieden, laufen letztendlich aber immer auf etwas in der Form “Network noch reachable” hinaus. Erst dann fällt auch auf, wie oft ich doch bei der Entwicklung auf das Internet zugreife: Subversion und Maven funktionieren nicht mehr, Updates und das Einspielen von Plugins ist unmöglich und irgendwann – ein wichtiger Hinweis auf die Fehlerursache – stellte sich heraus, dass gar keine Java-Anwendung mehr Zugang zum Netzwerk hat.

Nachdem ich zunächst nach Fehlern bei Eclipse gesucht habe, war die Lösung nun recht nahe: Ein Blick in die Fehlerberichte für das Paket sun-java6-jdk zeigt den Bug #560044, der genau mein Problem beschreibt. Offenbar hält SUNs Java sich nicht an die Konventionen für den Umgang mit IPv4- und IPv6-Verbindungen, so dass IPv4 gar nicht mehr funktioniert.

Der Fehlerbericht enthält am Ende auch einen Workaround, der bei mir funktioniert: In der Datei /etc/sysctl.d/bindv6only.conf die Variable net.ipv6.bindv6only von 1 auf 0 setzen, und schon dürfen IPv6-Sockets auch IPv4-Pakete empfangen. [Update: Mit dem Aufruf invoke-rc.d procps restart muss die Konfiguration dann noch neu geladen werden.] Problem solved.

Nun muss dieser Bug nur noch unter dem Google-Query “Debian Eclipse network connection error” erscheinen, dann wäre er auch keinen Blogeintrag mehr wert. 8-)

Resistente Virenschleuder

Als die Europäer das amerikanische Festland eroberten und die fälschlicherweise als Indianer bezeichneten Ureinwohner verdrängten, brachten sie neben Waffen und billigen Geschenken unbeabsichtigt noch etwas anderes mit: Krankheiten, gegen die sie selbst resistent waren, die den Indianern aber schwer zusetzten.

Warum erzähle ich das?

Als Linux in verschiedenen Distributionen begann, den Desktop zu erobern und mit der Ausbreitung des Internets auch Viren, Würmer und andere Malware populär wurden, stellte sich eines heraus: So richtig betroffen waren nur die Windows-Nutzer. Einen Virus für Linux zu schreiben, war ungleich schwerer und die Zahl der Nutzer war doch nicht hoch genug, als dass es sich lohnte. Folglich ist der Linux-Nutzer (und jeder Nutzer anderer Betriebssysteme) gegen die Windows-Viren resistent. Was besagten Nutzer jedoch nicht davor bewahrt, unwissend Überträger zu sein. Denn niemand verhindert, dass er auf seiner Festplatte, seinem USB-Stick und in seinen E-Mails Dateien hat, die eine Form von Schädling enthalten. Ein Windows-Nutzer, der eine Datei eines Linux-Nutzers weniger argwöhnisch öffnet, weil er ihm vertraut, wird so doch das Opfer einer Attacke gegen sein System. Ein Vertrauensbruch, der so nicht beabsichtigt war.

Jeder Windows-Nutzer lernt beizeiten, einen Virenscanner zu installieren, um sich gegen Schädlinge zu schützen. Linux-Nutzer fühlen sich sicher und brauchen solche Software nicht. Damit werden sie zum idealen Überträger, da sie nicht einmal wissen, was sich auf ihrer Platte tummelt.

Aufgefallen ist mir das, als mir jemand schrieb, in einer von mir hochgeladenen Datei (die ich auch von anderer Stelle per USB-Stick empfangen habe) einen Virus entdeckt zu haben. Zwar handelte es sich um einen Fehlalarm, trotzdem macht dies eines klar: Selbst wer nicht betroffen ist, sollte seinen Datenbestand hin und wieder nach Viren untersuchen!

Freie Virenscanner gibt es zum Beispiel mit ClamAV, die man per Cron-Job regelmäßig über seine Daten jagen kann. USB-Sticks lassen sich bei Bedarf automatisch überprüfen, wenn man auf die Daten zugreift, und schon ist das Netz ein wenig dichter und die Gefahr, selbst zur Virenschleuder zu werden, ein Stück geringer.

Debian und ausgelagerte Firmware in Linux 2.6.29

Mein Notebook arbeitet wie so viele andere mit einem Chipsatz von Intel, d.h. LAN und WLAN läuft beides mit Intel Chips:

Nun kam heute früh der neue Linux Kernel 2.6.29 in Debian unstable an. Bei der Installation wunderte ich mich schon, dass das Update der initramfs nicht 100% glatt lief und folgende Meldungen kamen:

Beheben ließ sich das in meiner Debian-Installation dann einfach durch die Installation der Pakete firmware-ipw2x00 und firmware-linux.

1234567890 Sekunden Unixzeit

Unix und viele verwandte Systeme speichern Zeitangaben in Sekunden, die seit dem 1. Januar 1970 00:00 Uhr nach koordinierter Weltzeit (UTC) vergangen sind. Das ist nicht immer ganz unproblematisch, aber wie man unter anderem der deutschen Wikipedia entnehmen kann, gibt es ein paar besondere Werte, die für uns Geeks ein netter Vorwand sind, die Gläser zu erheben und anzustoßen.

Heute Nacht nun wird in dieser Zeitrechnung die Marke 1234567890 Sekunden erreicht. Nach deutscher Zeit (UTC+1) also in der Nacht von Freitag, dem 13. Februar 2009 auf Sonnabend, den 14. Februar 2009 um genau 00:31:30 Uhr.

Für viele Geeks rund um den Globus ist das auch ein Grund zum Feiern, zumindest ist die Trefferliste von Google zu utc 1234567890 ziemlich lang.

Ein besonderes Kuriosum: in Pennsylvania (USA) gibt es einen GeoCache mit dem Titel »When The Clock Strikes 1234567890«! *gg*

Wer mit Tux und mir heute nacht zusammen anstoßen will: wir halten uns in der Stadt Otto-von-Guerickes in der Schenke zur kräftigen Blume auf. ;-)

Nachtrag: ich hab nicht von webvariants abgeschrieben sondern von Stories of a KDE programmer. Den Link hatte Tux am Montag in seinem identi.ca Stream. 8-)

Samsung R700 Linux Installation: Erfahrungen (2)

Ich denke, ich habe jetzt eine Konfiguration fuer das R700 gefunden, mit der (fast) die gesamte Hardware funktioniert. Zumindest kann ich nun mit dem R700 unter Linux X-Plane und Flightgear betreiben, was gleichermassen dienstlich wie auch privat sehr angenehm ist.

Ich bin uebrigens erstmal bei KDE 3.5.9 haengengeblieben, statt wie zuerst vorgenommen gleich das neue KDE 4.1 zu verwenden. Zusammen mit compiz-fusion ist KDE 3.5 ausreichend huebsch anzuschauen und angenehm zu bedienen. (Wie konnte ich nur so lange ohne die Funktionalitaet der Compiz-Plugins “Scale” und “Expose” leben?)

Lediglich die Regelung des LCDs geht unter X noch nicht. Und ich glaube, mein Sound ist insgesamt noch leiser als unter Windows, was ich darauf zurueckfuehre, welchen Kernelparameter ich verwende “model=basic”. Den Kartenleser habe ich noch nicht ausgiebig getestet.

Hier aber nun die Konfigurationen im Detail:

Continue reading

Samsung R700 Linux Installation: Erfahrungen (1)

Ich habe mittlerweile mit der Installation von Gentoo begonnen. Das System laeuft mittlerweile aus eigenem Bootloader und bedarf der weiteren Softwareinstallation.

Einen 2.6.26er-Kernel habe ich schon gebacken. Leider musste ich die Config  selbst zusammensuchen, ich habe mit Google keine andere Linuxinstallationsanleitung oder zumindest Kernelconfig gefunden. Wenn ich zufrieden und fertig bin, sollte ich meine .config hier im Blog veroeffentlichen und dann Werner Heuser von Tuxmobil einen Link fuer seine Sammlung zukommen lassen. Schliesslich hat mit diese Linksammlung auch schon so oft geholfen, als ich das alte Inspiron installiert habe.

Momentan kompiliere ich X und Anwendungsprogramme (Firefox, Thunderbird, Gimp, Openoffice). KDE zu installieren zoegere ich noch hinaus, wer weiss, ob nicht doch noch (wenigstens maskierte) KDE 4.1 Pakete zu bekommen sind. Ich glaube, dass es ein Overlay von KDE 4.1 gibt, aber ich mag Overlays nicht sonderlich und wuerde es lieber direkt aus Portage beziehen.

Bereits beim Installieren des Basissystem von Gentoo (Stage3) sowie dem Uebersetzen des Kernels sind mir beim Arbeiten mit der Shell und dem R700 einige Sachen aufgefallen, die seltsames Verhalten zeigen oder ganz anders geloest sind als beim alten Dell Inspiron 8200:

  1. STRG links und Fn auf der Tastatur sind genau andersherum angeordnet als beim Dell. Wenn man viel mit den Bash-Shortcuts (CTRL-E, CTRL-A, etc.) zu arbeiten gewohnt ist und gleichzeitig in den Fingern noch die Erinnerung an die alte Tastatur stecken, dann wird das Tippen arg eingeschraenkt. Ist aber nur Gewoehnungssache.
  2. Sowohl beim Inspiron als auch beim R700 ist die LCD-Helligkeit ueber Fn+Cursortasten zu regeln. Waehrend beim Inspiron allerdings die Hardware das uebernimmt (und es deswegen auch auf der Console oder beim Booten funktioniert), ist es beim R700 nur in Software geloest. Als Workaround kann ich aber zumindest einen Zahlenwert in /proc/acpi/video/NVID/LCD/brightness schreiben und damit die Helligkeit regeln.
  3. Unter Vista liess (und beim R60 meiner Freundin unter XP laesst)  sich mit Fn-F5 das Backlight komplett deaktivieren. Sehr stromsparend und bei Sonne von hinten auch noch ein wenig ablesbar. Keine Ahnung, wie ich das unter Linux hinbekommen kann. Hat jemand Ideen?
  4. Das R700 hat eine Webcam und einen SD-Kartenleser eingebaut. Wie krieg ich die nur unter Linux zum Laufen? Ich vermute mal, I2C ist mein Freund bei der Kamera und fuer MMC habe ich auch ein Kernelmodul gesehen, konnte es aber bisher noch nicht probieren. Ratschlaege sind auch hier aeusserst willkommen.
  5. Die Backspacetaste funktioniert auf der Shell manchmal seltsam. Es wird ab und zu irgendein Sonderzeichen mit in den Zeichenpuffer geschrieben, der dann die ganze Befehlszeile ruiniert. Es koennte auch sein, dass dies die ASCII Bell ist, weil ich derzeit gar keine Bell auf der Shell hoere. Da muss ich noch mal nachforschen. Eventuell liegt es auch der Keymap de-latin1-nodeadkeys, die ich in /etc/conf.d/keymaps eingetragen habe. Ich gehe spaeter mal auf de-latin1 zurueck und schaue, ob es Besserung gibt.
  6. Der verbaute Intel WLAN Chip 4965 braucht beim wpa_supplicant den Parameter “-Dwext” und nicht — wie ich zuerst dachte — “-Dipw”, wie ich es aus der manpage herauslesen wuerde.

Bei Gentoo aergere ich mich immer mehr ueber den Status von Firefox: Die Version 3.0 ist seit Monaten draussen, 3.0.1 seit ueber fuenf Wochen. Warum muss beides immer noch maskiert im Gentoo Portage sein?

Neues Notebook: Distro gesucht

Ich hab mir Mittwoch ein Samsung R700, welches meinen doch schon in die Jahre gekommenen Inspiron 8200 ersetzen soll. Nachdem ich mich ein, zwei Stunden ueber das vorinstallierte Vista amuesiert hatte, habe ich sofort mit der Entscheidungsfindung fuer eine Linuxdistribution begonnen. Klar war, dass ich eine Distribution wollte, mit der ich bereits Mileage habe, damit die Installation zuegig von der Sache geht.

  • Debian habe ich kurz erwogen, mich aber dann doch dagegen entschieden, weil ich einen Firefox moechte, der auch so heisst, und keinen Iceweasel. Dieses Lizenzgerangel um Firefox/Icewease und Thunderbird/Icedove interessiert mich als Endnutzer nicht die Bohne, solange ich beides legal kostenfrei verwenden darf. (Debians Entscheidung kann ich trotzdem verstehen und gutheissen: Fuer Firmen als Anwender kann eine absolut freie Distribution in der Finanzbuchhaltung/Rechtsabteilung selbst bei einer staatlichen Pruefung fuer froehliche Gesichter sorgen!) Mit apt-get und aptitude habe ich aber immer gern gearbeitet. KDE 4.1 ist allerdings auch nicht dabei, auch wenn es wohl bald in Debian Sid aufschlaegt.
  • Knoppix: Siehe Debian. Und ich war zu faul, mir die DVD zu saugen und zu brennen. Und kein KDE 4.1…
  • Opensuse: Suse will ich aus Prinzip nicht. Und die OpenSuse Live CD mit KDE 4.1 lief bei mir eh nicht richtig rund.
  • Sabayon Linux: Klingt interessant, insbesondere weil ich nicht so viel selbst kompilieren muesste. Aber ich mag den Ansatz nicht, dass einfach ueber ebuild/portage noch ein anderes Paketmanagementsystem draufgestuelpt wird. Ebuild ist selbst schon komplex genug… Ich bin unschluessig. Hat jemand Erfahrungen damit gemacht? Ich bitte um entsprechende Kommentare!
  • (K|X)ubuntu? Hat bei mir im Kopf immer noch den Status des Anfaenger-Linux. Nett waere aber, dass es auf deb-Paketen basiert. Und die Hardwareerkennung soll genial sein. Der Installer ist wohl gleichzeitig eine LiveCD, die ich wohl mal ausprobieren sollte. Wenn, dann muss es Kubuntu sein, die haben seit einigen Tagen wohl auch KDE 4.1.
  • Gentoo: Habe ich bisher auf dem Inspiron verwendet, stecke ich gedanklich also derzeit am tiefsten in der Materie. Wenn doch nur diese langen Installationszeiten durch das Kompilieren nicht waeren. Ich will doch lediglich moeglichst aktuelle Pakete mit moeglichst wenig Aufwand installieren. Gentoo ist halt viel Handarbeit. Was mich wundert: Firefox ist in der 3.0.1 immer noch maskiert (~x86), KDE 4.1 ist noch nichtmal maskiert zu haben. Was ist los bei Gentoo, schlafen die, haben die keinen Bock mehr oder einfach zu wenig Leute? Die hatten doch mal den Ruf, alles superschnell ins Portage hineinzubekommen.

Schlussendlich: Ich werde die Installation wohl mit Gentoo beginnen, auch wenn ich dabei ein leicht ungutes Gefuehl habe. Die Kubuntu-Installer ziehe ich mir aber auch und teste sie mal als LiveCD.