Installing Linux on a Mini PC


Install Ubuntu 10.10 11.04 Linux onto Asus Mini PC

June 10, 2011

I am buying an ASUS EB1007-B0410 Mini PC EEE PC for $221 from Amazon to use as a freeswitch server in my house. I currently run freeswitch on a linode VPS, but my audio has gotten very choppy after I moved onto a 1024MB server from my old 768MB server. Strange that a larger server gives me worse audio. I assume I have a very active neighbor on my new VPS machine.

So, I thought I should just buy a little dedicated mini pc especially for our home phone system, and run it headless. I'll just ssh into it when I need to reconfigure something. I've never installed linux myself, as my webservers have always come preconfigured with the distribution of my choice, so I want to document the process.

My plan is to generate an ISO image using Instalinux. I will then load that iso image onto a bootable thumbdrive that I create with LinuxLiveUSB. Assuming that the ASUS EB1007-B0410 will boot from the thumbdrive, I'm hoping this will all work.

I expect the ASUS to arrive on June 16.

June 20, 2011

Asus arrived a few days ago.

I plugged the power supply (included) and a monitor (not included) into the mini computer and started it up. It came alive and asked for a keyboard. Doh! I had hoped not to need a keyboard on this, as I wanted this to just sit in a corner, like a router.

I plugged in the keyboard and it continued on and gave me some menu that presumably allows you to install skype, etc., natively. I'm not sure what this actually does, as I don't want to do that.

I restarted, and hit F2 to bring up the bios configuration. I tried to tell it to boot from removable media, and it seemed fine with this, but it wouldn't boot from the thumbdrive.

On further investigation in the bios, I found my thumbdrive shown under harddrives. I told it the thumbdrive was my primary hardrive, and to boot from harddrive. Now it booted from the thumbdrive.

I attempted to use the linuxliveusb thumbdrive that I had put an Ubuntu 10.10 iso image I had obtained from Instalinux. It tried to work, but kept wanting to go to the network to pull the rest of Ubuntu. That didn't work, since it couldn't read the network hardware. Why didn't they put all of Ubuntu into the iso? Why are they forcing me to use the network to install it?

June 22, 2011

OK, right to the horse. I go to Download Ubuntu Server on ubuntu's website. They tell me I can have 11.04 or 10.04. Darn. I wanted 10.10, since that's what I'm running everywhere else. I guess I'll download 11.04. They recommend 64 bit, but I take 32 bit, since I have struggled with some programs on 64 bit in the past, and my mini computer doesn't have enough memory to require 64 bit anyway. The ubuntu site recommends I use Pen Drive Linux to load the iso image onto a bootable thumbdrive, so I download that.

Using PenDriveLinux's Universal USB Installer to load the iso onto my thumbdrive. That seems to be working. I'm at work, so will take the thumbdrive home to try it out.

June 23, 2011

Still struggling. EEE PC booted from the USB (after I switched the drive order, so it was the first hard drive) and I was presented with the installation menu. However, when I selected install to harddisk or even run linux from usb, nothing happened.

I found that if I went to the install to harddisk option, and pressed TAB, I was allowed to edit the command that would run, to install things.

Two problems with that.

  • I have no idea how I need to edit this command to make it work
  • I can't even see most of the command, as it's obscurred by a giant "UBUNTU" logo.

One thing that has bothered me, is that the thumbdrive is showing up as a harddisk, instead of as removable media. The bios has an option to boot from removable media, but it won't boot from USB. So, I'm using PenDriveLinux's Universal USB Installer to create a bootable SD card, since the EEE PC has an SD card slot. I'm hoping the bios recognizes that as a bootable device, so I don't have to confuse the bios about the harddisk situation. Then, hopefully, the installer will work, since the bios will now know about the real harddisk.

I have found the Ubuntu on the EeePC site, which I'm hoping will provide me the rest of the information I need to get this working.

This looks interesting...

The error "Can not mount /dev/loop1 on /cow" is because usb-creator.exe is not creating a valid casper-rw file holding ext2/ext3 filesystem. Fix: 1) Use Unetbootin or 2) After running usb-creator.exe, recreate casper-rw using cygwin tools or http://www.pendrivelinux.com/casper-rw-creator-make-a-persistent-file-from-windows/. (As of April 2010)

I will add this to my thumbdrive installation by using PDL Casper-RW Creator and see if that fixes my issues. It's possible that a thumbdrive would have worked just fine, if not for this issue.

Hmmm... So I'm rewriting my thumdrive using PenDriveLinux's Universal USB Installer and I told it to do a 1026MB Persistent File for storing changes. I had intended to use PDL Casper-RW Creator as my next step, however, as I watch the log messages as it writes the thumbdrive, I see it saying

Now Creating a Casper RW File
Creating the Persistent File: Progress bar will not move until ...

So, perhaps I don't need to run PDL Casper-RW Creator? I think I'm going to stop here, and test this, without possibly messing up the thumbdrive by running PDL Casper-RW Creator.

July 10, 2011

My problems seem to be because I'm trying to install ubuntu 11.04 Server. If I do Ubuntu 11.04 Desktop, then PenDriveLinux's Universal USB Installer seems to work fine. I was able to install a desktop OS using PenDriveLinux's Universal USB Installer.

However, I still want the server, and I'm still failing. Googling around, people are having success with UNetbootin, so I'm trying that.

After I ran unetbootin to set up a USB drive, things seemed to work, except it complained it couldn't find an iso file. I therefore decided to do Ubuntu 10.10 after I found the Ubuntu 10.10 server .iso online finally.

I successfully managed to get the 10.10 server installed after copying .iso onto the flash drive and starting install process again.

After I logged in, I was unable to ssh out to anybody, or ssh into the box.

ifconfig showed no ipaddress being assigned by my router.

I got things sort of working by typing

sudo dhclient

But that didn't survive a reboot

I then set the hostname like this

SERVERNAME="EeePC1"                 # we'll set hostname to this
# Set the hostname
hostname $SERVERNAME
echo $SERVERNAME > /etc/hostname

Finally, I added the following lines to /etc/network/interfaces

auto eth0
iface eth0 inet dhcp    

I then did a

sudo /etc/init.d/networking restart

This seems to be working, even after a reboot.

I couldn't apt-get anything. Kept telling me things I knew existed, like curl and git could not be found.

After doing

apt-get update
aptitude update

Things started to work as expected.

I was then able to do

aptitude install -y git 
aptitude install -y build-essential
aptitude install -y autoconf
aptitude install -y libtool
aptitude install -y libcurl4-gnutls-dev 
aptitude install -y libcurses-perl libncurses5 libncurses5-dev  
aptitude-install -y libjpeg-dev

So, finally, I could install freeswitch

cd /usr/local/src
git clone git://git.freeswitch.org/freeswitch.git
cd freeswitch
./bootstrap.sh && ./configure && make
make all  
make install cd-sounds-install cd-moh-install