Git unter Windows und Eclipse

Ich habe für Praktikumspartner im Fach Software Engineering 2 während meines Studiums der Technischen Informatik ein kleine git tutorial geschrieben. Hier nun also sowohl die Latex Quellen als auch das pdf. Das Ding ist noch lange nicht fertig, aber so sieht man schon mal die Anfänge und etwas helfen kann es wohl auch schon.

Desweiteren kann natürlich jeder gerne mitmachen. Ist ja schließlich CC-BY-SA lizensiert.

git-tutorial (nur PDF)

git-tuorial (Archiv mit Latex Quellen und PDF)

btrfs kernel panic

Ich habe mein Netbook mit btrfs als Dateisystem für / und /home aufgesetzt. Dies geschah in dem Wissen, dass fsck.btrfs noch nicht immer funktioniert.
Nun wollte das Ding nicht mehr booten und zeigte nur eine kernel-panic und die dazugehörigen Meldungen an.
Nach etwas Spaß mit Suchmaschinen und einigem Lesen fand ich diesen Eintrag im openSUSE-Forum.

Nachdem ich also von meinem USB Stick openSUSE 12.1 KDE gebootet hatte, besorgte ich mir mittels

su -c 'zypper in git'
git clone git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-progs.git 

die aktuellen Quellen der btrfs-progs.
Um diese zu kompilieren müssen mindestens folgende Pakte installiert werden:
libuuid-devel, libattr-devel, gcc, make, zlib-devel
Nun kann mittels

make
make btrfs-zero-log

das benötigte Tool erstellen.
Nur noch mit

btrfs-zero-log /dev/sdXY

ausführen (wobei X und Y entsprechend ersetzt werden müssen) und neu booten.
So ließ sich mein Netbook wieder booten. Allerdings könnte da immer noch ein Problem sein. Ich werde es im Auge behalten.

Grub mit openSUSE DVD reparieren

Dies ist zwar eigentlich nur ein Backup für mich, um beim nächsten Mal nicht suchen zu müssen, aber vielleicht hilft es ja auch noch jemandem.

Mein Rechner hat in letzter Zeit viele Probleme gemacht. Mittlerweile bin ich mir relativ sicher, dass es an der alten Audigy2 Soundkarte lag, aber Hard Freezes sind kein Spaß und die Ursachenforschung ist anstrengend und auch die Konsequenzen manchmal etwas nervig (mysql verträgt Abstürze manchmal gar nicht gut, aber dazu später mehr.). Das Problem, dem ich mich in diesem Eintrag widmen will ist die Wiederherstellung von grub mit Hilfe der openSUSE DVD (11.4 in meinem Fall, sollte aber mit jeder Linux LiveCD funktionieren)

Als erstes sollte man das LiveSystem booten, wenn man die openSUSE DVD nutzt, so bootet man das Rettungssystem. Wenn das geschen ist, meldet man sich als root an. Normalerweise geschieht dies einfach durch die Eingabe von „root“. Falls ein Passwort gebraucht wird, so erfährt man dieses von der Homepage der genutzten LiveCD. Sodann muss man herausfinden welches Laufwerk die root („/“) Partition enthält und, falls man eine seperate /boot Partition nutzt muss man auch dieses Laufwerk kennen. In meinem Fall waren es /dev/sdb3 für / und /dev/sda1 für /boot.

Sodann mountet man die root Partition nach /mnt, bindet in diese /dev und/proc ein, wechselt das root Verzeichnis nach /mnt und mountet dort /sys und eventuell /boot. Dies geschieht mit folgenden Befehlen:

mount /dev/sdXY /mnt
mount -o bind /dev/ /mnt/dev/
mount -o bind /proc/ /mnt/proc/
chroot /mnt/ /bin/bash
mount /sys
mount /dev/sdXY /boot

Bei /dev/sdXY müssen natürlich noch XY durch die tatsächlichen Werte ersetzt werden.

Danach kann man mit „yast2 bootloader“ den Bootloader konfigurieren. Am besten läßt man sich von yast eine neue Konfiguration vorschlagen (Alt+e, Alt+p) und bestätigt diese (Alt+o).

Die Kommandos sind schamlos von niczsoft.com/ abgeschrieben

KDE und die Einfachheit des Seins

Da ich in letzter Zeit einige Leute mit ihren Windows-Kisten gesehen habe, die versuchten auf einen sftp Server (file transfer over ssh) zuzugreifen, ist mir verstärkt aufgefallen, wie schön es ist, dass KDE über kio-slaves auf viele verschiedene Protokolle zugreifen kann!

So kann man in jedem Dateimanager auf sftp zugreifen und jedes Programm kann dort gespeicherte Dateien direkt öffnen.

Und wenn einem das noch nicht reicht, weil man zum Beispiel mittels rsync Verzeichnisse synchronisieren möchte, bietet Gnu/Linux ja auch noch die Möglichkeit, sftp wie eine Partition zu mounten.

Festplatten und Partitionierung

