Google Site SearchFN Site Search IRCFN Staff IRC Webmail Login FN Staff Webmail
Site Navigation:
 
 

Fedora Core 3 Installation Notes

by Stanton Finley on Nov 19, 2004 (Revised Dec 17, 2004)

The original article is located at http://stanton-finley.net/fedora_core_3_installation_notes.html

These instructions assume a dual boot Windows and Fedora i386 to i686 system with an nVidia GeForce graphics card, an "always on" LAN or broadband connection configured "DHCP", and at least 10 GB of free disk space for the Fedora partition. For the most part the steps should be followed in the order that they were written because certain programs must be installed and certain configurations made in order to facilitate later steps.

Contents:

Installation
Firefox and Thunderbird
nVidia
True Type Fonts
Java
Flash
RealPlayer
Yum
Apt and Synaptic
Acrobat Reader
MPlayer, xmms, Rhythmbox, and Xine
NTFS support
Bittorrent and bittorrent-gui
Azureus for bittorrent
Web Server
PHP and Perl
MySQL
phpMyAdmin
Resources

Installation:

  • Download and burn the five Fedora Core 3 CDs from iso images from your nearest mirror site. (You should get FC3-i386-disc1.iso, FC3-i386-disc2.iso, FC3-i386-disc3.iso, FC3-i386-disc4.iso and FC3-i386-rescuecd.iso.)
  • Partition your hard disk with something like one of the disk partition creation/editing tools on the System Rescue CD available at http://www.sysresccd.org/. You could also use a commercial product such as PartitionMagic. You may leave the partition that you wish to use for Fedora as unpartitioned space. The installation program will format this partition, create swap space within it, and make a directory structure.
  • Configure your bios settings to boot first from the CD drive.
  • Insert the first Fedora Core 3 CD and reboot your machine.
  • At the boot prompt hit enter.
  • Hit enter for "ok" to test your CD media or right arrow key and enter to skip this test. (I recommend testing your media to determine if your CDs are properly burned.)
  • Click "next" at the "welcome" page.
  • Click "next" at the "language selection" page for default English.
  • Click "next" at the "keyboard configuration" page for default U. S. English.
  • Select "custom" on the "installation type" page. Click "next".
  • Select "automatically partition" on the "disk partitioning setup" page. Click "next". If you elect to manually edit your partition with Disk Druid, double click on the partition, select the "swap" file type, and configure your swap space size to equal about twice your computer's physical memory size. Double click on the remainder of the partition to configure it as a Linux ext3 file system. At minimum you must designate this remaining space (probably /dev/hda2) as the root "/" partition mount point.
  • Select "keep all partitions and use existing free space" on the "automatic partitioning" page. Click "next".
  • Click "next" on the "disk setup" page.
  • Check the "other" check box on the "boot loader configuration" page. Click "edit". Type "Windows" in the "label" box and uncheck the "default boot target" check box. Click "ok".
  • Click the "default" check box next to "Fedora Core" to make it your default boot operating system. Click "next".
  • Leave "eth0" and hostname "automatically via DHCP" on the "network configuration" page. Click "next".
  • Leave "enable firewall" selected on the "firewall configuration" page and click the check boxes for "ssh", "http", "https", "ftp" and "smtp". Leave "Enable SELinux" "active". Click "next".
  • Click "next" at the "additional language support" page for default "English (USA)".
  • Click on the map for your location on the "time zone selection" page. Click "next".
  • Set your preferred root password on the "set root password" page. Click "next".
  • You will see a message "reading package information".
  • Scroll down the "package group selection" page and click in the "everything" box under "miscellaneous". Click "next"
  • You will see a message "checking dependencies..."
  • Click "next" on "about to install" page.
  • Click "continue" to get to the "installing packages" page. You will eventually be prompted to insert the remainder of the installation CDs. (It took about an hour to install "everything" on my system.)
  • When the installation is complete remove the last CD and click "reboot" for the first boot screen.
  • Click "next" on the "welcome" page.
  • Click the appropriate radio button to agree to the license agreement and click "next".
  • If you are already connected to an "always on" LAN or broadband connection click on the "network time protocol" tab, click in the "enable network time protocol" check box, click the down arrow in the "server" box, select "clock.redhat.com" , click "add" and click "next".
  • On the "display" page select your preferred screen resolution and color depth based upon the capabilities of your monitor. Click "next".
  • On the "system user" page choose a user name (in lower case, not "root"), a full name (any case), and a password for that default user. Click "next".
  • Click "play test sound" on the "sound card" page to test your sound system. Your should hear three chords in sequence. If you don't you can try to configure your sound card later. Click "next".
  • Click "next" on the "additional CDs" page.
  • Click "next" on the "finish setup" page.
  • Log in as "root" with the root password you selected earlier.
  • Click "log in anyway" if a Gnome error message appears on first boot. We will correct this later.
  • When Fedora finishes booting to the graphical interface click on the top panel, hold your left mouse button down, drag the top panel to the bottom of the screen, and release the mouse button.
  • Click "Applications" > "System Tools". Right click on "Terminal" and select "Add this launcher to panel".
  • Right click on the terminal icon on the bottom panel and select "move". Move the icon to the left near the separator bar and click to position it there.
  • Click on the terminal icon. This will open the terminal.
  • Type:
    gedit /boot/grub/grub.conf
  • Revise the "hiddenmenu" and "kernel" lines in grub.conf so that your file looks like this:
    # grub.conf generated by anaconda
    #
    # Note that you do not have to rerun grub after making changes to this file
    # NOTICE:  You have a /boot partition.  This means that
    #          all kernel and initrd paths are relative to /boot/, eg.
    #          root (hd0,1)
    #          kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00
    #          initrd /initrd-version.img
    #boot=/dev/hda
    default=1
    timeout=5
    splashimage=(hd0,1)/grub/splash.xpm.gz
    #hiddenmenu
    title Memtest86+ v1.27
    	kernel /memtest86+-1.27
    title Fedora Core (2.6.9-1.667)
    	root (hd0,1)
    	kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 vga=788 selinux=0
    	initrd /initrd-2.6.9-1.667.img
    title Windows
    	rootnoverify (hd0,0)
    	chainloader +1
    
    This will display the menu to select Windows or Fedora immediately upon boot and will also disable the graphical boot screens so that you will see the boot sequence scroll by in text. We also disable SELinux on the kernel line here. Leave out the "selinux=0" if you wish to keep it enabled. Click on the "save" icon in gedit and close it. Close the terminal.
  • Click on "Applications" > "System Settings" > "Server Settings" > "Services" and deselect system services that you will not immediately use. When you click on each of them you will see a description as to what they are for. If you're not sure, leave them in there. (I deselected "apmd", "canna", "cups", "cups-config-daemon", "hpoj", "irqbalance", "mDNSResponder", "mdmonitor", "nifd", "pcmcia", and "sendmail".) Click the "save" icon and close the service configuration screen.
  • Open the terminal and type:
    gedit /etc/hosts
    Place your cursor after "localhost" and hit tab. Then type in the characters that appear on your root terminal screen after "root@" up to but not including the space and tilde (~). When you are finished, your hosts file should look something like this:
    # Do not remove the following line, or various programs
    # that require network functionality will fail.
    127.0.0.1		localhost.localdomain localhost	x1-6-00-04-5a-5e-ac-83
    
    Click on the "save" icon in gedit and close it. This will eliminate the Gnome error message that appears on boot-up on some systems.
  • In the root terminal type:
    gedit /etc/modprobe.conf
    Add these lines to the bottom of the file:
    alias net-pf-10 off
    alias ipv6 off
    
    Add a carriage return if required. (There should be a blank line at the bottom of these files.) Click on the "save" icon in gedit and close it. This will speed up browsing and file transfers in some cases by decreasing DNS lookup time.
  • Click on "Applications" > "System Settings" > "Login Screen". Click on the "login user automatically after a specified number of seconds" check box. Type your default user name that you selected during installation (lower case, not "root") in the "timed login username" box and select "5 seconds before login". Click "close".
  • Click "Actions" > "Log Out" > "Restart the computer" and click "ok".
  • After boot up you should be logged in as the default user. Click on the top panel, hold your left mouse button down, drag the top panel to the bottom of the screen, and release the mouse button.
  • Click the red flashing up2date icon in the lower right. Click "launch up2date". Type in your root password and click "ok". Click "ok" again. Click on "yes" to install the key. Click "forward". Click "forward" again. After the headers are downloaded click on the "select all packages" check box and click "forward". You will see a progress dialog "testing package set / solving RPM dependencies". When this is complete the updates will be downloaded. This may take a while. Click "forward" to install the updates and "forward" again to complete. You may want to reboot at this time.
  • If you get an error message regarding eggcups after you have installed the up2date updates and rebooted, or if you see strange things happening with your Gnome desktop follow the steps for "Yum" below, then open the terminal and type:
    su -
    Hit enter. Type in your root password and hit enter. Type:
    yum --enablerepo=updates-testing update prelink
    When you see:
    Dependencies Resolved
    Transaction Listing:
      Update: prelink.i386 0:0.3.3-0.fc3
    Is this ok [y/N]:
    Type:
    y
    Hit enter. The prelink package will be installed. When it is finished type:
    su -c /etc/cron.daily/prelink
    Hit enter. Wait until the prompt reappears. This may take a while as the prelinks are being updated. When the prompt reappears reboot your machine.

