Arch Linux

15, Dec 2008



My most recent adventure into new Linux distributions let me to Arch Linux. Arch installs like none of the other distros I have tried so far. You know you're using a more complex distribution when it doesn't come with a simple graphical set-up, and you have to provide all the information yourself. The first choice that I had to make, was related to partitioning. How large should I make the /boot partition? I was then asked about all the other partition sizes on the disk. I decided to keep everything at the defaults, as I didn't feel like I knew enough to make the decisions. Once that was done, I installed all the core packages from the disk. After watching all of those get installed, and hoping I had selected the correct ones, I was then tasked with the duty of checking over all the config files to make sure that they were as they were supposed to be. I made some changes, setting the host name to something different, and a couple other edits, but everything looked as it should. I confirmed that I was complete there, and let the installer build the rest of the OS. Once again, as I sat there, I hoped I hadn't done anything grossly wrong, and that everything would go as planned. It seemed like everything went as it was supposed to. The next step was to install a boot loader. I choose to use GRUB, as that's what I had the most experience with. I was given a choice on where I wanted to install the GRUB itself, decided that the top option was the best, and just went with it. Luckily that seemed acceptable.

Once that was done, it was time to reboot, and start things up. The system ran through some first time checks, and then ordered an automatic reboot. Now it's time to start things up.


After the second reboot, I logged in as root, and checked to see if I had an internet connection. No luck. I poked around in the config files I set-up during install, and realized that I had forgot to set my network interface to DHCP. I made that edit, saved the file, reset the connection, and tried a ping again. Success.

Next came configuring pacman, the accurately named package manager that comes with Arch. All that was necessary here was to go and edit the mirrors list to change it to reflect the nearest mirrors, and then update the local database. Once that was done, it was time for a full system upgrade. Along the way, pacman found an update to itself, which required breaking out of the update pattern to update pacman, and then restarting the updates. On the second run through, the system found 104.77Mb worth of updates to download, forming a long list that extended beyond my screen.

I agreed, and continued with the installation. However, it was not to be. I was informed that there was errors with klibc, and that no packages were updated. After a quick check to the Arch forms, I found that this is a very common problem, and is easily solved by simply removing all the klibc symbolic links as root with

rm /usr/lib/klibc/include/asm

Once that was done, I issued the system update command again, and this time things worked out quite nicely, and everyone was happy.


Now that all the core parts were working as they were supposed to, it was time to add all the extra packages and programs that I wanted. First off, was to get sound working. I installed the alsamixer easily through pacman, and quickly set that up. All that was required was adding my user account to the audio group and setting the default system volumes. The next goal was to set-up SSH so I could actually access the computer remotely. I installed OpenSSH, made some configuration changes, and added it to the daemon list in order to have it start with the system. After starting up the service, I then tried to SSH in from my laptop - success. Next up is setting up a local web server, again I turn to pacman. I downloaded and installed Apache, PHP, and MySQL. I checked the config files one more time, and then started up Apache. It started with out any problems, so I added it to the daemon list after sshd (the SSH daemon).

The final parts of the web server is PHP and MySQL. PHP was very to activate simple, requiring only small edits to /etc/httpd/conf/httpd.conf and /etc/php/php.ini. I restarted the HTTP Apache server, made a simple test page, and tested out phpinfo() it worked on the first try. Starting MySQL was slightly more confusing. For some reason I expected that it had started alongside Apache. However, I eventually realized that was not the case, and I had to manually start MySQL, add a root password, and set-up the initial databases. Once that was done, I edited /etc/my.cnf and /etc/hosts.allow to accept connections from MySQL, then the last step was adding MySQL to the daemon list. Finally, it was time to set-up phpMyAdmin. I downloaded the .tar.gz, extracted it, and then navigated to its new location. After running the set-up script, I was able to login through phpMyAdmin as the root user that I had created earlier. From there I now had full control of the MySQL databases. That pretty much takes care of all the programs that I'll be needing, at least for now.

I've decided that I have no need to install and setup an X server on this computer, as it will be only used as a file/web server. That also conveniently removes a large resource demanding process. Since the whole point of this exercise is to make this old computer run fast, that seems like a great idea to me. So, with the set-up of my new Arch Linux system finally completed, I now end this post.


This space intentionally left blank.

Have Something to Say?

Questions? Comments? Concerns? Let me know what you’re thinking.

  • You can use Markdown formatting here.