Man liest des öfteren in IRC Chats, dass einige Hilfesuchende nicht wissen, was Partitionen sind. Das größte Problem scheinen die „Laufwerke“ in Microsoftbetriebssystemen zu sein. Dort wird jeder Partition, jedem externen Laufwerk und auch „Netzlaufwerken“ ein Buchstabe zugeordnet. Die Systempartition von Windows (und auch DOS) heißt normalerweise C:. Das liegt daran, dass A: und B: für Diskettenlaufwerke reserviert waren.

Diese Einteilung ist allerdings etwas irreführend, denn es handelt sich nicht zwingend um ganze Festplatten. Eine solche kann nämlich in Partitionen aufgeteilt sein. Vor allem bei modernen Festplatten macht es Sinn, mehrere Partitionen auf einer Platte einzurichten, um besser die Übersicht zu behalten, aber auch um z.B. Defragmentationen besser planen zu können.

In unixoiden Betriebssystemen wird die Festplatte meist in mindestens drei oder mehr Partitionen aufgeteilt, nämlich eine root Partition, welche das System, alle Programme und das Wurzeldateisystem enthält. In dieses werden die anderen Partitionen „gemountet“, also eingehängt. Diese root Partition ist eigentlich ausreichend, doch erstellt man für Desktoprechner meistens noch mindestens eine /home Partition, die alles unterhalb des Verzeichnisses „/home“ beinhaltet, damit man bei Neuinstallationen die Benutzereinstellungen behalten kann und nur die root Partition formatieren muss. Bei Servern nutzen viele noch eine eigene Partition für /var, wo z.B. Emails, Druckerwarteschlangen und andere Dinge die sich schnell ändern, wie logs gespeichert werden. Zusätzlich gibt es noch eine sog. Swap Partition, die die gleiche Aufgabe erfüllt wie die Auslagerungsdatei in Windows.

Bis auf Swap Partitionen werden alle Partitionen in des Wurzeldateisystem eingebunden, sind also Unterverzeichnisse. Dies ist in Windows auch möglich, wird aber selten genutzt.

Es gibt zwei Arten von Partitionen: Primäre und Erweiterte. Pro Festplatte kann es maximal vier Partitionen geben. Um mehr zu erhalten, muss man eine dieser vier als erweiterte Partition erstellen und kann dann in dieser beliebig viele „logische Partitionen“ erstellen. Diese Begrenzung liegt daran, dass die Partitionstabelle nur eine feste größe am Anfang der Festplatte zur Verfügung hat. In dieser Tabelle werde Partitionsart und der Anfangs- und Endpunkt festgehalten.

Jede Partition kann wiederum mit einem Dateisystem formatiert werden. Windows nutzt heutzutage meist NTFS, versteht aber auch das ältere und nicht mehr zu empfehlende FAT32. GNU/Linux kann NTFS und FAT32 zwar lesen und beschreiben, doch fehlen einige wichtige Funktionen wie Benutzerrechte und NTFS ist proprietär und somit nicht vollständig bekannt, weshalb GNU/Linux z.B. korrupte NTFS Partitionen nicht säubern kann. Das verbreitetste Dateisystem in GNU/Linux ist wohl ext4 und dessen Vorgänger ext3. Beide sind sog. „Journaling Filesystems“, wie NTFS. Desweiteren kann man aber auch eine Reihe weiterer Dateisysteme nutzen, die je nach Gebrauch Vor- und Nachteile bringen.

Partitionen sind also nur Teile einer Platte, wenn auch eine Platte nur eine Partition beinhalten kann. Natürlich kann man auch USB Sticks in mehrere Partitionen unterteilen. Leider kann Windows dann nur die Erste lesen, und auch nur wenn es sich um eine mit NTFS oder FAT32 formatierte Partition handelt.

Firefox Plugins

Da openSUSE in 11.2 Mozillas Firefox als Standardbrowser einsetzt und dessen Integration in KDE deutlich verbessert hat, habe ich Firefox in letzter Zeit wieder öfter benutzt und (mir) neue Plugins gefunden. Diese möchte ich hier nun vorstellen:

Firefox

  1. Tab Scope – Dieses Plugin zeigt eine Miniansicht des Reiters unter dem Mauszeiger
  2. Cookie Safe – Cookie Management für jede Seite einzeln
  3. Foxy Proxy – Proxy Management, gut um TOR zu nutzen. Kann je nach Seite bestimmte Proxys benutzen
  4. No Script – Erklärt sich fast von selbst: blockiert erstmal alle Scripts, inklusive Flash. Man kann seitenspezifische Ausnahmen definieren
  5. AdBlock+ – Blockiert Werbung.
  6. FireGestures – Mausgesten. Mit einfachen Gesten navigieren und sonstiges

Firefox ist vor allem mit einem neuen Profil recht schnell. Mittlerweile benutze ich Firefox fast so oft wie Konqueror und das will schon was heißen, da ich den fast ausschließlich genutzt habe. Viel Spaß beim Ausprobieren.