Firefox and Thunderbird:

  • Firefox is now the default web browser in Fedora Core Linux and Thunderbird is included as an email client. For Thunderbird go to "Applications" > "Internet" > "Thunderbird Email".

nVidia:

  • Log in as root.
  • Open the terminal and type:
    gedit /etc/X11/xorg.conf
    In the "module" section comment out (put a "#" in front of) load "dri" so that it reads # load "dri". In the "device" section change "nv" to "nvidia".
    Section "Module"
    	Load  "dbe"
    	Load  "extmod"
    	Load  "fbdevhw"
    	Load  "glx"
    	Load  "record"
    	Load  "freetype"
    	Load  "type1"
    #	Load  "dri"
    EndSection
    
    Section "Device"
    	Identifier  "Videocard0"
    	Driver      "nvidia"
    	VendorName  "Videocard vendor"
    	BoardName   "NVIDIA GeForce 4 MX (generic)"
    EndSection
    
    Click the "save" icon and exit gedit.
  • With the root terminal still open type:
    gedit /etc/rc.local
    At the end of the file add the line:
    /sbin/modprobe nvidia
    Add a carriage return as well if necessary to insure that there is a blank line at the bottom of the file. Click on the "save" icon and exit gedit. Close the terminal.
  • Click "Actions" > "Log Out" > "Restart the computer" and click "ok". When Fedora reboots it will try to load the nVidia driver (which has been downloaded but not yet installed). You will see the command line login prompt 3 or 4 times as it continues to try to load the driver and then you will see a text mode screen with the message "...cannot start the x server...". Answer "no" (right arrow and enter) to the question "would you like to view the x server output?". Answer "no" to the question "would you like me to run the x configuration program?". Answer "ok" to "...disable the x server for now...". You will then be presented with a text mode command line login prompt. Log in as root, type "ls" and hit enter. You should see the nVidia driver file that you downloaded previously. Type:
    sh NVIDIA-Linux-x86-1.0-6629-pkg1.run
    Hit enter. You will be presented with a text mode nVidia screen. Left arrow to "accept" and hit enter. Answer "yes" to "download...". Answer "ok" to "no matching kernel...". Answer "ok" to "warning - your kernel was...". nVidia will build and install a kernel module for the nVidia driver. When the "...complete" screen appears hit enter on "ok", then type "reboot" and hit enter. You should see the nVidia splash screen when Fedora reboots indicating that the installation was successful.

