Das offizielle Blog der h8u.de Gemeinde | |
Das Nicht-Kommentier-Blog mit Kommentarfunktion |
Sunday, 4. May 2008Wie man aus einem Gibbon einen Reiher macht
Als ich mich am Sonntag Abend mal wieder an meinen Rechner zu Hause gesetzt habe, blinkte mich mal wieder der Aktualisierungshinweis an. Neben der Liste der aktualisierten Pakete gab es einen neuen Button. Mein (X)Ubuntu 7.10 Gutsy Gibbon hat mit angeboten auf 8.04 Hardy Heron upzugraden (cooles Wort). Nachdem ich schon so viele Gruselgeschichten davon gehoert habe, wie die Systeme beim Upgrade auf den Gibbon reihenweise unbrauchbar wurden, musste ich das auch mal ausprobieren. Also Todesverachtend den Knopf gedrueckt, die Warnungen gelesen und meinen Rechner eine Aufwandsabschaetzung machen lassen. Nach ein paar Minuten las ich von einer guten Stunde Downloadbedarf. Da ich aber ohnehin besseres zu tun hatte, habe ich mich auf meine Ubuntu-Erfahrungen verlassen, den Updatevorgang angeschmissen und die Kiste laufen lassen.
Als ich nach zwei Stunden den Bildschirm wieder angeschaltet habe, hat mich das System tatsaechlich mit einer Frage belaestigt. Allerdings war die Frage nicht ganz unberechtigt und meine ntpd Einstellungen wollte ich doch ganz gerne behalten. Zehn Minuten spaeter wurde der Rechner neu gestartet und er hat mich voellig Problemlos in den bekannten Desktop geleitet. Die nennenswerten Unterschiede sind bislang optischer Natur. Die Anzeigebalken in der Taskbar sind endlich so farbig wie es die Einstellungen hoffen liessen und der Firefox wurde in Version 3.0b5 installiert. Habe ich auch kein Problem mit. Der neue Kernel ist ebenso unauffaellig wie der neue XServer. Ausserdem wurde das Anwendungsmenue aufgeraeumt, das war auch Zeit. Bislang verhaelt sich das System jedenfalls nicht schlechter als vorher. Netzwerk, Audio, Video und Eingabe funktionieren ebenso wie meine Standardanwendungen. Bislang kann ich also nicht behaupten, dass mir das Upgrade Probleme verschafft haette. Wednesday, 9. April 2008Knoppix über das LAN verteilen
"Knoppix über das LAN verteilen" vollständig lesen Thursday, 21. February 2008Nerdprobleme
Ich habe mir ein neues TFT-Display für meinen Server gekauft. Leider vertrug dieses sich nicht so richtig mit der Onboard-Grafik. Deshalb habe ich aus meinem Fundus eine Grafikkarte eingebaut. Nach dieser Änderung an der Hardware-Konfiguration wollte dann aber nicht mehr die Netzwerkkarte, die mich über ein Kabelmodem mit dem Internet verbindet, via DHCP eine IP-Adresse annehmen, weshalb ich faktisch vom Internet getrennt war. Besonders interessant war, dass auf der Netzwerkkarte sehr wohl Kommunikation stattfand: jede Menge ARP Pakete gingen durch, nur mein DHCP wollte halt nicht. Eine Stunde heftigstes Probieren brachte keine Lösung des Problems, aber immerhin die Erkenntnis, dass das Problem nicht mehr auftritt, wenn ich einen 100MBit-Switch zwischen Modem und Rechner klemme. Dies hat außerdem noch den netten Nebeneffekt, dass ich mehr als einen Rechner direkt ans Internet klemmen kann. Eine sinnvolle Verwendung dafür habe ich zwar nicht, und der Switch soll da auch wieder weg, aber es ist doch mal interessant zu wissen, welche Freiheiten mir mein Provider doch bietet. Beim nächsten Mal gibt es dann wieder etwas weniger Nerd-lastiges, versprochen. Tuesday, 19. February 2008Virtualisierungsblues in 64Bit
Im Vorfeld habe ich dann doch alles ausgeklammert, was nicht VMware ist, aus recht einfachen Gründen. Xen, QEmu & co. ist mir zuviel gefrickel, VirtualBox verhindert das Austauschen von virtuellen Festplatten durch UUIDs, und der kram von Parallels fühlte sich in Versuchen auf 32Bit Systemen nie wirklich ausgereift an. Ist aber alles nur mein persönlicher Eindruck. "Virtualisierungsblues in 64Bit" vollständig lesen Thursday, 20. December 2007Über das Netzwerk booten
Für den Bootvorgang sind auf der Serverseite zwei Dienste notwendig: zum Einen DHCP um die Netzwerkkarte zu konfigurieren, zum anderen TFTP um die eigentlichen Nutzdaten zu holen. "Über das Netzwerk booten" vollständig lesen Thursday, 6. December 2007Hackerspielzeug
Wer also kein Interesse an einem netten Board zum Rumspielen oder ähnlichem hat, braucht jetzt nicht mehr weiterzulesen. "Hackerspielzeug" vollständig lesen Wednesday, 14. November 2007Weg von Windows?
Seitdem Microsoft mit MediaPlayer und automatischen Updates immer mehr Kontrolle ueber meine Rechner uebernehmen will, denke ich ueber einen Wechsel nach. Vor einigen Jahren habe ich mich schon mit Solaris, NetBSD und Sourcery beschaeftigt. Da war eine Inbstallation schon ein Abenteuer und der Betrieb nur etwas fuer Leute, die genau wissen, was sie gerade tun. Zudem war die Unterstuetzung von etwas exotischerer Hardware Glueckssache. Irgendwann hatte ich dann keine Lust mehr, meine Software selber zu uebersetzen und habe mich an den gedeckten Win32 Tisch gesetzt. Doch die Zeiten des 'free lunch' scheinen zu enden. Nachdem mich ein Bekannter dringend darum gebeten hatte, das Vista von seinem neuen Laptop zu kratzen und durch XP zu ersetzen, war mein Entschluss gefasst. So geht das nicht weiter.
Schon vor diesem Ereignis habe ich mir einige Live-Distributionen angesehen. Das sind Linux Distributionen, die auf eine CD gebrannt werden und von dieser CD starten, so dass man sich schon mal einen Eindruck verschaffen kann, bevor man Zeit und Festplatte dafuer opfert. Damals war es aber so, dass die zwar auf einem Desktop ganz gut liefen, von meinem Notebook aber bestenfalls den Bildschirm erkannt haben. Diese Zeiten scheinen vorbei. Ich habe zwei aktuelle Distributionen ausprobiert und bin angenehm ueberrascht. "Weg von Windows?" vollständig lesen Wednesday, 19. September 2007Compiler warning
Es ist gar nicht so einfach Programme zu schreiben, die den Comnpiler wirklich zufrieden stellen. Im Regelfall faellt das gar nicht auf, weil man die Warnungsstufe so einstellt, dass viele Warnungen einfach unterdrueckt werden. Schraubt man die Stufe langsam hoch kann es passieren, dass Warnungen erscheinen von denen man sich nicht sicher ist, wie man die los werden soll. So zum Beispiel folgende Konstruktion:
void func1(char *format){ printf( "%25s\n", format ); } void func2(const char *format){ func1( format ); } Dieser Code wirft beim Uebersetzen in Zeile 6 die Warnung, dass der Funktionsaufruf den Vermerk 'const' des Pointerparameters ungueltig macht warning: passing argument 1 of 'func1' discards qualifiers from pointer target type. Klar, format ist als const definiert und wird danach als veraenderbar weiter gegeben. Sei nun func1() in einer Bibliothek definiert und damit unantastbar, obwohl man weiss dass format darin nie geaendert wird. In func2 moechte man das const aber auch nicht entfernen, da format auch gerne mal ein Stringliteral ist und das sollte dringend nicht veraenderbar sein. Die Loesung sieht, grosszuegig geklammert, wie folgt aus: void func2(const char *format){ func1( *((char**)((int)&format)) ); } Auf den ersten Blick kann man das natuerlich wegkuerzen, da wird aus einem char* ein char* gemacht. Tatsaechlich allerdings wird erstmal aus der Adresse des Pointers ein int gemacht. Damit geht die Information des originalen Datentypen verloren, vor allem dass es sich um eine const handelt. Da wir aber einen char* brauchen, aus den man auch mal ein strlen() anwenden kann, muss aus dem int wieder ein char** gemacht werden und dieser wir dereferenziert. Ganz einfach. Nur was spricht nun dagegen einfach (char*)((int)format) zu verwenden?
|
SucheKategorienStatische SeitenAnsicht auswählen |
Kommentare