I use an old computer running Fedora Core as a file server, an iTunes server and to record Freeview television and radio programmes. I started out trying to do this on Windows 98 (and failed) but built it up after installing Fedora Core 3 and adding packages to increase functionality. Now I’m getting rid of Windows (I never use it) and installing Fedora Core 4, so here’s my guide to doing it all from scratch.
Install Fedora Core 4
There is plenty of information on how to do this available on the net, in particular the official guide and these useful notes. My notes here outline the general installation, with particular attention to the particular adjustments I have made to the standard install and the additional packages I have used.
First get hold of the Fedora Core disk images and burn them to CD (or DVD).
Fedora Core 4 is optimized for Pentium 4 CPUs, but also supports earlier CPUs (such as Pentium, Pentium Pro, Pentium II, Pentium III, and including AMD and VIA variants). For graphical mode, a 400 MHz Pentium II or better is recommended. A custom installation will require between 620MB and 6.9GB (for everything) in terms of disk space, 192MB of memory (or 64MB for text-mode). See the release notes for more. I’ve installed on a Pentium II 350Mhz with 384MB of RAM (and I use it in graphical mode!) and my installation uses around 2.5GB of disk space.
Insert CD 1 (or the DVD) and follow the instructions. You will need to select the language and keyboard you are using (eg. English, UK). Choose (if appropriate) to install or upgrade. When presented with the ‘Installation Type’ screen choose the custom installation option. Choose the partition you want to install on (if you’re new to Linux and you want to keep your Windows installation, the simplest thing to do is to buy and additional hard drive), configure the boot loader (giving details of any other OSs you are using, eg the disk your old Windows installation is on) and your network device. Note that where Windows calls hard drive partitions C:, D:, E: etc, in Linux drives (or at least IDE drives) are hda, hdb, hdc etc. and partitions hda1, hda2, hda3 etc. Choose whether to enable the firewall and SELinux and choose you timezone. You will also need to choose your root password. You may not use this a lot, but it’s important that it’s hard to guess and that you don’t forget it!
When you get to the package selection screen, make sure you check ‘web server’ and under details, ensure php-mysql is checked. You sould also check the Windows File Server, MySQL, Development Tools and System Tools packages. You can specify any other packages you do or don’t require at this point. This should give a total install size of around 2.5Gb. When you’re ready, click next, and the install begins.
At the end of the install you will be asked to reboot. You will then be asked to set up a user account. You should normally use this rather than the root account, to avoid making changes accidentally that will damage your system.
Networking and SSH
Because you configured your network device during the installation process you should be able to connect to the internet straight away. Launch Firefox and check!
But you may want to tweak the settings (for example, it may be helpful to have a static IP address). To do this, go to Desktop > System Settings > Network, and enter your root password. Select your device, click edit, make that changes and then click activate.
If you want to use ssh to log in from another machine (eg. I use a terminal on my iBook to do a lot of the administration) got to /etc/ssh/sshd_config, find a line that reads #PermitRootLogin yes and change it to PermitRootLogin no (make sure you uncomment it, ie remove the #). Now ensure sshd is running (service sshd start, and chkconfig sshd on to have it always start up). You can log in from any machine with ssh with ssh ipaddress.of.fedorabox -l user where user is any user except the root (such as the user account we just set up above). Root logins we just determined would be denied for security reasons, because it’s safer to log in as yourself and use su or sudo, just as it is wiser to do this on the machine itself.
With SSH when you log in your password will be sent in the clear. To avoid this set up keys – see the instructions here (ignore all the stuff relating to version 1 and therefore identity.pub). By doing this you won’t need to key in your password everytime you ssh in, which is more convenient as well as more secure!
Updating with Yum
Pay attention! Heed this warning on mixing repositories. Now follow these instructions. Then go to /etc/yum.repos.d and in the files fedora-extras.repom, fedora.repo and fedora-updates.repo find the line enabled=1 and change to enabled=0. You will get “failed to resolve dependencies” with yum if you ignore this.
You may also want to add yum extender, as described here.
Get some multimedia players
If you’re going to use your setup for iTunes/Freeview, these are good players when you want to preview your files:
Get Xine by following these instructions.
Get MPlayer by following these instructions.
Get VLC by following these instructions.
Install ffmpeg, a useful command line tool for converting media files between formats: yum install ffmpeg. Also, mencoder, the encoding counterpart to mplayer: yum install mencoder.
Create text file silfreed.repo in /etc/yum.repos.d and copy the text from here into it. Add a new lines:
Then in a terminal window (as super user) type:
yum –enablerepo=silfreednet install mt-daapd
When it’s done you’ll need to edit /etc/mt-daapd.conf (instructions included in the file). You won’t need to change much, but you do need to let it know where your music files are kept. You may also want to add file extenstions .m4b and .mp2 if you have any of those. You can start mt-daapd by typing mt-daapd -f. If you have any difficulties it may help to delete /var/cache/mt-daapd/song.gdb and start mt-daapd again.
Use chkconfig to get it to startup automatically: chkconfig mt-daapd on.
Create text file skype.repo in /etc/yum.repos.d and copy the text here into it. Then yum install skype.
Configure NFS & AFP
For NFS, add a line to /etc/exports like:
/home/yourfolder 192.168.2.3(rw,sync,insecure,all_squash) *(ro,sync,insecure)
This will allow the machine with ip address 192.168.2.3 read/write access to yourfolder and all other users read access. all_squash means any user will be seen by the Fedora box as the anonymous user (this is necessary because the uid and gid of any given user on one machine will probably not be the same as on your Fedora box).
You can add additional lines for additional exports to share different folders, each with different permissions if you choose.
service nfs start to get it going, chkconfig nfs on to have it start automatically.
FC4 comes with Howl which is equivalent to Apple’s Bonjour and you can use this to advertise your NFS shares so that they appear in the Finder for OS X machines on the network. You need to edit the file /etc/howl/mDNSResponder.conf adding the line:
“Your Folder” _nfs._tcp local. 2049 “path=/home/yourfolder
If you have several NFS shares you’ll need to add a line for each one you want to advertise. service mDNSResponder start to get Howl going, chkconfig mDNSResponder on to have it start up automatically each time.
You’ll need to install AFP: yum install netatalk. To configure it, you need to edit /etc/atalk/netatalk.conf to disable older daemons, as described here (note that this excellent guide is for a Debian system, so the paths for the config files are different – on Fedora they’re in /etc/atalk/netatalk). If you want to share home directories, you don’t need to edit /etc/atalk/AppleVolumes.default. service atalk start to get it going, chkconfig atalk on to have it start up automatically each time.
Now add a line to /etc/howl/mDNSResponder.conf:
“My Files (AFP)” _afpovertcp._tcp local. 548
You only need the one line here, even if you have made several volumes available in /etc/atalk/AppleVolumes.default.
Still to come:
yum install dvdauthor
yum install wine
yum install easytag
yum install gstreamer-plugins-extra-audio