True Type Fonts:

  • Click on the terminal icon. This will open the terminal. Type:
    su
    Hit enter, type your root password and hit enter. (This gives you root privileges in the terminal even though you are still in the default user's home directory. Type:
    rpm -ivh *.rpm
    Hit enter. Wait for the installation to complete. Type:
    rm *.rpm
    Hit enter. Type "y" and hit enter. (This deletes the downloaded RPM file in your home directory, however the program is already installed into your system.) Close the terminal. Reboot your machine.

Java:

  • Open the terminal. Type:
    su
    Hit enter. Type your root password. Hit enter. Type:
    sh *.bin
    Hold the enter key down until the yes/no line appears to allow you to agree to the license agreement. Type "yes" and hit enter. Type:
    rpm -ivh *.rpm
    Hit enter. Wait for the installation to complete. Type:
    rm *.rpm
    Hit enter. Type "y" and hit enter. Type:
    rm *.bin
    Hit enter. Type "y" and hit enter. Type:
    su -
    Hit enter. This gives you root privileges and also puts you in the /root directory. Type:
    ln -s /usr/java/j2re1.4.2_06/plugin/i386/ns610-gcc32/libjavaplugin_oji.so /usr/lib/mozilla/plugins/libjavaplugin_oji.so
    Hit enter. Close the terminal. Close and restart Firefox to enable the java plugin. You could go to http://rochester.speedtest.frontiernet.net/ and click the start button to test your java plugin installation.
  • If you wish to run Java applications such as JAlbum or Azureus for bittorrent and you have installed the Sun J2SE JRE as described above, open a terminal and type:
    su -
    Hit enter. Type your root password. Hit enter. Type:
    gedit /etc/profile.d/java.sh
    Hit enter. In gedit type these lines:
    export J2RE_HOME=/usr/java/j2re1.4.2_06
    export PATH=$J2RE_HOME/bin:$PATH
    Be sure to enter a carriage return after these lines. Click on the "save" icon in gedit and exit gedit. In the terminal (which should still be open) type:
    source /etc/profile.d/java.sh
    Hit enter. Type:
    which java
    Hit enter. You should see:
    /usr/java/j2re1.4.2_06/bin/java
    Type:
    alternatives --install /usr/bin/java java /usr/java/j2re1.4.2_06/bin/java 3
    Hit enter. Type:
    alternatives --config java
    Hit enter. You should see:
    There are 3 programs which provide 'java'.
    
      Selection    Command
    -----------------------------------------------
       1           /usr/share/java/libgcj-java-placeholder.sh
    *+ 2           /usr/lib/jvm/jre-1.4.2-gcj/bin/java
       3           /usr/java/j2re1.4.2_06/bin/java
    
    Enter to keep the current selection[+], or type selection number:
    
    Type:
    3
    Hit enter. Type:
    /usr/sbin/alternatives --display java
    Hit enter. You should see:
    java - status is manual.
     link currently points to /usr/java/j2re1.4.2_06/bin/java
    ...
    You should now be able to install and run Java applications.

Flash:

  • Open the terminal. Type:
    su
    Hit enter. Type your root password. Hit enter. Type:
    rpm -ivh *.rpm
    Hit enter. Click "accept" in the license agreement windows that appears. Wait for the installation to complete. Type:
    rm *.rpm
    Hit enter. Type "y" and hit enter. Close the terminal. Close and restart Firefox to enable the flash plugin, go to http://www.argosycruises.com/flash.cfm to test your flash plugin installation.

RealPlayer:

  • Open the terminal. Type:
    su
    Hit enter. Type your root password. Hit enter. Type:
    rpm -ivh *.rpm
    Hit enter. Wait for the installation to complete. Type:
    rm *.rpm
    Hit enter. Type "y" and hit enter. Close the terminal. Close and restart Firefox to enable the RealPlayer plugin, go to http://www.npr.org/, click on "NPR Program Stream", select "Listen to NPR audio with the Real player" to test your RealPlayer plugin installation.
  • Note: If you have already installed the mplayer plugin you may have to go to "Edit" > "Preferences" > "Downloads" > "Plug-Ins..." in Firefox and disable the "SMI" type (click on the check mark) in order to allow the RealPlayer plugin to become the default player for the "SMIL" type of file.

Yum:

  • Open the terminal. Type:
    su -
    Hit enter. Type your root password. Hit enter. Type:
    gedit /etc/yum.repos.d/dag.repo
    Type the following in gedit:
    [dag]
    name=Dag RPM Repository for Fedora Core
    baseurl=http://apt.sw.be/fedora/$releasever/en/$basearch/dag/
    enabled=1
    #gpgcheck=1
    
    Be sure there is a carriage return (blank line) at the bottom of the file. Click the "save" icon in gedit and then close gedit. Type the following in the root terminal:
    gedit /etc/yum.repos.d/freshrpms.repo
    Type the following in gedit:
    [core]
    name=FreshRPMS-Core
    baseurl=http://ayo.freshrpms.net/fedora/linux/$releasever/$basearch/core
    enabled=1
    #gpgcheck=1
    #[extras]
    #name=Fedora Linux $releasever - $basearch - extras
    #baseurl=http://ayo.freshrpms.net/fedora/linux/$releasever/$basearch/extras
    #enabled=0
    #gpgcheck=1
    #[alternatives]
    #name=Fedora Linux $releasever - $basearch - alternatives
    #baseurl=http://ayo.freshrpms.net/fedora/linux/$releasever/$basearch/alternatives
    #enabled=0
    #gpgcheck=1
    [updates]
    name=FreshRPMS-Updates
    baseurl=http://ayo.freshrpms.net/fedora/linux/$releasever/$basearch/updates
    enabled=1
    #gpgcheck=1
    [freshrpms]
    name=FreshRPMS-Fresh
    baseurl=http://ayo.freshrpms.net/fedora/linux/$releasever/$basearch/freshrpms
    enabled=1
    #gpgcheck=1
    
    Be sure there is a carriage return (blank line) at the bottom of the file. Click the "save" icon in gedit and then close gedit.
  • While still in the root terminal type:
    rpm --import http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
    Hit enter. Type:
    rpm --import http://freshrpms.net/packages/RPM-GPG-KEY.txt
    Hit enter. Type:
    rpm --import /usr/share/doc/fedora-release-*/*GPG-KEY*
    Hit enter. You have just imported the GPG keys for your yum repositories. Type:
    yum update
    Hit enter. Your system will be updated. Answer "y" for "yes" in the appropriate places. Reboot.

Apt and Synaptic:

  • If you have enabled the repositories listed above for Yum, simply open a terminal and type:
    su -
    Hit enter. Type your root password. Hit enter. Type:
    yum install apt
    Hit enter. Wait for the installation to complete. Type:
    yum install synaptic
    Hit enter. Wait for the installation to complete. Type:
    gedit /etc/apt/sources.list.d/dag.list
    If there is nothing in this file (blank page), type the following in gedit:
    # Name: Dag RPM Repository
    # URL: http://dag.wieers.com/apt/
    
    ### Dag RPM Repository for Fedora Core
    rpm http://apt.sw.be fedora/3/en/i386 dag
    
    Be sure there is a carriage return (blank line) at the bottom of the file. Click the "save" icon in gedit and then close gedit. While still in the root terminal, type:
    gedit /etc/apt/sources.list.d/freshrpms.list
    If there is nothing in this file (blank page), type the following in gedit:
    # Name: FreshRPMS
    # URL: http://ayo.freshrpms.net/
    
    ### Fedora Core
    rpm http://ayo.freshrpms.net fedora/linux/3/i386 freshrpms
    
    Be sure there is a carriage return (blank line) at the bottom of the file. Click the "save" icon in gedit and then close gedit. While still in the root terminal, type:
    gedit /etc/apt/sources.list.d/newrpms.list
    If there is nothing in this file (blank page), type the following in gedit:
    # Name: NewRPMS
    # URL: http://newrpms.sunsite.dk/
    
    ### Fedora Core
    rpm http://newrpms.sunsite.dk/apt/ redhat/en/i386/fc3 newrpms
    
    Be sure there is a carriage return (blank line) at the bottom of the file. Click the "save" icon in gedit and then close gedit. While still in the root terminal, type:
    gedit /etc/apt/sources.list.d/dries.list
    If there is nothing in this file (blank page), type the following in gedit:
    # Name: Dries RPM Repository
    # URL: http://dries.studentenweb.org/apt/
    
    ### Fedora Core
    rpm http://apt.sw.be dries/fedora/fc3/i386 dries
    
    Be sure there is a carriage return (blank line) at the bottom of the file. Click the "save" icon in gedit and then close gedit. While still in the root terminal, type:
    rpm --import http://dries.studentenweb.org/ayo/RPM-GPG-KEY.dries.txt
    Hit enter. Type:
    rpm --import http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
    Hit enter. Type:
    rpm --import http://freshrpms.net/packages/RPM-GPG-KEY.txt
    Hit enter. Type:
    rpm --import http://newrpms.sunsite.dk/gpg-pubkey-newrpms.txt
    Hit enter. You have just imported the GPG keys for your apt repositories. Type:
    apt-get update
    Your apt repository package list will be updated. Close the terminal. Reboot.
  • Note: Why don't we include livna.org or fedora.us in our apt installation? Read this.
  • After you have rebooted go to "Applications" > "System Settings" > "Synaptic package manager". You will be asked to enter your root password. In Synaptic click on the "reload" icon to update your package list. You may now add programs to your Fedora Core installation by scrolling down the package list and checking appropriate check boxes for packages that you wish to add. When you are finished selecting them, click "apply".

Acrobat Reader:

  • Go to "Applications" > "System Settings" > "Synaptic package manager". You will be asked to enter your root password. In Synaptic click on the "reload" icon to update your package list. Scroll down the "all" list until you come to "acroread" and click its check box, then click "apply". Acrobat reader will be installed.

MPlayer, xmms, Rhythmbox, and Xine - all you need for multimedia:

  • Go to "Applications" > "System Settings" > "Synaptic package manager". You will be asked to enter your root password. In Synaptic click on the "reload" icon to update your package list. Scroll down the "all" list and click in the check boxes for "gstreamer", "gstreamer-devel", "gstreamer-plugins", "gstreamer-plugins-devel", "gstreamer-plugins-extra-audio", "gstreamer-tools", "mplayer", "mplayer-fonts", "mplayerplug-in", "mplayer-skins", "xine", "xine-lib", "xine-lib-devel", "xine-skins", and "xmms-mp3". Then click "apply".
  • Open "Applications" > "Sound & Video" > "Audio Player". (This is xmms.) Click on the upper left corner down arrow. Go to "Options" > "Preferences". Select "MPEG Layer 1/2/3 Player..." and make sure that "Enable plugin" check box is checked. You may now play mp3s and streaming mp3 files with xmms (Audio Player) or if you like Rhythmbox (Music Player) you may use it to play your mp3 library. You could go to http://wholewheatradio.org/ to test your xmms mp3 installation. (The executable is /usr/bin/xmms.)
  • Open the terminal. Type:
    su
    Hit enter. Type your root password. Hit enter. Type:
    mkdir temp
    Hit enter. Type:
    mv *.bz2 temp
    Hit enter. Type:
    cd temp
    Hit enter. Type:
    tar xvfj *.tar.bz2
    Hit enter. Type:
    cd all-20041107
    Hit enter. Type:
    mkdir /usr/local/lib/codecs/
    Hit enter. Type:
    cp *.* /usr/local/lib/codecs/
    Hit enter. Type:
    cd /usr/local/lib/codecs/
    Hit enter. Type:
    chmod 744 /usr/local/lib/codecs/*
    Hit enter. Type:
    ln -s /usr/local/lib/codecs /usr/lib/win32
    The codecs for MPlayer and Xine are now installed.

NTFS support (for mounting your Windows partition):

  • Open the terminal. Type:
    su
    Hit enter. Type your root password. Hit enter. Type:
    uname -r -p
    This will output your kernel version and processor type.
  • With the root terminal still open type:
    rpm -ivh *.rpm
    Hit enter. Wait for the installation to complete. Type:
    rm *.rpm
    Hit enter. Type "y" and hit enter. Type:
    su -
    Hit enter. Type:
    mkdir /mnt/windows
    Hit enter. Type:
    fdisk -l /dev/hda
    Hit enter. This will output your HPFS/NTFS partition identifier. Type:
    gedit /etc/fstab
    Type the following in gedit:
    /dev/hda1	/mnt/windows	ntfs	ro,defaults,umask=0222	0 0
    If your partition identifier is not "/dev/hda1" substitute the correct characters. Click the "save" icon in gedit and exit gedit. Close the terminal. Reboot. Your Windows partition should now be available in the file browser under "/mnt/windows".

Bittorrent and bittorrent-gui:

  • Open the terminal. Type:
    su
    Hit enter. Type your root password. Hit enter. Type:
    rpm -Uvh wxPythonGTK2-2.5.2.8-1.fc3.i386.rpm
    Hit enter. Type:
    rpm -Uvh BitTorrent-3.4.2-3.fc3.noarch.rpm
    Hit enter. Type:
    rpm -Uvh BitTorrent-gui-3.4.2-3.fc3.noarch.rpm
    Hit enter. Type:
    su -
    Hit enter. Type:
    /sbin/iptables -I INPUT -p tcp --destination-port 6881:6889 -j ACCEPT
    Hit enter. This adds a rule to open TCP ports 6881 through 6999 in your firewall. These ports are required by Bittorent. Type:
    /sbin/iptables-save > /etc/sysconfig/iptables
    Hit enter. This saves the rule. Type:
    iptables -L
    Hit enter. This will output your iptables file so you can see if the rule was saved. Type:
    gedit /etc/mailcap
    Add these lines (and a carriage return) to /etc/mailcap:
    # bittorrent
    application/x-bittorrent; /usr/bin/btdownloadgui.py %s; test=test -n "$DISPLAY"
    
    This will allow you to download ".torrent" files with Firefox.

Azureus for bittorrent:

  • Open the terminal. Type:
    su -
    Hit enter. Type your root password. Hit enter. If you have not already opened ports for bittorrent as described above Type:
    /sbin/iptables -I INPUT -p tcp --destination-port 6881:6889 -j ACCEPT
    Hit enter. This adds a rule to open TCP ports 6881 through 6999 in your firewall. These ports are required by bittorent and/or Azureus. Type:
    /sbin/iptables-save > /etc/sysconfig/iptables
    Hit enter. This saves the rule. Type:
    iptables -L
    Hit enter. This will output your iptables file so you can see if the rule was saved. Type:
    cd /home/your_user_name
    Hit enter. Type:
    tar xvfj *.tar.bz2
    Hit enter. Type:
    rm *.bz2
    Hit enter. Type "y" and hit enter. Type:
    cd azureus
    Hit enter. Type:
    ./azureus
    Hit enter. Azureus will open. Configure your preferences in the dialog box presented and update the plugin if asked. When you click on a ".torrent" file in Firefox you will be presented with a dialog box. Click the radio button "open with" and click the checkbox "Do this automatically for files like this form now on", then click the "browse" button in the dialog box and browse to "home" > "azureus" and click on "azureus". Click "open". Click "OK". This will allow you to download ".torrent" files from within Firefox. These files are downloaded by default into the /home/your_user_name/.Azureus/downloads folder. You will have to click on "View" > "Show hidden files" in "Applications" > "File Browser" to get to them in the file browser.

Web Server:

  • Subscribe to a service such as http://www.easydns.com/ to register a new domain name (such as your-name.org) and to have their DNS service map your computer's IP address to your new registered domain name. (The command "ifconfig" at the root prompt will output your IP address.) If you have a "dynamic" (changeable) IP address you can use their dynamic DNS service.
  • Open the terminal. Type:
    su -
    Hit enter. Type your root password. Hit enter. Type:
    gedit /etc/httpd/conf/httpd.conf
    Hit enter. In gedit scroll down to the "ServerAdmin" section and enter your email address instead of "root@localhost". Scroll down to the "#ServerName" section and uncomment it (take out the "#"). Then enter the registered DNS name of your web site ("whatever.com") or your server's IP address instead of "new.host.name". (If you don't know your IP address type "ifconfig" at the root prompt.) Scroll down and change "UseCanonicalName Off" to "UseCanonicalName On". Scroll down to the "Options" line and change "Options Indexes FollowSymLinks" to "Options Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews". Change "AllowOverride None" to "AllowOverride Options FileInfo AuthConfig Limit" in case you want to use .htaccess files in any of your web subdirectories. Change "DirectoryIndex index.html index.html.var" to "DirectoryIndex index.html index.html.var index.shtml index.cgi index.php index.phtml index.php3 index.htm home.html welcome.html". Under the "AddType application/x-compress .Z" and "AddType application/x-gzip .gz .tgz" lines add the line: "AddType application/x-httpd-php .php .phps .php3 .phtml .html .htm .shtml .fds". Uncomment the line "#AddHandler cgi-script .cgi" and add ".pl" so that it reads "AddHandler cgi-script .cgi .pl". Click on the "save" icon in gedit and exit gedit.
  • If you have a favicon.ico copy it to /var/www/html while still logged in as root (cp favicon.ico /var/www/html).
  • Go to "Applications" > "System Settings" > "Server Settings" > "Services". Type in your root password in the dialog box that appears and click on "OK". Scroll down the list and check the check box for "httpd". Click on the "save" icon in the Service Configuration window and then close the window. Go to "Applications" > "System Settings" > "Security Level" and make sure the check box is checked for "WWW (HTTP)" in the "Trusted services" pane. Reboot your machine.
  • Open Firefox and type "http://localhost/" in the URL window and hit enter. You should see the default Apache/Fedora Core test page. Type your server's IP address in the URL window and hit enter. You should see the test page again. Type the registered DNS name of your web site ("whatever.com") in the URL window and hit enter. You should see the test page yet again.
  • While still logged in as root copy your web site index.html and any other HTTP content you may have to /var/www/html. You are now serving web pages from your Fedora Core web server. You will find your server log files in /etc/httpd/logs and you will be able to view them while logged in as root.

PHP and Perl:

  • PHP and Perl are available in Fedora Core 3 because we have done the "everything" installation previously. If you have enabled the Apache web server (see above) you can test your PHP and Perl installations by doing the following: Open the terminal. Type:
    su -
    Hit enter. Type your root password. Hit enter. Type:
    gedit /var/www/html/phpinfo.php
    In gedit type:
    <?php phpinfo();?>
    Click the "save" icon in gedit and close gedit. While still in the root terminal type:
    gedit /var/www/html/printenv.pl
    In gedit type:
    #!/usr/bin/perl
    ##
    ##  printenv -- demo CGI program which just prints its environment
    ##
    
    print "Content-type: text/plain\n\n";
    foreach $var (sort(keys(%ENV))) {
        $val = $ENV{$var};
        $val =~ s|\n|\\n|g;
        $val =~ s|"|\\"|g;
        print "${var}=\"${val}\"\n";
    }
    
    Click the "save" icon in gedit and close gedit. Type:
    chmod 755 /var/www/html/printenv.pl phpinfo.php
    Now when you open these files from your web server (http://whatever.com/phpinfo.php and http://whatever.com/printenv.pl) you will be able to prove the functionality of your PHP and Perl installations.
  • Special note on configuring sendmail for PHP using your email provider's SMTP (simple mail transport protocol): Your /etc/php.ini file uses sendmail as the default transport agent for sending email from PHP applications ("sendmail_path = /usr/sbin/sendmail -t -i"). The following quote is from Fedora Core 3 Release Notes: "By default, the Sendmail mail transport agent (MTA) does not accept network connections from any host other than the local computer. If you want to configure Sendmail as a server for other clients, you must edit /etc/mail/sendmail.mc and change the DAEMON_OPTIONS line to also listen on network devices (or comment out this option entirely using the dnl comment delimiter). You must then regenerate /etc/mail/sendmail.cf by running the following command (as root): 'make -C /etc/mail'. Note that you must have the sendmail-cf package installed for this to work." In order to accomplish this, edit "/etc/hosts" and add the line "your.ip.address whatever.org whatever" where "your.ip.address" is the IP address of your web server, "whatever.org" is the registered DNS name of your web site (your canonical domain name), and "whatever" is your short domain name (the characters before the dot). Separate the IP address from the domain name with a couple of tabs. Edit "/etc/sysconfig/network" and change "localhost.localdomain" to "whatever.org" where "whatever.org" is the registered DNS name of your web site (your canonical domain name). Reboot. Edit "/etc/mail/local-host-names" and include your domain name. Edit "/etc/mail/sendmail.mc" and change "dnl define(`SMART_HOST',`smtp.your.provider')dnl" to "define(`SMART_HOST',`smtp.your.provider')dnl" where "smtp.your.provider" is the smtp host that you use to send mail from your email client. Also change "DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl" to "dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl". Also change "dnl MASQUERADE_AS(`mydomain.com')dnl" to "MASQUERADE_AS(`your.provider.com')dnl" where "your.provider.com" is the host that you use to send mail from your email client (the characters after the "@"). Add these lines (near the bottom of /etc/mail/sendmail.mc but above "MAILER"): "FEATURE(`genericstable',`hash -o /etc/mail/genericstable.db')dnl" and "GENERICS_DOMAIN_FILE(`/etc/mail/generics-domains')dnl". Edit or create if required: "/etc/mail/generics-domains". Include in "/etc/mail/generics-domains" your canonical domain name. (Be sure to add a carriage return.) Edit or create if required: "/etc/mail/genericstable". Include in "/etc/mail/genericstable" the line:"username mailusername@your.provider.com" where "username" is your non-root Fedora user name and "mailusername@your.provider.com" is your email address that you use with your email client. (Be sure to add a carriage return.) As root execute the command: "make -C /etc/mail". This will regenerate "/etc/mail/sendmail.cf". Reboot or start (or restart) sendmail from "Applications" > "System Settings" > "Server Settings" > "Services". (See http://www.linuxhomenetworking.com/linux-hn/sendmail.htm.)

MySQL:

  • MySQL version 3.23.58 is available in Fedora Core 3 because we have done the "everything" installation previously. Go to "Applications" > "System Settings" > "Server Settings" > "Services". Type in your root password in the dialog box that appears and click on "OK". Scroll down the list and check the check box for "mysqld". Click on the "save" icon in the Service Configuration window and then close the window. Reboot your machine.
  • Open the terminal. Type:
    su -
    Hit enter. Type your root password. Hit enter. Type:
    gedit /etc/my.cnf
    Hit enter. In the mysqld section of my.cnf add the line:
    skip-innodb
    Your my.cnf should now look something like this:
    [mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    skip-innodb
    
    [mysql.server]
    user=mysql
    basedir=/var/lib
    
    [safe_mysqld]
    err-log=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid
    
    Click the "save" icon in gedit and close gedit. While still in the root terminal type:
    mysql -u root
    Hit enter. You will see the mysql> query prompt. Type:
    select user, host, password, select_priv, update_priv, delete_priv, insert_priv from mysql.user;
    Hit enter. You will see something like this:
    +------+------------------------+----------+-------------+-------------+-------------+-------------+
    | user | host                   | password | select_priv | update_priv | delete_priv | insert_priv |
    +------+------------------------+----------+-------------+-------------+-------------+-------------+
    | root | localhost              |          | Y           | Y           | Y           | Y           |
    | root | x1-6-00-04-5a-5e-ac-83 |          | Y           | Y           | Y           | Y           |
    |      | localhost              |          | N           | N           | N           | N           |
    |      | x1-6-00-04-5a-5e-ac-83 |          | N           | N           | N           | N           |
    +------+------------------------+----------+-------------+-------------+-------------+-------------+
    4 rows in set (0.17 sec)
    
    mysql>
    
    Type:
    set password for 'root'@'localhost' = password ('newpassword');
    where "newpassword" is the password that you want to use for the root MySQL super user. Hit enter. Type:
    set password for 'root'@'host' = password ('newpassword');
    where "host" is the name of your host as reported in the "host" column above and "newpassword" is the password that you want to use for the root MySQL super user. Hit enter. Type:
    select user, host, password, select_priv, update_priv, delete_priv, insert_priv from mysql.user;
    Hit enter. You will see something like this with your password hash-encrypted in the "password" column:
    +------+------------------------+------------------+-------------+-------------+-------------+-------------+
    | user | host                   | password         | select_priv | update_priv | delete_priv | insert_priv |
    +------+------------------------+------------------+-------------+-------------+-------------+-------------+
    | root | localhost              | 1e36745e3c0f99b0 | Y           | Y           | Y           | Y           |
    | root | x1-6-00-04-5a-5e-ac-83 | 1e36745e3c0f99b0 | Y           | Y           | Y           | Y           |
    |      | localhost              |                  | N           | N           | N           | N           |
    |      | x1-6-00-04-5a-5e-ac-83 |                  | N           | N           | N           | N           |
    +------+------------------------+------------------+-------------+-------------+-------------+-------------+
    4 rows in set (0.00 sec)
    
    mysql>
    
    Type:
    exit
    Close the terminal. Reboot your machine. Open a terminal. Type:
    su -
    Hit enter. Type your root password. Hit enter. Type:
    mysql -u root -p
    Hit enter. MySQL should ask for your MySQL super user password. Type it in. Hit enter. Type:
    exit
    You have successfully set up MySQL.

phpMyAdmin:

  • Open a terminal. Type:
    su
    Hit enter. Type your root password. Hit enter. Type:
    mv *.tar.bz2 /var/www/html
    Hit enter. Type:
    cd /var/www/html
    Hit enter. Type:
    bzip2 -dc *.tar.bz2 | tar -xvf -
    Hit enter. Type:
    mv phpMyAdmin-2.6.0-pl3 phpmyadmin
    Hit enter. Type:
    su -
    Hit enter. Type:
    gedit /var/www/html/phpmyadmin/config.inc.php
    In /var/www/html/phpmyadmin/config.inc.php change "$cfg['PmaAbsoluteUri'] = '';" to "$cfg['PmaAbsoluteUri'] = ' http://whatever.com/phpmyadmin/';", change "$cfg['blowfish_secret'] = ''; to "$cfg['blowfish_secret'] = 'passphrase';" where "passphrase" is some arbitrary string of characters that the blowfish algorithm will use to encrypt your password when using cookie type authentication. Under "Server(s) configuration" change "$cfg['Servers'][$i]['auth_type'] = 'config';" to "$cfg['Servers'][$i]['auth_type'] = 'cookie';". Click on the "save" icon in gedit and close gedit. Open http://whatever.com/phpmyadmin/ in Firefox (where "whatever.com" is your web site). Type "root" in the "Username:" box and your MySQL super user password in the "Password:" box. Click the "Login" button. You should see the " Welcome to phpMyAdmin" web page. Open a terminal. Type:
    su -
    Hit enter. Type your root password. Hit enter. Type:
    mysql -u root -p
    Type in your MySQL super user password. Hit enter. For MySQL version 3.23.58 type:
    GRANT USAGE ON mysql.* TO 'pma'@'localhost' IDENTIFIED BY 'pmapassword';
    GRANT SELECT (
        Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv,
        Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv,
        File_priv, Grant_priv, References_priv, Index_priv, Alter_priv
        ) ON mysql.user TO 'pma'@'localhost';
    GRANT SELECT ON mysql.db TO 'pma'@'localhost';
    GRANT SELECT ON mysql.host TO 'pma'@'localhost';
    GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv)
        ON mysql.tables_priv TO 'pma'@'localhost';
    GRANT SELECT, INSERT, UPDATE, DELETE ON phpmyadmin.* TO 'pma'@'localhost';
    
    where "pmapassword" is the password for the pma user that you select for the special "controluser" that has only the SELECT privilege on the mysql.user (all columns except "Password"), mysql.db (all columns), mysql.host (all columns) and mysql.tables_priv (all columns except "Grantor" & "Timestamp") tables. Hit enter. Hit enter. Open Firefox, go to http://whatever.org/phpmyadmin/scripts/create_tables.sql. (Substitute "whatever.org" for your web site registered DNS name or IP address.) Click "edit" > "select all", click "edit" > "copy", go back to the terminal and click "edit" > "paste". Hit enter. The entire query should be executed at the "mysql>" prompt. When the query finishes type "exit" at the mysql> prompt. Type:
    gedit /var/www/html/phpmyadmin/config.inc.php
    In /var/www/html/phpmyadmin/config.inc.php change "$cfg['Servers'][$i]['controluser'] = '';" to "$cfg['Servers'][$i]['controluser'] = 'pma';", change "$cfg['Servers'][$i]['controlpass'] = '';" to "$cfg['Servers'][$i]['controlpass'] = 'pmapassword';" where "pmapassword" is the password for the pma user that you selected earlier, change "$cfg['Servers'][$i]['pmadb'] = '';" to "$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';", change "$cfg['Servers'][$i]['bookmarktable'] = '';" to "$cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';", change "$cfg['Servers'][$i]['relation'] = '';" to "$cfg['Servers'][$i]['relation'] = 'pma_relation';", change "$cfg['Servers'][$i]['table_info'] = '';" to "$cfg['Servers'][$i]['table_info'] = 'pma_table_info';", change "$cfg['Servers'][$i]['table_coords'] = '';" to "$cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';", change "$cfg['Servers'][$i]['pdf_pages'] = '';" to "$cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';", change "$cfg['Servers'][$i]['column_info'] = '';" to "$cfg['Servers'][$i]['column_info'] = 'pma_column_info';", change "$cfg['Servers'][$i]['history'] = '';" to "$cfg['Servers'][$i]['history'] = 'pma_history';". Click on the "save" icon in gedit and close gedit. Close the terminal. Open Firefox and go to http://whatever.com/phpmyadmin/ where "whatever.com" is your web site registered DNS name or IP address. Log into phpMyAdmin as root. Click on the down arrow in the "Database:" selection dialog box in the left column. You should see the "mysql", "phpmyadmin", and "test" databases listed. You may delete ("drop") the "test" database if you wish. You have now successfully configured phpMyAdmin.

Resources: