I have lying around half of a broken laptop that i want to turn into server station. IBM T23 800MHz 128MB RAM, 20GB HDD and most importantly around 25W power consumption. Currently running stolen winXP that came preinstalled.
Problem is that this comp does not have CD-ROM. Not bootable from USB either so best option is to boot and install over PXE.
I have desktop running ubuntu that i used server for booting. It needs following to do its job: DHCP, TFTP and APACHE. DHCP server assigns ip to comp with parameter where to find boot files, tftp server serves boot files and apache webserver is later needed to serve actual iso install image. openbsd-inetd is little funny package helps tftp server.
You have already downloaded ubuntu install image and now please mount this to apache, if /var/www is apache root then do like this:
sudo mount -o loop ubuntu-9.04-server-i386.iso /var/www/ubuntu/
ln -s /var/www/ubuntu/install/netboot/ /var/lib/tftpboot
Need for second command along with whole easy part and setting up PXE netboot environment is described very well in this tutorial https://wiki.koeln.ccc.de/index.php/Ubuntu_PXE_Install.
If you boot up then you see installation menu and can start installation. You want to use your own iso image or CD then stop at the page with heading “Choose a mirror of the Ubuntu archive” scroll up and select “enter information manually”. If you are given a prompt offering us.archive.ubuntu.com or CC.archive.ubuntu.com you’ve gone too far! Enter ip of server where you host your ubuntu installation files.
If you are lucky then you are not reading this text anymore but instead browse happily through your new installation.
I guess i was not so lucky.
My first try was to install ubuntu 8.04 with LTS. If your computer has a stink of floppydrive, especially when it is laptop, then keep your hands off hardy as installation fails to find hard drive when looking at floppy. Some people manage to disable and hide floppy from bios but you cant do this on T23. Netbook allows to drop to shell and dmesg showed like.
"[ 131.675341] end_request: I/O error, dev fd0, sector 0"
I tried also ubuntu 6.06 and xubuntu 9.04 alternate cd and as first did not find network card after netboot then latter almost finished saying kernel install had failed.
Solution to problems with installing ubuntu: install Debian!
Netboot is very similar, detecting hard drive and NIC works until it cannot find the installation files from apache. Checking access log showed
GET /debian/dists/lenny/Release.gpg HTTP/1.1
and error log
File does not exist: /var/www/debian/dists/lenny/Release.gpg
. As turns out Release.gpg is signature file and it is not supposed to be on CD at all!!! I tried to be clever added http://ftp.debian.org/debian/dists/lenny/Release.gpg to where it was missing and error log did not have any problems anymore but installation failed at the same place excatly same wa. I had enough, time to try something new.
Due unfortunate consequences i have only 1Mbps internet connection so i set my desktop downloading in night another ubuntu, fedora, mandriva, opensuse and debian releases hoping that at least some of them works.
What amazed me that next day i was able to install via netboot ubuntu Jaunty Jackalope 9.04 server edition at the first try.
Perfect installation, i have nothing but the core, memory usage is only 50MB HDD usage 700MB+swap. I have 70MB for applications and even if something goes to swap i dont mind a lot
Now next problem was that i need more than core but apt-get was thinking the ip where i installed ubuntu is ubuntu mirror which is not entirely correct.
/etc/apt/sources.list needs to be told about actual repositories like described here https://help.ubuntu.com/community/Repositories/CommandLine
/etc/apt/sources.list changed but installing apache2 still did not work, it had missing apache2-mpm-event which had missing libapr1. Actually this has simple solution that please issue
sudo apt-get update
when you’re done editing sources.list.
Some messages senn during investigation:
sudo apt-get install apache2-mpm-event Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. The following packages have unmet dependencies: apache2-mpm-event: Depends: libapr1 but it is not installable Depends: libaprutil1 but it is not going to be installed Depends: apache2.2-common (= 2.2.11-2ubuntu2.1) but it is not going to be installed E: Broken packages
sudo apt-get install libapr1 Reading package lists... Done Building dependency tree Reading state information... Done Package libapr1 is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source E: Package libapr1 has no installation candidate