Posts tagged linux

The Android is spreading all around

Open AndroidI was sure that is was just a matter of time, before we started to see Android spreading all around into every possible flavour of Mobile (only?) piece of hardware.

It started when just the first versions of the SDK were out in the wild: people were “just” recompiling the kernel, and boom! The magic was happening. That was a demonstration of really good and effective layering: just adapting the kernel to the hosting hardware was making it up and running.

Now, with the source code available to everyone, the porting festival is becoming even larger, with small-medium company, as well as university guys, porting Android everywhere.

More >

Linux on iPhone

Of course, it was a matter of time: we all knew that. But, still, this video is important: a concrete, publicly understandable proof, that Linux is going on the iPhone.

Probably it will never have a concrete, commercial application (like running Android, as the guys from where I took the video would like ;) ), but it’s undoubtedly an important proof of the great flexibility and adaptability of Linux and, in general, of the Open Source Software.

Way to go!
Original Post | Original Source

PS Yes, I’m very very busy (and, because of that, lazy) in the last period. Sorry!

Debian on my NSLU2: The Revenge of the Swirl

After some playing with Unslung on my Linksys NSLU2, I realize it was a “very limited solution” for our needs. We need to share 4 (sometimes 5) NTFS (or others) volumes, where everyone of them is 500GB: this is too much even for the modified firmware of Unslung, unable to read the full directory trees (and the contained files) of my massive movie’s collection.

So, I came back to the Debian/NSLU2 solution. This time, with all the intention to make it work.
It’s quite pointless to report here all the things I did to make it work in the way I want/need. I’ll just write down the most important bits:

  • Memory Optimization:
    • remove unused kernel modules (blacklisting in /etc/modprobe.d/blacklist)
    • remove unnecessary services/daemons (like exim4 or nfsd)
  • Mount volumes “by-label“, to avoid messes in mounting if the /dev files associated with the particular devices changes (reboot, unplug/replug, etc.) (take a look at this page for more info)
  • Use the noatime option in the /etc/fstab file to avoid the system to update the “last-access” field in the i-nodes: this is very important to reduce I/O on Flash memories
  • Reduce the swappiness of the kernel (reduce the I/O)
  • Install fuse and compile ntfs-3g by hand: on Debian stable it’s not available yet (I could have used stable-backports but no one compiled ntfs-3g for ARM :( )
  • Configure one Samba share for Disk. This avoid the problem of Samba calculating “free-space” when the sub-directory of a share is the mount point of a different disk.
  • De-underclock the NSLU2: the CPU (XScale-IXP42x Family rev 1 (v5l)) is soldered to the board with a pin configuration that makes it run half of is speed. I just removed the Resistor that realize that particular configuration. More info here and here.

Unslung on my NSLU2

Linksys (Cisco) NSLU2
Motivated by my friend KM here (sorry, Italian link), I decided to buy a Linksys NSLU2, a Micro-NAS based on Linux.
Linksys (owned by Cisco) released since day one the source code of the tuned Linux Kernel, instantly allowing the Open Source community to hack this device in a million of ways.

My requirements are very simple: I need to share something like 6 external HD using either Samba or FTP+HTTP.

I first tried to use the “out-of-the-box” NSLU2 with the latest firmware, but it’s unable to manage more than 2 disks (on an HUB, it just see the first HDD attached).
I then decided to use Debian/NSLU2, a very rich distribution for ARM that is just amazing. The only problem? It seems too much for an hardware like NSLU2, plus, after a normal apt-get dist-upgrade something related with SELinux and vsftpd happened and I didn’t managed to put it all back to work. I should have disabled selinux passing the parameter selinux = 0 to the Kernel at boot time but… there is no “easily modifiable” Bootloader to pass parameters to the kernel at boot time (at least, as far as I know). I suppose that I should modify the kernel, recompile and then re-flash it. Too much for something I want to finish in max 2 days. And the NSLU2 is slow. Very slow. It took something like 12 hours to make the full installation of Debian and flash re-flash the firmware.
Besides, for what I need to do, it’s not worth it to do all this.

So, what I decided was to use Unslung: a modified version of the plain Linksys kernel with some features, a package manager (rich of a lot of very interesting software optimized for the NSLU2) and that works as a Superset of the original features of the Device.
Just plug disks in it and they are available on the Network. I can control the ACL through web interface, but it looks “impossible” to give an arbitrary name to the shared disks. But that’s enough.

I’ll update if I change my mind or if this solutions lasts for longer. ;)

Picture of the Day

Kernel Summit 2007

Just a bunch of geniuses (that make one of the best things in the world of Information Technology) ;) . This picture was taken during the last Kernel Summit 2007.

Source, PollyCoke.

Ubuntu Gutsy Gibbon 7.10 – New Features

Gibbon
Straightaway from OSNews.com:

“This article will briefly discuss the new features found within Gutsy Gibbon and hopefully give you a better idea of what to expect when the final version of Gutsy Gibbons is released in October. Some of the more notable new features are a Graphical Configuration tool for X, improvements in plug-in handling for Mozilla Firefox, revamped printing system with PDF printing by default, fast user switching, new desktop search (Tracker) application and the new AppArmor security framework.”

Pretty cool!
Ubuntu is growing and growing and growing.