Running Debian on Igel thin client

Posted at 2016-05-25.

I have a pile of thin clients from a nearby business. I decided to try and install Debian on the most capable one, an Igel M330C.

The Igel (funny name with associated funny mascot) is fairly fresh with a nice small 2 GB SATA SSD, 1 GB of RAM and USB3 ports.

The Igel SSD

First, I wanted to see how the default os is set up and save it before I change anything. So, I mounted the Igel SSD in a dock. Surprising partition table was found:

[] scsi 8:0:0:0: Direct-Access     TS2GSSD2 5H-S 0000 PQ: 0 ANSI: 2 CCS
[] sd 8:0:0:0: Attached scsi generic sg3 type 0
[] sd 8:0:0:0: [sdc] 3928176 512-byte logical blocks: (2.01 GB/1.87 GiB)
[] sd 8:0:0:0: [sdc] Write Protect is off
[] sd 8:0:0:0: [sdc] Mode Sense: 28 00 00 00
[] sd 8:0:0:0: [sdc] No Caching mode page found
[] sd 8:0:0:0: [sdc] Assuming drive cache: write through
[]  sdc: sdc1
[] sd 8:0:0:0: [sdc] Attached SCSI disk

$ sudo fdisk -l /dev/sdc
Disk /dev/sdc: 1,9 GiB, 2011226112 bytes, 3928176 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device     Boot Start     End Sectors  Size Id Type
/dev/sdc1  *       62 3924723 3924662  1,9G 83 Linux

It's really not a Linux FS in there, though. Reading the partition, there seems to be strings such as IgelBoot but also Booting linux and various options. It seems to be a compressed and/or baked block of some sort that starts with a bootloader.

I made an image of the disk first.

2011226112 bytes (2,0 GB, 1,9 GiB) copied, 28,8847 s, 69,6 MB/s

Binwalk finds mostly false or included things, I think. But the first hit could be a compressed part of the system.

114953        0x1C109         gzip compressed data, maximum compression, from Unix, NULL date (1970-01-01 00:00:00)

At least I should have a rescue image stashed away now.

Booting the Igel

Meanwhile, trying to power the box on without the device gives a message No bootable device -- Please restart system. Bios is accessable by hammering on del key. There's not much, but some boot options and devices can be messed with as can display some auto selections. Usual PC fare. It does indeed try to boot off a blank USB key. I don't have a bootable one at hand, but that might be the easiest way into an installer.

Let's put the SSD back in. Booting off it gives a logo animation / splash screen and then a blue-ish cloud scene with a logo and occasional splash of network no lan type complaints plus a seemingly endless spinning pointer.

Tapping ESC at boot goes to a simple menu. Verboase boot clearly starts up Linux with kernel and init messages in sight. It also wants eth0, though. Eventually it gives up with

Use CTRL-ALT-F11 or CTRL_ALT_F12 to enter the rescue shells.

There are indeed root shells on tap on tty11, tty12 and also tty8! It's Linux i686-pae. Lots of funny business in the filesystem layout. There's some zram. Two cores, but no sign of freq scaling. Services include sshd, rpcbind, CUPS and a few odd ones. Signs of Pulseaudio and Networkmanager. Network by r8168, ALSA with snd_hda_codec_realtek.

There's a mysterious wfsd that has refs to igel-flash.ko, aufs and pata modules. Some possibly custom tools start with igel such as igelfs_util.

Clearly a lot of work has gone into the system and it might be a fine terminal. I might still want arbitrary software on it, though.

Debian on the Igel

I downloaded debian-8.4.0-i386-netinst.iso. This should boot off USB and install on the SATA SSD in the usual way. It won't be very terminal-ish, but I think it should fare well in my use. I found a suitable USB key to use and wrote the installer image on it.

The BIOS shows the key fine, but I needed a few tries to notice that the boot options dialog had a funny priority system that required me to shuffle the key to the top above the SSD in order to make it the first bootable device. After this, the installer started right up.

The installer wants firmware for the NIC. I don't have it at hand, and passing the check makes network config fail. That turned out to be the cable or port, though. Good that I decided to switch to a known good one before trying anything more complex. I set up a simple full-disk fs system as there will be limited wiggle room anyway. The base system with defaults takes up about 1 GB of 1.7 GB. Installation takes a while. Just like old times.

After boot, used space is at 880 MB. I clean up and install my usual favourites and do other setup. On balance, this doesn't change the system size much. I may want to drift up to a newer version, though. This means it may be hard to shoehorn a full jessie system in under 1 GB of storage on a thin client.

I won't make further notes unless I find interesting details or devices or make up a useful use for the box.

Just as a note, hdparm -Tt says 246 in 3.01 or 81.6 MB/s. The drive has a sensor hddtemp can find, 43 C. Lots of unknown values in smartctl, but read errors and ECC recovers are zero. Can't see age indicators and there are no supported self-tests. Sensors say cpu idles at +47 C. Cpufreq works with ondemand, but has a scale of 800-900-1000, which might not do much.

Touching the power button swiftly runs shutdown and powers off.