Archives for: September 2008

25/09/08

Permalink 01:43:01 am, by X-Drum Email , 127 words   English (GB)
Categories: English, Hacking

ScanJet Music!

While surfing the web today i found an old funny hack (discovered in the 2006) that let your HP scanjet scanner to sing!.

In some HP ScanJet products (i.e. 4c) Scanner Control Language command set (aka SCL) includes an unofficial PLAY TUNE command documented here by HP.

This hidden PLAY TUNE "feature" can be used to to produce audible frequencies (actually emitted by the scanner electric motor ) the result is amazing.. there are many videos on youtube showing singing scanners in action performing songs like:
Per Elisa
Ode To Joy
Vivaldi Spring

Who discovered this feature wrote an application and 2 samples (easy to customize, all the stuff is well documented and open source) check it here and have fun (if you are a lucky HP scanjet owner!)

16/09/08

Permalink 11:02:39 pm, by X-Drum Email , 270 words   English (GB)
Categories: Linux, SysAdministration

Remotely safe-upgrade a kernel

ok i know, many people would say "old!"
anyway here there is a quick recipe to remotely safe upgrade a kernel and reboot to (try to) use it:

The recipe:
First, build your new or updated kernel, and place the image in it's final destination (/boot/$kernel_new_ver/ in this recipe):

root@thunder linux # make && make modules_install
root@thunder linux # cp System.map /boot/$kernel_new_ver/
root@thunder linux # cp arch/$arch/boot/bzImage /boot/$kernel_new_ver/

Now, edit grub's configuration file and add or edit statements to get the following (note that commands in bold are critical for this feature to work):

[..snip..]
default saved
fallback 1
[..snip..]

# new kernel
title Gentoo ($kernel_new_ver)
kernel /boot/$kernel_new_ver/bzImage root=/dev/sda1 vga=0x314 panic=5
savedefault fallback
[..snip..]

# old_known_to_work kernel
title Gentoo ($kernel_old_ver)
kernel /boot/$kernel_old_ver/bzImage root=/dev/sda1 vga=0x314 panic=5
savedefault
[..snip..]

Finally issue the command:

root@thunder linux # grub-set-default 0

to tell which kernel grub should try to fire up at boot.

How it works:
At next system startup grub will try to boot $kernel_new_ver and will increase the set-default counter value (counter + 1), so in case of problems during the boot (eg: kernel panic due the lack of the main disk controller driver), the system will reboot automatically in 5 seconds thanks to the panic=5 statement.

Then at next boot the set-default counter value (now incremented by 1) will tell grub to boot the well known to work $kernel_old_ver, and voila' you are safe!

Permalink 02:10:17 am, by X-Drum Email , 174 words   English (GB)
Categories: VirtualBox, Gentoo

VirtualBox 2.x ebuilds

woah, the first half of september was full of VirtualBox releases:
Sep 2, 2008:
VirtualBox 1.6.6 (maintenance release for the 1.6.x series)
Sep 4, 2008:
VirtualBox 2.0 (major release)
Sep 12, 2008:
VirtualBox 2.0.2 (maintenance release for the 2.x. series)

The 2.x series introduced many enhancements/changes, for example:
- qt3 is now deprecated, the default graphical frontend (VirtualBox) now uses qt4.
- a new SDK is available (PUEL edition)
- a new "hardening system" was introduced

2.0.0 ebuild were ready on jokey's overlay (as usual and soon as possible ;) ) when 2.0.2 was released, so this release was excluded and all the other new/fixed ebuilds were imported in the portage tree.

On a side note, due a problem with the official mirrors and wget (and off course PUEL license that don't allow to mirror/redistribute files) all the PUEL ebuilds (eg:virtualbox-bin, virtualbox-ose-additions) where fetch restricted again,
i opened a ticket[1] asking a fix for this issue but it was closed as wontfix.

Now nobody (including me) likes fetch restrictions but atm there are no alternatives,
sorry for that.

[1] http://www.virtualbox.org/ticket/2148

14/09/08

Permalink 04:08:12 pm, by X-Drum Email , 209 words   English (GB)
Categories: VirtualBox, Gentoo

Virtualbox Serial Port setup

Today i was trying to diagnose an debug a weird kernel bug in a VirtualBox Linux VM
(this approach is a more convenient way than work on a real machine), so a tried to figure out how Serial ports are implemented in VirtualBox.

I wasn't able to connect the VM Serial port (ttyS0 aka COM1) to my host serial port,
so i choose to use the Host Pipe mode to redirect the Guest's serial port output to a pipe created on my host, this task was accomplished using socat (net-misc/socat).

  • First create a Serial Port in your guest, and then fire up it:
  • Port Number: COM1
    IRQ: 4
    I/O Port: 0x3F8
    Port Mode: Pipe Host
    Create Pipe: (enable)
    Port Path: /tmp/vboxS0
  • On your host (mine is Gentoo Linux):
  • install socat:
    emerge -av net-misc/socat
    run socat:
    x-drum@Thunder ~ $ socat UNIX-CONNECT:/tmp/vboxS0 TCP-LISTEN:7777
  • Now if your setup is ok, you can connect to the serial/pipe using telnet:
  • x-drum@Thunder ~ $ telnet localhost 7777

Keep in mind that socat never returns once launched, if it returns immediately this means that there are problems with your guest and its serial port setup.

Going to love this feature!

Search

September 2008
Mon Tue Wed Thu Fri Sat Sun
 << < Current> >>
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          

XML Feeds

powered by b2evolution