Don't understand german? Read or subscribe to my english-only feed.

/dev/radio

September 17th, 2006

/dev/radio ist ein Computermagazin vom Chaos Computer Club Ulm, das jeden zweiten Sonntag von 13:00 – 15:00 Uhr auf Radio freeFM ausgestrahlt wird. Nachdem dort immer wieder die beste aller Live-CDs erwähnt wird, muss ich im Gegenzug dafür fast mal hier Werbung machen. ;-) Ein ‘grep -c grml $SOUNDDATEIEN’ auf die letzten Sendungen von /dev/radio wird wohl einen Overflow zu Ohren tragen. 8-)

Dem /dev/radio ähnliche Podcasts sind übrigens auf der Chaosradio Family Webpage zu finden. Ich suche für meinen iriver noch weitere interessante Podcasts, falls jemand was hat: bitte nur her damit! :-)

Ungesund

September 13th, 2006

Den ganzen Tag arbeiten, nichts essen, aber nur von Kaffee ernähen ist wirklich nicht gesund. Da hilft auch ein gutes Abendessen nicht mehr. Sowohl Herz als auch Kopf sind noch immer auf 120. Nicht wiederholenswert. *grml*

RAID5 Online Resizing with Linux

September 9th, 2006

Today I wanted to test the raid5 reshape feature of Linux kernel >=2.6.17. My testing environment was VMware with 3 virtual disks each containing a partition of 200MB which should be resized to 500MB, using grml (featuring kernel 2.6.17-grml) of course. For real-live setup adjust the steps for stuff like switching harddisks of course. ;-)

# Initiate a RAID5 setup for testing purposes:
mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/hda1 /dev/hdb1 /dev/hdd1


# Create filesystem, mount md0, create a testfile and save md5sum for later check:
mkfs.ext3 /dev/md0
mount /dev/md0 /mnt/test
dd if=/dev/urandom of=/mnt/test/dd bs=512 count=10000
md5sum /mnt/test/dd > md5sum

# Make sure the RAID is synched via checking:
cat /proc/mdstat

# Now remove one partition:
mdadm /dev/md0 --fail /dev/hdd1 --remove /dev/hdd1

# Delete partition, create a new + bigger one and set partition type to fd (Linux raid autodetect):
cfdisk /dev/hdd

# And re-add the partition:
mdadm -a /dev/md0 /dev/hdd1

# Make sure the RAID is synched via checking:
cat /proc/mdstat

# Repeat the steps for all other disks/partitions as well:
mdadm /dev/md0 --fail /dev/hdb1 --remove /dev/hdb1
cfdisk /dev/hdb
mdadm -a /dev/md0 /dev/hdb1
cat /proc/mdstat
mdadm /dev/md0 --fail /dev/hda1 --remove /dev/hda1
cfdisk /dev/hda
mdadm -a /dev/md0 /dev/hda1
cat /proc/mdstat

Now we are ready to resize the RAID5 system online(!) [see ‘man mdadm’ for details]:

root@grml ~ # mdadm --detail /dev/md0 | grep -e 'Array Size' -e 'Device Size'
     Array Size : 390912 (381.81 MiB 400.29 MB)
    Device Size : 195456 (190.91 MiB 200.15 MB)
root@grml ~ # mdadm --grow /dev/md0 -z max
root@grml ~ # mdadm --detail /dev/md0 | grep -e "Array Size" -e 'Device Size'
     Array Size : 976512 (953.79 MiB 999.95 MB)
    Device Size : 488256 (476.89 MiB 499.97 MB)

Last step – resize the filesystem (online again):

root@grml ~ # df -h | grep test
/dev/md0              370M   15M  336M   5% /mnt/test
root@grml ~ # resize2fs /dev/md0
resize2fs 1.39 (29-May-2006)
Filesystem at /dev/md0 is mounted on /mnt/test; on-line resizing required
Performing an on-line resize of /dev/md0 to 976512 (1k) blocks.
The filesystem on /dev/md0 is now 976512 blocks long.

root@grml ~ # df -h | grep test
/dev/md0              924M   16M  861M   2% /mnt/test

Let’s check whether the testfile is still ok:

root@grml ~ # md5sum -c md5sum
/mnt/test/dd: OK

No downtime, no data lost. Excellent. :-) Thanks to Lars Schimmer for the idea and his basic instructions!

Anschlag auf Gentoo

September 7th, 2006

Segmention Fault.

Danke für den Hinweis, amne! YMMD. 8-)

vim-outliner – script for building an outline editor on top of Vim

September 7th, 2006

vim-outliner let’s you use vim as an outline editor:

# apt-get install vim-vimoutliner
% $PAGER /usr/share/doc/vim-vimoutliner/README.Debian
% vim ~/foo.otl
:he vo

If you want to export the otl file into HTML take a look at otl2html.py. Oh, did I already mention that vim-outliner is shipped with grml? ;-)

Bretagne 2006

September 4th, 2006

Von 16.-25. August war ich mit einer Reisegruppe in der Bretagne (Frankreich). Wir haben mit dem Bus insgesamt ~4600km zurückgelegt. Es war ein Kultururlaub ohne Computer und dementsprechend recovery. ;-) Lessons learnt:

  • es gibt fast durchwegs fließenden Verkehr dank weniger Ampeln aber vieler Kreisverkehre
  • trotz der vielen Kreisverkehre fährt fast niemand korrekt in und aus dem Kreisverkehr 8-)
  • in vielen Fußgängerzonen ist man vor Autos nicht sicher *suck*
  • anfallender Abfall wird abends einfach vor den Geschäften in Schachteln zur Abholung platziert
  • sehr familienfreundlich; dank einer guten Familienpolitik haben viele Familien mind. 3 Kinder (und die Frau geht trotzdem arbeiten)
  • die Zahlen, wie viele Leute bretonisch beherrschen ist oft noch aus den 90ern (auch in aktuellen Büchern) und oft verfälscht
  • in Hotelzimmern findet man selten ausreichend freie Stomstecker
  • 1-lagiges Klopapier saugt
  • eine zweite Bettdecke versteckt sich in Hotels in Doppelzimmern immer im Kasten/Schrank *hmpf*
  • Kaffee ist in Hotels selten genießbar
  • Getränke sind teuer (0,2 Cola kostet durchaus mal 3 Euro)
  • es gibt exzellentes Gemüse zu essen, es nicht alles wie in Österreich zerkocht sondern schmeckt!
  • das Frühstücksgebäck schmeckt wirklich super und kommt meinen Frühstücksgewohnheiten entgegen
  • das Bier ist großteils gut, es wird aber fast nirgends korrekt eingeschenkt
  • So viel guter Wein und dann hat man nur 1 Leber!

Natürlich habe ich auch jede Menge Bilder mitgebracht. Eine Auswahl davon habe ich online gestellt.

Buch: Firewalls im Unternehmenseinsatz

September 4th, 2006

Das Buch Firewalls im Unternehmenseinsatz von Jörg Fritsch und Steffen Gundel trägt als Untertitel ‘Grundlagen, Betrieb und Produkte’. Als Zielgruppe werden Administratoren und IT-Verantwortliche angeführt. Das Beispiel-Szenario am Anfang (das sich dann auch durch das Buch zieht) schaut vielversprechend aus, und der Anfang liest sich auch wirklich sehr gut. Leider trüben einige Punkte aber die Freude am Gesamten. Es wird immer wieder von Class A/B/C-Netzen gesprochen (man CIDR), Abbildung 2.13 ist fehlerhaft, DoS (Denial of Service) wird als DOS abgekürzt, die OSI-Layer-Zuordnung von ATM-VPN und MPLS-VPN wird verwechselt (S. 162-165), ab Kapitel 3 wirkt es dann teilweise ein wenig strukturlos und auch simple Copy/Paste-Fehler (S. 246) sind in der 2., überarbeiteten und aktualisierten Auflage (ISBN 3-89864-322-0) zu finden. Errate-Liste zum Buch konnte ich leider keine finden.

Alles in Allem gibt das Buch einen guten und relativ kompakten Überblick über Firewalls im Unternehmenseinsatz. Für reine IT-Verantwortliche wird es wohl stellenweise zu detailliert sein (z.B. bei der Konfiguration einer Cisco PIX), für Administratoren aus der Praxisecke aber umgekehrt teilweise zu oberflächlich (aber das lässt sich in einem Buch auch nur schlecht abdecken, die Dokumentation der einzelnen Produkte ist hier sowieso die passendere Anlaufsstelle). Durch die Vorstellung diverser kommerzieller Produkte (Check Point Firewall-1, Cisco PIX, Nokia IP Security Appliance,…) und der Praxisbeispiele kann das Buch aber als guter Einstiegspunkt in die Thematik dienen.

Buch: Salve Roma. Ein Felidae-Roman

September 4th, 2006

Francis ist ein samtpfötiger Klugscheisser und in den Katzenkrimis von Akif Pirincci spielt er den Komissar auf vier Pfoten. Die Bücher sind aus der Sicht von Francis geschrieben und jedem Katzenbesitzer wird klar sein, wieso die Tonwahl sarkastisch, egoistisch aber auch humorvoll ausfällt. Ich habe hier nur als Beispiel den Band der in Rom spielt (ISBN: 3453350928) ausgewählt, auch andere Katzenkrimis von Akif Pirincci habe ich mittlerweile gelesen. Ich mag den Schreibstil, es liest sich leicht und locker. Empfehlenswert als Lektüre zwischendurch.

iwatch – realtime filesystem monitoring program using inotify

September 4th, 2006

iwatch is a realtime filesystem monitoring program. It’s a simple perl script to monitor changes in specific directories/files and send email notification immediately. It reads the dir/file list from a xml config file or via commandline and needs inotify support in kernel (Linux Kernel >= 2.6.13).

If you are using Debian/grml you can install a Debian package which is available in the grml repository. An ITP is pending as well (see Bug#383191), I hope iwatch is going into Debian soon.

Online again…

August 26th, 2006

Now I’m back again. Sorry for the downtime of grml.org and michael-prokop.at, the server was running out of mem (thanks to Robert for bringing it up again). A server upgrade will follow in the near future anyway.

Now 3746 unread blogpostings, 716 mails in my inbox, lots of unread mailinglists and newsgroups are waiting for me… Sorry for delays, but I’ll answer all your mails within in the next few days.

JFYI: Offline for holidays

August 15th, 2006

JFYI: I’ll be offline for holidays in the next few days. I won’t be reachable via phone nor via instant messaging nor via irc nor via mail.

EOF

grml 0.8 – funkenzutzler

August 13th, 2006

Viel Arbeit war’s, nun ist es soweit: grml gibt es in einer neuen Version.

Wir haben X.org 7.0, es gibt 117 neue Pakete. Eine neue Schriftart macht das Leben auf der Konsole noch angenehmer. Die Window-Manager fvwm-crystal und dwm sind dabei. Wer sich mit dem Thema TPM (Trusted Platform Module) beschäftigen will, kann dies – auch ohne entsprechender Hardware – dank grml-tpm, dem tpm-emulator und den tpm-tools machen. UMTS Vodafone-Karten funkionieren für österreichische Provider Out-of-the-Box (siehe ‘grml-tips umts’). Tools wie ntfsresize, ntfsclonse, ntfsmount gehören zum Alltag vieler Admins, jetzt gibt es auch ntfs-3g um mit NTFS hantieren zu können.

Es gibt noch viiiiiiiele weitere Neuigkeiten, mehr Infos sind im offiziellen Release-Announcement zu finden.

Happy hacking und viel Spaß mit der neuen Release! Mess with the best – suck like the rest!

Stable root device (AKA UUID)

August 11th, 2006

Given: server with SCSI disk for the system plus a SCSI storage in the back. The SCSI disk uses another driver than the SCSI storage. Installing Debian etch via grml is no problem, the system disk is /dev/sda, the SCSI storage is bound to /dev/sdb. But: who guarantees that /dev/sda is always the systemdisk? Using the Debian-kernel with initramfs isn’t capable of booting the system via root=/dev/sda1 because /dev/sda1 corresponds to the SCSI storage. (Side-note: the grml-kernel does not have this problem, it just boots the system without any problems at all. 8-))

Generic solution: use the power of UUID:

root@grml # /lib/udev/vol_id /dev/sda1 | grep UUID
ID_FS_UUID=4a6aed11-42dd-4c82-81ce-8f469e93f210
root@grml # eval $(/lib/udev/vol_id /dev/sda1 | grep UUID)
root@grml # ls -la /dev/disk/by-uuid/$ID_FS_UUID
lrwxrwxrwx 1 root root 10 Aug 10 11:01 /dev/disk/by-uuid/4a6aed11-42dd-4c82-81ce-8f469e93f210 -> ../../sda1

Now we know the UUID and boot the system via root=UUID=… instead of a root=/dev/sda-entry:

title           Debian Etch, kernel 2.6.15-1-686 (on /dev/sda1)
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.15-1-686 root=UUID=4a6aed11-42dd-4c82-81ce-8f469e93f210 ro
initrd          /boot/initrd.img-2.6.15-1-686

Finally do not forget to adjust /etc/fstab as well for all entries:

UUID=e0164f78-9821-4eaf-bda7-1fd9b43a6f06 /     ext3  defaults,errors=remount-ro 0 1
UUID=4a6aed11-42dd-4c82-81ce-8f469e93f210 /home ext3  defaults                   0 0
UUID=0e88f32f-fb98-4279-b3bc-8edfc2046b5d none  swap  sw                         0 0

Install Debian etch via grml

August 11th, 2006

Want to install Debian etch? But the Debian etch-ISO does not detect all the necessary hardware? Or it even does not boot at all? Or you just can’t find your Debian etch CD-ROM? Or having $ANOTHER_PROBLEM? Use grml. :-)

Take a look at my Debian etch via grml Howto.

You can get this tip via ‘grml-tips etch’ on your grml system. Of course ‘grml-tips sarge’ (Install Debian sarge via grml) is supported as well.

Corrupt /var/lib/rpm/Packages?

August 8th, 2006

A RedHat 9 server had problems with its rpm database. Running strace showed that it’s hanging when accessing /var/lib/rpm/Packages (a Berkeley DB, wondering?). No rpm actions were possible anymore. Solution:

# cd /var/lib
# cp -a rpm rpm.backup
# rm -f /var/lib/rpm/__db*
# rpm -vv --rebuilddb

ext3 online resizing

August 1st, 2006

Yes, online resizing isn’t possible just with xfs but starting with Linux kernel 2.6.10 you can do it with ext3 as well. With e2fsprogs >=1.39-1 new filesystems are created with directory indexing and on-line resizing enabled by default (see /etc/mke2fs.conf).

A short demo how online-resizing running on top of LVM works:

cfdisk /dev/hda                           # create a partition with type 8e (lvm)
pvcreate /dev/hda2                        # create a physical volume 
vgcreate resize_me /dev/hda2              # create volume group
lvcreate -n resize_me -L100 resize_me     # create a logical volume
mkfs.ext3 /dev/resize_me/resize_me        # now create a new filesystem
mount /dev/resize_me/resize_me /mnt/test  # mount the new fs for demonstrating online resizing
df -h                                     # check the size of the partition
lvextend -L+100M /dev/resize_me/resize_me # let's extend the logical volume
resize2fs /dev/resize_me/resize_me        # and finally resize the filesystem
df -h                                    # recheck the size of the partition -> we now have a filesystem with ~200MB

This also works for Software-RAID (thanks to ‘growing ext3 partition on RAID1 without rebooting’ for the hints):

mdadm --create --verbose /dev/md0 --level=raid1 --raid-devices=2 /dev/hda2 /dev/hdb1
mkfs.ext3 /dev/md0
mount /dev/md0 /mnt/test
mdadm /dev/md0 --fail /dev/hda2 --remove /dev/hda2
cfdisk /dev/hda                                  # adjust partition size for hda2
mdadm /dev/md0 --add /dev/hda2
mdadm /dev/md0 --fail /dev/hdb1 --remove /dev/hdb1
cfdisk /dev/hdb                                  # adjust partition size for hdb1
mdadm /dev/md0 --add /dev/hdb1
mdadm --grow /dev/md0 --size=max
resize2fs /dev/md0

Notice: online resizing works as soon as the kernel can re-read the partition table. So it works for example with LVM and SW-RAID but not with a plain device (/dev/[sh]d*). Even though using partprobe, the kernel does not re-read the partition table if the device is already mounted. So I could not find a way to online-resize a “plain partition”. (Please let me know if I missed something.)

Anoter note: resizing SW-RAID5 is possible with CONFIG_MD_RAID5_RESHAPE and kernel 2.6.17.

BTW: you should know Zugschlus’ german notes regarding LVM.

Problems running DRI with current X.org on Debian/unstable?

August 1st, 2006

Just feeding google and interested readers. DRI worked with X.org 6.9 but with version 7.0 it’s failing?

% LIBGL_DEBUG=verbose glxgears
libGL: XF86DRIGetClientDriverName: 1.5.1 i915 (screen 0)
libGL: OpenDriver: trying /usr/lib/dri/i915_dri.so
libGL error: dlopen /usr/lib/dri/i915_dri.so failed (/usr/lib/dri/i915_dri.so: cannot open shared object file: No such file or directory)                                                                                                                    
libGL error: unable to find driver: i915_dri.so

Ok, missing libgl1-mesa-dri of course. But when running glxinfo after installing the package you might notice something like:

ERROR!  sizeof(I830DRIRec) does not match passed size from device driver

Solution (thanks for hint, formorer!):

apt-get install libgl1-mesa-dri/experimental libgl1-mesa-glx/experimental 

Useful resources:

Heute im IRC…

July 28th, 2006
11:32  *  mikap geht mittagessen... cul
[....]
11:36  *  vk hat Hunger und wartet schon auf mikap ...
11:36 < wuehlmaus> das hoert sich irgendwie kannibalistisch an  :)
[...]
12:46  *  vk ist satt. mikap wird wohl jetzt einige Zeit nicht mehr hier mittippen ... <rülps>

System Administrator Appreciation Day

July 28th, 2006

Don’t forget – today (on 28th of july) we have the System Administrator Appreciation Day!

Thanks for reminder, koki :)

Linux Symposium 2006

July 25th, 2006

Because it’s definitely worth a read: the proceedings of the Linux Symposium 2006 are now available for download (direct links: Volume 1, Volume 2 – PDF). Have a nice week reading them. :-)