Linux Box — Rev

Howard Gibson

2026-04-15

Contents

 1 Introduction
  1.1 Objective
  1.2 Copyright
  1.3 Why GNU/Linux?
  1.4 Summary
   1.4.1 Installation
   1.4.2 DVDs
   1.4.3 Gnome 3 and 4
   1.4.4 Wayland and X11R6
   1.4.5 SElinux
   1.4.6 MBR and GPT Formatted Disks
 2 Hardware
  2.1 Motherboard
  2.2 CPU
  2.3 Memory
  2.4 Networking
  2.5 Hard Drives
  2.6 External Drives
  2.7 Interfaces
  2.8 Case
  2.9 Power Supply
  2.10 CD DVD and Blu-ray
  2.11 SATA Controller
  2.12 Sound Card
  2.13 Modem
  2.14 Keyboard and Mouse
  2.15 Video Card
  2.16 Monitors
  2.17 Monitor Cables
  2.18 Scanner
 3 Installation
  3.1 Planning
   3.1.1 Partitioning
   3.1.2 Security
   3.1.3 Backups
  3.2 /usr/local
  3.3 Text Editing
  3.4 Upgrading Fedora
  3.5 Root Access
  3.6 Install
  3.7 Booting for the first time
  3.8 Firewall
  3.9 sshd
  3.10 “The system will suspend now”
  3.11 Updates
  3.12 Disk Configuration
  3.13 Apache (httpd)
  3.14 Cron
  3.15 Other Hard Drives
  3.16 Extra Software
   3.16.1 More Software
  3.17 Not Free Software
  3.18 /opt
  3.19 Interesting stuff I have selected in the past
  3.20 Window Managers
   3.20.1 Gnome 3 and 4
   3.20.2 KDE
   3.20.3 XFCE
   3.20.4 FVWM
   3.20.5 LXDE
   3.20.6 Cinnamon
  3.21 Login Window (Display Managers)
   3.21.1 GDM Login (Preferred)
   3.21.2 SDDM Login (If GDM doesn’t work)
  3.22 NFS
  3.23 Fortune Cookie
  3.24 Development Tools
  3.25 Services
  3.26 Networking
  3.27 Games
  3.28 Multimedia
  3.29 Printer Configuration
  3.30 Scanner
  3.31 Modem
  3.32 /usr/local/src
 A Installing Fedora on New Hard Drive
 B Blivet Installer
 C Checking mysterious hard drives
 D Fedora Networking
 E Fedora Partitioning
 F Sudo
 G libc5
 H Disasters
 I Setting Up New SCSI Devices
 J Xen

List of Figures

1 Virtual Windows on FVWM
2 My SSD in its M.2 Slot
3 Disk Space – 1 Terabyte

1 Introduction

1.1 Objective

The OS is Fedora 43. I downloaded the DVD version from Fedora’s website, 2026-02-21 The installation was done 2026-04-12, as an upgrade. My primary OS device is a 1TB solid state drive (SSD).

1.2 Copyright

This document is copyright © 2026 by Howard Gibson. You may post this on web pages and bulletin boards free of charge. All other rights are reserved.

1.3 Why GNU/Linux?

GNU/Linux is Free Software. Your computer should not be encumbered by copyrights and Digital Rights Management (DRM). Proprietary software publishers are trying so hard to prevent unathorized copying that they can prevent you from installing and using copies you purchased, and are authorized to use. Also, if you cannot run the application you used to create your data, you don’t own your data!

GNU/Linux is not hard to install on most computers. The latest “bleeding edge” video and sound cards may give you trouble. If you are buying a new computer, you should do some research on the hardware. If your computer is older, GNU/Linux should have all the drivers you need. You need to research GNU/Linux support on printers and scanners. Not everything works.

A basic GNU/Linux install will include some very good graphics programs, particularly GIMP, a good substitute for Adobe Photoshop. Just about every programming tool is available for GNU/Linux, except for the proprietary Microsoft ones like Visual Basic and C#.

GNU/Linux can run efficiently on older, slower computers, because you can select smaller, faster user interfaces and applications. Install the window managers XFCE and LXDE. Libre Office is a credible alternative to Microsoft Office because it is just about as bloated as Microsoft Office. Try the word processor AbiWord, and the spreadsheet Gnumeric. You could learn to use LaTeX, whose files are edited with a text editor.1

GNU/Linux is less capable at video games and multimedia. There are lots of Free Software computer games out there, but the best stuff is commercial and proprietary. Few publishers support GNU/Linux.

The big problem with GNU/Linux and multi-media is ideological. Most media formats are proprietary. GNU and Linux are the work of Free Software people, who are reluctant to support proprietary formats. If you spend an hour or so surfing GNU.org, you will understand who you are dealing with. The GNU “Copyleft” really is a copyright. All copyrights are supported by the Free Software community.

GNU/Linux can be made to support multi-media. I watch YouTube and Netflix on my GNU/Linux box. I can watch most commercial DVDs. Don’t expect the Free Software community to knock itself out to help you.

For more information on the thinking behind Free Software, just follow the links. You can get support for most media formats. Just search Google for Linux multi-media support.

Free Software links…

1.4 Summary

1.4.1 Installation

My Fedora 43 install went smoothly.

Fedora does not touch your hard drive in any way until you tell it to start installing. A Fedora Linux DVD is very safe to play with.

Fedora 43 is installable by ordinary mortals, as long as the ordinary mortal has a USB backup drive, they have copied all their files to it, and they don’t mess with their BIOS settings. They will wind up with a system with a web browser, email, an office suite, graphics, and good security.

1.4.2 DVDs

Download install ISO images from the internet. These can be burned to DVDs, or copied to USB sticks. New computers generally do not have DVDs or Blue-rays. There are instructions on the internet for creating bootable USB sticks from ISO files.

If you are interested in Linux, buy one of the books. Christopher Negus’ Linux Bible has a tenth edition as of 2020. I cannot find a Fedora Bible dating any later than 2011. David Clinton and Christopher Negus’ Ubuntu Bible is dated Dec 10, 2025 on Amazon. This may help you determine which GNU/Linux distribution to install.

1.4.3 Gnome 3 and 4

The default GUI with Fedora is Gnome. In the past, Gnome has been a very nice user interface, predictable to anyone coming out of the Windows world. The new Gnomes are very much fancier than Gnome 2, and they introduce all sorts of new paradigms to the user. I don’t like them.

Maybe you will like Gnome 3! Install the window managers XFCE and LXDE. These are small and fast, ideal for older, slower computers with limited RAM. They are predictable to a user coming out of the Windows world.


PIC

Figure 1: Virtual Windows on FVWM

The thing that actually pisses me off about Gnome 3 and 4 is the implementation of virtual windows. This is a convenient feature of most X11 window managers, as shown by the figure. I have set up my FVWM desktop to show nine windows, each selectable by a mouse click. I scatter my applications around these windows. Usually, I drop my email and web browser in one window, my file manager in another window. Each big application I have running gets its own window. I am one click away from whatever it is I want to do. Gnome 3 supports virtual windows, but selection requires several mouse clicks. It is much less convenient. On most window managers, look for something called a pager.

A Microsoft Windows user probably is not aware of virtual windows, and might find Gnome to be okay. The other window managers still are better.

I know nothing about Macs. I have no idea of how all this looks to a Mac user.

1.4.4 Wayland and X11R6

Historically, GNU/Linux’s GUI is the X Window System, also known as X11R6. This is getting less and less support from the software community, and it is being replaced by Gnome’s Wayland.2 This should not affect modern window managers like Gnome. I like the very old FVWM, but it appears that this is being ported to Wayland. My favourite X11 application is the vector graphics program xfig. I hope this survives the transition.

1.4.5 SElinux

SEcurity Enhanced Linux, according to Wikipedia3 …

is a set of kernel modifications and user-space tools that have been added to various Linux distributions. Its architecture strives to separate enforcement of security decisions from the security policy, and streamlines the amount of software involved with security policy enforcement. The key concepts underlying SELinux can be traced to several earlier projects by the United States National Security Agency (NSA).

SElinux seems to be a protection from rogue users. It keeps me from using httpd locally. As of 2024-06-25, it seems to have objected to me using an Epson printer utility call ecblp.

I systematically switch SElinux from “enforcing” to “permissive” There are instructions on the internet on how to do this. It still bitches, but it does not shut down what I am doing. I can always check the logs.

Security is good, I suppose. The command for checking SElinux is sealert.

1.4.6 MBR and GPT Formatted Disks

If you are buying a new hard drive for an old computer, you need to read the following carefully.

New computers are being shipped with GPT formatted hard drives, and motherboards that can use them. GPT is a more advanced disk format. Among other things, it allows many more primary partitions. The old MBR format4 only allows four. For my Fedora 26 install onto my new hard drive, this was a very nasty surprise. My Gigabyte GA-990FXA-UD3 Version 1.1, motherboard5 did not work with my new hard drive, a Western Digital WD2003FZEX-0. The installed system showed the boot screens, then “Loading Operating System ...”, then it stopped. After a week of futile hacking, I bought a new 2TB hard drive, and now everything works! the WD drive now is my /archive drive. It works. I just cannot boot from it.

If you are installing Linux on an old clunker computer and an old drive, you should have no problems. If you are installing Linux on a new computer with a new, GPT capable motherboard and GPT formatted drive, you should have no problems. The fun starts when you replace the hard drive on your old clunker.

If you are buying a new hard drive for your old computer, ask questions at the store. My non-functional drives were from Western Digital. My functional drive is from Seagate.

A crude rule of thumb is that if your “new” machine is working with whatever operating system you have, your Linux install will work.

2 Hardware

This desktop has evolved from something I bought at a local computer shop. I have replaced the motherboard, the hard drive and the case several times now, so this is a fairly new computer.

2.1 Motherboard

MSI B450 Tomahawk. This comes with sound. I failed to notice that it has video connectors. Also, there is no floppy drive connector. I installed this 2022-02-28. My Fedora 33 installation continued to work. I expect no more problems with MBR drives. This one should be GPT compliant.

2.2 CPU

AMD Ryzen 5 3600. This is described on the box as 6 Core, 12 thread processor. 4.2GHz max boost, 3.6GHz base. It needs a “discrete graphics card”. Oh oh.

The processor comes with a heat sink that has a thermal compound on the contact face. If you try to remove the heat sink, the processor comes off with it. When I removed a similar heat sink, I was unable to re-install the processor, and I had to buy this new one.

2.3 Memory

G.Skill “Ripjaws” 8GB DDR4 sticks. This comes as two 8GB sticks with heat sinks. The heat sinks, in addition to dumping heat, provide a nice handhold, nowhere near the static vulnerable live surfaces that you must not touch. My old DDR3 sticks do not work with this board.

2.4 Networking

2.5 Hard Drives


PIC

Figure 2: My SSD in its M.2 Slot

2.6 External Drives

Nothing at the moment.

2.7 Interfaces

Where would we be without lspci?

One of these USB controllers supports USB 3. SATA is built into the motherboard. This machine runs mainly on SATA.

2.8 Case

A Corsair mid-sized ATX case of some sort. I cannot find a part number. It has two external slots for 3-1/2 drives, and controls on the front where my cats cannot step on them. These are hard to find in the stores now. If you have one, take good care of it.

2.9 Power Supply

EVGA “supernova” 750B2. This is a 750W power supply, with cables long enough for the Corsair 780T case.

2.10 CD DVD and Blu-ray

2.11 SATA Controller

Built into the motherboard.

2.12 Sound Card

Built into the motherboard. Audio device: nVidia Corporation High Definition Audio Controller (rev a1)

2.13 Modem

U.S. Robotics external 56K Faxmodem, model number 5686E.

My motherboard no longer has a DE9 serial port. There is a serial port header, and I can apparently get a cable for it.

I am using a cable that converts USB to serial.

2.14 Keyboard and Mouse

My keyboard and mouse came as a set from Logitech, and they are wireless. The part number on the keyboard is K295. I bought this to replace my worn out K350 keyboard and mouse.

I keep a battery charger loaded with batteries. If my keyboard or mouse acts up, I replace the batteries. If I were administering a network at work, there would be no wireless keyboards or mice.

2.15 Video Card

As of 2022-07-23, I have bought an AMD Radeon RX 6500 XT, to replace my Nvidia GeForce GTX650. The Nvidia card worked completely without my installing the Nvidida drivers as I have done in the past. Unfortunately, it was ten years old, and it was crashing my computer.

The AMD card has cable connections for HDMI and DP. My old Nvidia card had a pair of DVI connectors.

Here is what all the initialisms mean…

SVGASuper VGA – VGA means Video Graphics Array
DVI Digital Visual Interface
HDMI High-Definition Multimedia Interface
DP DisplayPort

I failed to notice that my new motherboard has video connections. I assume that AMD card has way better video.

2.16 Monitors

Sumsung SymcMaster P2250 21”. The resolution is 1080P – 1920x1080. The VGA cable it came with was faulty. I use the HDMI cable. It has connections for SVGA and DVI.

Samsug CF391 Curved 32”. The resolution is 1080P – 1920x1080. It has connections for HDMI and DP.

2.17 Monitor Cables

This is surprisingly complicated. When you buy new video cards and monitors, the video connections are different, and you need new cables.

I have an additional constraint. I bring home a work laptop which I plug into my 32” monitor. The laptop has an HDMI connection.

I need…

RevDVItoHDMISamsung 21”
Rev DPtoDP Samsung 32”
WorkDVItoDVI Samsung 32”

On the 32” monitor, I can switch input cables from the menu button.

2.18 Scanner

Epson Perfection V550 Photo. This is supported by xsane, and by Epson’s epsonscan2.

Epson’s iscan is no longer supported, which is unfortunate. It was user friendly, and it worked from inside GIMP.

3 Installation

Before installing, I need to go into my BIOS and make sure my system is set to “UEFI Boot”. “Legacy+UEFI Boot” was a disaster!

3.1 Planning

This machine is a desktop which lives in my computer room at home. I use email, web browers, office suites, graphics, CAD, and I do some coding of HTML, LaTeX and other languages.

3.1.1 Partitioning

PIC

Figure 3: Disk Space – 1 Terabyte

I want to be able to upgrade my system without disturbing my working files, or any applications I may have installed. This mostly affects the way I partition the hard drives. Linux distributions can upgrade themselves by various means. These do not work perfectly. I want to separate the OS from my working files. I want to be able to blow away the OS partition and replace it with a new system, possibly something other than Fedora.7

Another concern is my ability to remove and replace drives. Any drive with the operating system on it cannot be removed. Don’t scatter system files and directories over several drives. My /archive and /backup drives, listed below, are not critical for day to day operations.

My new SSD drive has half the capacity of my old disk drive. This is not a problem. The size of my /home partition is limited by my backup. My off-machine backup media is 50GB Blu-ray. I archive and catalogue my photo collection.

I had problems some time ago with Fedora 18 Their new disk formatting tools could not manage root and swap partitions separated by some other directory you were not willing to format. This was a problem on my laptop. Fortunately, my last install was from scratch, and Fedora formatted the drive, appropriately.

Drive Partition SizeType




/dev/sda/data 2TBATA ST2000DM001…




/dev/sdb/backup 4000GBATA ST4000DM004…




/dev/sdc/archive 2000GBATA WD2003FZEX…




/dev/sdd/ 200GBATA WDC WDS100T2B…
/boot/efi 10GB
swap 50GB
/home 470GB
/usr/local 270GB
Total: 1000GB

I bought the SDD because my /dev/sda drive was acting up. This is now my “info” drive. I don’t trust it.

Once, way back in the prehistoric past, I would have kept a /boot filesystem within the first 512MB of the hard drive. For a long time, /boot partititons were not required. For the new GTP formatted drives, you need a /boot partition again. The install program implies that I need a /boot/efi partition.

3.1.2 Security

I used to connect my desktop to the internet through a 56K modem. I assumed that security was not an issue.

Back in 2003, just as I disconnected from the internet, I noticed that my hard drive was spinning frantically. I was running top, and I noticed that egrep was using up a lot of CPU and memory. I tried to use ps, but permission was denied. I logged in as root and I ran ps again, and I found the following line...

egrep -ri "mastercharge|visa" /home

This command scans through /home and prints out each line in each file containing the sequence “mastercharge” or “visa”. The search is case insensitive.

I had been scanned and cracked. I had to reformat my OS partition and re-install Linux.

There are several morals to this tragic little tale…

3.1.3 Backups

My backup plan is to write the /home partition to a file in the /backup directory, each day. This will be an archive of some kind. Periodically, I will write these backup files to a disk of some sort. With CDs DVDs and Blu-rays, there is no need to write ISO9660 file systems to the CD-ROM. Any type of file can be recovered from disk, as long as you know what you wrote. There are security advantages to being obscure.

My current backup format is either compressed or uncompressed tar. If I keep archiving my photos, my backups fit within the 50GB Blu-Ray.

If I have to compress, I prefer to use gzip. Apparently, bzip2 can lose a corrupt sector, but recover everything downstream of it. If gzip loses a sector, you lose everything downstream. Bzip runs very slowly. It will take a lot of time to recover individual files. I have not had problems with corrupt tar files as far as I can tell.

Recently, I had to clean out my basement. My backup discs migrated to my kitchen for a few days. Back in 2005, I had mistakenly issued a command that searched my drive, and timestamped all my directories (folders). I pulled out an earlier 2005 DVD, and I recovered a bunch of directories which had nothing but files prior to 2005. I have directories going back to 1996! If my twenty year old backup DVD had not worked, I would have tried one of the other backup DVDs. My backups absolutely work.

I have also used dump. I was warned that this backs up the actual filesystem. It you recover one of these backups onto another filesystem, you could be in for a disaster.

Over twenty five plus years, I have done three complete backup recoveries of my primary drive. Once, this was due to my drive failing. The other two times, I was replacing my drive with something bigger and/or faster, and recovering the backup was the convient way to restore everything. The traditional UNIX way to transfer drives is the command dd. Someday, maybe I will learn to use it.

3.2 /usr/local

The /usr/local partition is a traditional feature of UNIX and Linux. This partition is used to install optional software, usually compiled from source code. When the operating system is upgraded or re-istalled, /usr/local is left untouched. A more recent concept is the /opt partition, often used for commercial software. Back in the day, Linux geeks compiled the kernel, and when they wanted to install some new application, they downloaded the source code, and they installed the executables and libraries in /usr/local. As applications get more complex, it gets more and more complicated to debug the Makefiles. Installation programs like dnf and apt-get are able to update stuff they have installed, including your kernel, and any applications you are relying on.

If you are not a dedicated UNIX/Linux geek, you need not bother with /usr/local or /opt. Alternately, you can make the partitions small.

3.3 Text Editing

This document is written mostly with the text editor vim, a version of vi. This is an extremely efficient and productive editor once you learn it, especially if you are a touch typist, like me. It is especially efficient with large documents, since you can navigate by doing the text seaches from the command line. It is the text editor of UNIX and Linux geeks everywhere. Unfortunately, it is mindbogglingly not user friendly.

Linux newbies need to try something else. You need a text editor that runs in a terminal session. You don’t always have the X Window System running when you do administration.

The text editor nano, is available and strongly recommended. You navigate around the text file using the arrow keys, just like you think it should. It has a CTRL key menu at the bottom of the screen.

When you are told to edit configuration files, use nano.

3.4 Upgrading Fedora

This subsection is valid if you already have Fedora, version 21 on, installed. Otherwise, you must follow the instructions, below, to install Fedora.

It is now possible to upgrade any version of Fedora. Docs for this are up on Fedora’s website. I am typing this stuff in as I follow the instructions. I don’t use sudo.

  1. Back up all your data. I don’t need to do this because my system automatically does backups. Probably, you do need to do this.

  2. Update your system:
    $ sudo dnf upgrade --refresh8

  3. Install upgrade plug-in:
    $ sudo dnf install dnf-plugin-system-upgrade

  4. Download packages:
    $ sudo dnf system-upgrade download --refresh --releasever=26
    Note how we specify version 26. There were notes on how to install unstable versions of Fedora, but we don’t want to do that.

This was as far as I got. The process tried to sort out dependencies.

Package Dependency


gnash-1:0.8.10-19.fc23.x86_64 libboost_date_time.so.1.58.0()(64bit)
libkdcraw-15.04.2-2.fc23.x86_64libraw_r.so.10()(64bit)

Maybe if my system was a pristine Free Software machine this would have worked.

3.5 Root Access

On any UNIX OS, there are two ways to access the computer for system administration. You can log in as root, or you can use the command sudo.

Root is the super user. Root has read and write access to everything on the computer. Otherwise, root is a conventional account with password, and a home directory. In Fedora, this is /root. When you launch a terminal and log in as root, your terminal prompt changes from “$” to “#”. When you are logged in as root, you are able to do serious damage to your computer.

To do system administration, you enter the command…

$ su -l
Password:
# nano /etc/passwd

You will be prompted for root’s password. Once you type it in successfully, the prompt will change to “#”, and you will have complete access to everything on your computer. When the “#” prompt is visible, be very, very careful.

The alternative to having a root account is to set your system up for Sudo. There is no root account. To perform system administration tasks, you go…

$ sudo nano /etc/passwd

In this case, you will be prompted for your password. Once you type this in, your terminal has all the powers of a root account. Be very, very careful.

The older Fedoras set up the root account. As of Fedora 29, it’s sudo. Ubuntu and Macs set up Sudo.

In my notes that follow, any line starting with “#” is a command entered as root.

3.6 Install

Boot the Fedora 43 DVD. You get the following menu.

I had already used this media, so I just Started the install.

  1. The boot took quite a while. The Gnome GUI came up, and the DVD kept loading.

  2. The system started up in the Gnome window. There was a Gnome control bar across the top of the screen, and a list of program icons at the bottom. There was a window entitled “Welcome to Fedora” giving me the options either to “Install Fedora…” or to “Not Now”.

  3. There is a cluster of icons on the right-hand side of the control bar. I clicked on this and I verified that I am connected to my wired network. I could have connected to WiFi if I had a WiFi card. 9

  4. The time displayed at the top of the screen is not your local time. It is Greenwich Mean time. Don’t worry about this. The OS knows your time zone, and it will correct for this when you finish the install.

  5. I clicked “Install Fedora Linux…”.

  6. The “Fedora Linux 43 (Workstation Edition) installation” window came up. The title line is “Welcome. Let’s install Fedore now”. I was able to select the language and keyboard. I was connected to the internet, so it correctly guessed that I wanted English (Canada), and a US keyboard.

  7. I hit [Next].

  8. The next title is “Destination”. The window states “No disks selected”. I clicked the option Change Destination.

  9. The “Select Destination” window popped up…

    []ATA ST2000DM001-1ER1 5000c500a2737cd9 (sda)
    2.00 TB disk Currently installed: Fedora Linux 40 for x86_64
    []ATA ST4000DM004-2CV15000c500b005ba1d (sdb)
    4.00 TB disk
    []WDC WD2003FZEX-0 50014ee0af083763 (sdc)
    2.00 TB disk Currently installed: Fedora Linux 40 for x86_64
    []WDC WDS100T2B0B 5001b448b7ae9bfc (sdd)
    1.00 TB disk Currently installed: Fedora Linux 40 for x86_64

    Drive sdd is the solid state drive attached to my M.2 connection. This is my primary OS drive. I clicked on it and hit [Select]. I will mount the other drives later.

  10. The window added the line “How would you like to install?” My choices are…

    I selected Mount point assignment, and I clicked [Next].

  11. The next title is “Manual disk configuration: Mount point mapping”.

    Mount Point Device Reformat



    / (Required) [Select a device] [Y]
    /boot/efi (Required) [Select a device] [N]
    /boot (Recommended)[Select a device] [N]
    [Add mount]

    I don’t want to bother with a boot partition. I deleted it by clicking the garbage can icon to the right.

  12. I selected devices for / and /boot/efi. I specified reformat for /boot/efi.

  13. I added the mount points /home, and /usr/local. My disk configuration is as follows…

    Mount Point DeviceReformat



    / (Required) [sdd4] [Y]
    /boot/efi (Required)[sdd1] [Y]
    /home (Custom) [sdd2] [N]
    /usr/local (Custom) [sdd3] [N]
    swap (Custom) [sdd5] [Y]
    [Add mount]

    I clicked [Next].

  14. The “Review and install” title came up. I got the following display…

    Fedora Linux 43 (Workstation Edition)
    English (Canada)
    Mount point assignment
    1.00 TB sdd (ATA WDC WDS100T2B0B 5001b448b7ae9bfc)
    Operating system
    Language
    Installation type
    Storage
    sdd110.0 GBformat as efi /boot/efi
    sdd2470 GBmount /home
    sdd3270 GBmount /usr/local
    sdd4200 GBformat as ext4 /
    sdd550.0 GBformat as swapswap

    At the bottom was a button in which I acknowleged that I understood that some existing data would be erased. I clicked it.

  15. At the window bottom, I clicked [Apply mount point assignment and install]. The time was 3:50pm.

  16. The install on my SSD completed at about 4:05pm. I clicked on [Exit to live desktop].

  17. I rebooted the machine.

  18. When I rebooted, I went into the BIOS and set the primary boot device to a hard drive. My BIOS is password protected. I don’t want unauthorised people booting this thing with their devices.

On older Fedora installs, I was prompted for root’s password, and a user account. It did not happen this time.

3.7 Booting for the first time

The Gnome screen came up. Note how Greenwich Mean Time has been corrected for. Your clock should be correct.

  1. The “Welcome” window comes up. It guesses correctly that I want English (Canada). I hit [Next] at the top right of the window.

  2. The “Typing” window allows me to select the keyboard. It has correctly guessed English (US). I hit [Next].

  3. The “Privacy” window allows me to disable Location Services, and Automatic Problem Reporting. I left them turned on, and I hit [Next].

  4. “Time Zone” allows me to select my time zone. It claims it can set my time zone if my location can be found. I typed in “Toronto”, and I hit [Next].

  5. “Third-Party Repositories” gives me access to software from “external sources”, i.e., not Fedora. I enabled it and I hit [Next].

  6. “About You” allows me to set up my user account.

  7. “Set a password for Howard Gibson”, does exactly what it claimed to do. I typed it and I hit [Next].

  8. I am “All done!”. I clicked [Start Using Fedora Linux].

My Gnome display came up.

I pulled down the “Activities” menu and it displayed a list of buttons at the bottom of the screen…

Firefox

web browser

Calendar

Files

probably Nautilus

Software

download more of it

Show Apps

see all the apps installed on my system

There were no email tools installed. I strongly prefer to download my email and manage it locally. I will have to fix this. Gnome 4 found stuff attached to my user account, like Telegram.

When you use sudo for the first time, it gives you a warning message…

  1. Respect the privacy of others.

  2. Think before you type.

  3. With great power comes great responsibility.

3.8 Firewall

Firewalld has improved since the first time I encountered it. To configure it, log in as root and…

$ sudo dnf -y install firewall-config
$ sudo systemctl enable firewalld.service
$ sudo systemctl start firewalld.service
$ sudo firewall-config
      

This brings up a GUI tool, and you can click on the services you are willing to run across your network. Since this is not a laptop, I am willing to allow stuff.10

The “Configuration”, you should see the button [Runtime]. Make you changes. Change that button to [Permament], and make your change again.

If you do not know what it does and/or you do not need it, turn it off. On my laptop, I have turned off everything.

3.9 sshd

I want to do secure shell logins to my system from my laptop. I would never run this on my laptop, but my desktop sits behind a firewall. Now I can watch TV, and work on my computer.

$ sudo systemctl enable sshd.service
$ sudo systemctl start sshd.service
        

Make sure the firewall allows this.

3.10 “The system will suspend now”

It had better not!

Gnome has set up its system to suspend after fifteen minutes of inactivity. It suspends completely. I found I was unable to do large software installs or updates without the system suspending. This machine runs as a server here at home. The suspending seems to have prevented my update from happening.

$ sudo mkdir /etc/systemd/sleep.conf.d
$ sudo vi /etc/systemd/sleep.conf.d/no.conf
        

The file should contain…

[Sleep]
AllowSuspend=no
        

When you are done, restart GDM…

$ sudo systemctl restart gdm
        

3.11 Updates

$ sudo dnf -y update
        

This takes a while, especially if Wi-Fi is used.

3.12 Disk Configuration

Let’s run fdisk and df. The command fdisk is a disk formatter. It requires root/sudo permission, and exteme caution. Note how /dev/sda4 is a logical partition, containing the partitions /dev/sda5 and /dev/sda6.

All df does is tell you much space you are using.

howard@rev:~/projects/linux/RevLinux$ sudo fdisk /dev/sdd
[sudo] password for howard:

Welcome to fdisk (util-linux 2.41.4).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

This disk is currently in use - repartitioning is probably a bad idea.
It’s recommended to umount all file systems, and swapoff all swap
partitions on this disk.


Command (m for help): p

Disk /dev/sdd: 931.51 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: WDC  WDS100T2B0B
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 3ECAA65E-299F-4DE1-BA54-9BAC37E79B3F

Device          Start        End   Sectors   Size Type
/dev/sdd1        2048   19531775  19529728   9.3G EFI System
/dev/sdd2    19531776  937498623 917966848 437.7G Linux filesystem
/dev/sdd3   937498624 1464842239 527343616 251.5G Linux filesystem
/dev/sdd4  1464842240 1855465471 390623232 186.3G Linux filesystem
/dev/sdd5  1855465472 1953120255  97654784  46.6G Linux swap

Command (m for help): q
howard@rev:~/projects/linux/RevLinux$ df
Filesystem      1K-blocks       Used  Available Use% Mounted on
/dev/sdd4       191134604   38634280  142718360  22% /
devtmpfs          3934660          0    3934660   0% /dev
tmpfs             4019592          8    4019584   1% /dev/shm
efivarfs              128         19        105  15% /sys/firmware/efi/efivars
tmpfs             1607840       2244    1605596   1% /run
tmpfs                1024          0       1024   0% /run/credentials/systemd-journald.service
tmpfs             4019592          0    4019592   0% /tmp
/dev/sdd2       450656976   74759244  352932180  18% /home
                                                                  

                                                                  
/dev/sdd3       258423140    4993980  240229188   3% /usr/local
/dev/sdd1         9755288      19832    9735456   1% /boot/efi
tmpfs                1024          0       1024   0% /run/credentials/systemd-resolved.service
/dev/sdb1      3844550452 3630479704   18703488 100% /backup
tmpfs              803916        196     803720   1% /run/user/1000
/dev/sdc1      1921341656  568138084 1255530972  32% /archive
/dev/sda1      1921341656    2755544 1820913512   1% /data
howard@rev:~/projects/linux/RevLinux$
      

3.13 Apache (httpd)

I want to run web pages from my personal account. Apache can be fairly easily made to offer up html files sitting in the user’s public_html directory. Apache’s default behavior is to not do this.

The configuration file is /etc/httpd/conf/httpd.conf. To activate user directories, Apache wants to uncomment the line…

#Include conf/extra/httpd-userdir.conf

This line is not in there. Nor is there a filesystem extra.

At the end of Fedora’s httpd.conf is the heading # Supplemental configuration, and the text…

IncludeOptional conf.d/*.conf

My interpretation of this is that all the *.conf files in there are being read.

Let us edit /etc/httpd/conf.d/userdir.conf.

Search for the string public_html. There are two lines of code, separated by a few lines of comments as follows…

<IfModule mod_userdir.c>
    #
    # UserDir is disabled by default since it can confirm the presence
    # of a username on the system (depending on home directory
    # permissions).
    #
    UserDir disabled

    #
    # To enable requests to /~user/ to serve the user’s public_html
    # directory, remove the "UserDir disable" line above, and uncomment
    # the following line instead:
    #
    #UserDir public_html

</IfModule>

Comment out UserDir disable by placing a pound sign (#) at the front of the line, and uncomment UserDir public_html as follows…

    # UserDir disable
    ...
    UserDir public_html

Leave all the other stuff in, of course.

I enabled CGI scripts written in Perl.

Look below the UserDir section for the following lines…

<Directory /home/*/public_html>
   AllowOverride FileInfo AuthConfig Limit
   Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec ExecCGI
   ...
</Directory>

Add ExecCGI to the end of the Options if it is not already there.

Load /etc/httpd/conf/httpd.conf, and search for the line…

#AddHandler cgi-script .cgi

Uncomment it by removing the pound sign, and add .pl to the end of it so that we can execute Perl scripts.

I want to active a 404 error message for when people type in invalid web pages.

Edit /etc/httpd/conf/httpd.conf. There are a series of commented out lines starting “ErrorDocument 404”. Add the following…

ErrorDocument 404 "Document not found!"

To activate httpd…

$ sudo systemctl enable httpd.service
$ sudo systemctl start httpd.service

To halt and restart httpd…

$ sudo service httpd restart

In the past, SElinux did not allow access to my public_html, but it’s logging routine provided instructions for disabling this. There are instructions up on the internet for disabling SElinux. I reset it to permissive mode. I can still check the logs when I want.

3.14 Cron

To system for running administrative tasks automatically, you use cron. This used to just work. Now, I have to install it and activate it.

$ sudo dnf -y install cronie
$ sudo systemctl enable crond.service
$ sudo systemctl start crond.service

3.15 Other Hard Drives

My drives /dev/sda1, and /dev/sdc1 are to be set up as /data and /archive, respectively. I need to edit the file /etc/fstab, and add the following to the bottom.

# Device  Filesystem Type Options   Dump?   PassNo
/dev/sda1 /data      ext4 defaults  0       1
/dev/sdc1 /archive   ext4 defaults  0       1
        

Then I need to update fstab and create the mount points…

$ sudo systemctl daemon-reload
$ sudo mkdir /data
$ sudo mkdir /archive
$ sudo mount /data
$ sudo mount /archive
        

When the machine reboots, these drives will be remounted automatically.

I have a backup script that creates the mount point and mounts my backup partition, /dev/sdb1, unmounting when done. I am hoping that if someone hacks into my machine, they won’t see any of this. Hopefully, they are not reading this article.

3.16 Extra Software

At this point, you have a GNU/Linux11 operating system with a browser, email and an office suite. So far, so good. This might be all you need. There is a lot of extra software out there, some of which you might want. The following packages are things I insist on installing. Probably, you want some of these.

emacs emacs-gtk+x11 emacs-lucid vim lolcat

Text editors. The vi editor, however productive it is in the hands of touch typists like me, is not user friendly. If you cannot manage vi, you need nano, which is installed by default by Fedora. Emacs is the original GNU text editor, originally written by Richard M. Stallman. Xemacs is a hacked version of it with more features, that has not been updated in quite some time. vim is a fancier version of vi. As of Fedora 40, emacs wants emacs-gtk+x11 and/or emacs-lucid to run in a “pure-GTK” interface.12 lolcat is a cute version of the traditional UNIX cat text reader.

dvd+rw-tools

Command line tools for buring CDs, DVDs and BlueRays. I need this for my backups.

gimp

Bitmap graphics. If you have a digital camera, you need the GIMP to fix and edit your pictures. Why is this not installed as part of the distribution?

darktable

Read raw files – remote control your camera. Professional photographers do this.

perl-Image-ExifTool.noarch

ExifTool is another useful utility for processing graphics files. It allows you to attach metadata to your files. I use it in one of my scripts.

xsane

GNU support for your scanner (or my scanner anyway).

htop

A process monitor fancier than top.

inkscape

Another drawing program that may be interesting.

texlive-scheme-full latex2rtf xfig transfig pstoedit latex2html

This is the Fedora distribution of LaTeX the text preparation language, used among other things, to prepare this document. Xfig is a nice vector graphics program in its own right. Pstoedit converts PostScript files to Xfig format, among other things. and htlatex, part of the tetex package, does.13

xreader

file reader that works well with LaTeX.

libreoffice-base

Libre Office database. This is required for mail merge. Why is this not installed as part of Libre Office?

linuxdoc-tools

This gives me sgml2html. I need this for an article on my website.

librecad

This is Free Software CAD that writes DXF files. There is commercial Freeware14 out there, but these could be discontinued at any time. Do not rely on it. LibreCAD is not suitable for commercial work, but it is fine for home projects.

openscad

3D CAD of some sort. I have not tried it yet.

blender

3D design program.

sylpheed claws*

My favourite email program. I started using this because it works well offline, an issue for me at the time. I am kind of stuck with it because it uses the mh format, rather then the more popular mbox format files. I like plain text email. The program claws-mail is a mail reader ported from Sylpheed, with some more and possibly necessary features.

thunderbird evolution

More email programs. Why are these not installed by default?

xpdf

A small, faster, more secure PDF reader. Adobe Acrobat is no longer available for GNU/Linux.

okular

Document reader – PDF PS and all sorts of other things. It allows annotation.

pdfgrep

Use grep to search through PDF files.

epiphany lynx seamonkey icecat

Alternate browsers. Epiphany is a small, fast browser. Lynx is a text based browser. Seamonkey is the complete web package put out by Mozilla. Icecat is a GNU approved gekko browser.

freeglut-devel gcc-c++ libpng-devel yasm netpbm

Software development tools.

indent

Fix the indenting of your software source files.

flex *gtk-devel* glew-devel imake libsoup-devel

Programming tools

*fortran* *f77*

Fortran! I took in college!

ftp gftp

File Transfer Protocol – useful for updating websites. ftfp is a GUI version of this. I find it amazing that ftp is not installed by default on a Linux box!

filezilla

This is FTP with secure shell protocol

abiword

Smaller word processor.

gnumeric

Smaller spreadsheet.

alpine

Command line email tool (mbox format). This comes with the text editor pico.

lxterminal

pcmanfm wants to run this.

octave

A cool and very useful math program. Gnuplot is a dependency, so this is installed too.

audacity

Sound processing

k3b brasero

CD/DVD/Blu-Ray burning

efax

Every once in a blue moon, I send faxes.

aspell aspell-en

Spelling checker and English dictionary

tnef

Extract files from Microsoft TNEF email attachments.

minicom

Terminal program for my telephone modem

asunder

CD ripper

FlightGear wesnoth freeciv

Games. What fun!

nmap

Security tool.

android-file-transfer android-tools

I have an Android cellphone. Actually, the problem is that you have to locate the USB configuration, and turn on file transfer. Now, your file managers work!

pulseaudio-libs-devel alsa-lib-devel glew xa svn byacc

needed to compile vice, “the versatile Commodore emulator”.

libXt-devel libXaw-devel mesa-libGLw-devel

I want to compile and install the FEA program Felt. I need these libraries. I had to edit the source code a bit to do the install.

strace

This is a useful debugging tool.

wine

Emulate lots of Microsoft Windows software on GNU/Linux.

To get YouTube and other videos working on Firefox, you need to…

$ sudo dnf -v install gstreamer1-plugins-{bad-\*,good-\*,base} \
  gstreamer1-plugin-openh264 gstreamer1-libav \
  --exclude=gstreamer1-plugins-bad-free-devel

Find a way to install libheif-freeworld libheif-tools. It converts HEIC format files to jpeg. Look for heif-convert. HEIC stands for High Efficiency Image Container, and it is used by Apple cellphones.

You can install all of this with one call of dnf…

$ sudo dnf -y install nano emacs vim gimp ...

Find something else to do for a couple of hours. Find something else to do for quite a few hours if you are doing a wireless install.

3.16.1 More Software

Not everythng is available through Fedora dnf.

epstopdf

Locate an rpm for epstopdf and install it. I use this with LaTeX.

Google-Chrome

I went to Google and I downloaded and installed Google-chrome. This no longer is available for 32 bit machines, but Rev is not a 32 bit machine!

Vivaldi

a nifty web browser

Brave Browser

another nifty web browser.

Opera

yet another nifty browser, sadly, not supported in Fedora. If you are determined to use the latest Opera, you need to switch to Ubuntu.

Midori

a little browser that used to be part of Fedora.

FreeCAD

3D parametric CAD.

FreeCAD used to be available to Fedora as a dnf file. Now, you download an AppImage, as of 2024-07-04, FreeCAD-0.21.2-Linux-x86_64.AppImage. AppImages are executable for GNU/Linux. I moved it to /usr/local/bin. On my Fedora 40 system, it crashed. I Googled the problem, and I determined that the functional launch command is

$ LD_PRELOAD=/usr/lib64/libdrm_amdgpu.so.1 FreeCAD

This worked fine from the command line, but it did not work from the FVWM menu. I fixed it by writing a shell script…

$ cd /usr/local/bin
$ sudo touch FreeCAD
$ sudo chmod 755 FreeCAD
$ sudo vi FreeCAD

The touch command creates the file. The chmod command sets it to executable. If you don’t like vi, you can use the more user friendly pico. The text in the script is as follows

#!/bin/sh
LD_PRELOAD=/usr/lib64/libdrm_amdgpu.so.1 \
        FreeCAD-0.21.2-Linux-x86_64.AppImag

3.17 Not Free Software

Please read the sections above on Free Software. A big benefit of Free Software is that your data is stored in an open format. If your personal files are stored by a proprietary program in a proprietary format, it’s not really your data, is it?

Free Software is a good thing, but sometimes we are determined to read proprietary files. Google “rpmfusion”. There are free repositories which are okay. There are not-free repositories which are less okay. I installed both rpmfusions, then I installed the following…

lame

MP3 encoder for Linux

unrar

Unpack proprietary rar archives.

Linux kernels from 5.4 on, support Microsoft exfat file systems. There is no longer a need to add software for this.

The programs xine and gxine are no longer available. The approved GNU/Linux player seems to be totem which is installed as part of the OS.

3.18 /opt

This is some sort of an alternative to /usr/local. I used to symbolically link this to /usr/local.

3.19 Interesting stuff I have selected in the past

I can grab these using dnf.

gpsd

A GPS server for mediating access to a GPS. Also, look into gypsy.

gonvert

Units conversion utility.

kdm

I don’t like Gnome’s display manager.

kbibtex

A BibTeX editor for KDE.

koverartist

Create CD/DVD covers

conglomerate

Extensible XML editor

kile

(La)TeX source editor and TeX shell

ooo2txt

Convert OpenOffice documents to plain text

ipe

A vector graphics program

pinta

An easy to use drawing and image editing program

sK1

An advanced vector graphics editor

cssed

CSS editor and validator

TeXmacs

Structured scientific text editor

geomview

Interactive 3D viewing program

gnucap

The GNU circuit analysis package

plotutils

GNU vector and raster graphics utilities and libraries

tgif

2-D drawing tool

xcircuit

Electronic circuit schematic drawing program

ntop

A network traffic probe similar to UNIX top command

htmldoc

Converter from HTML into indexed HTML, PostScript or PDF.

youtube-dl

Small command-line tool for downloading videos from YouTube.

3.20 Window Managers

On a GNU/Linux desktop, the operating system boots. The X Window System is launched, then a Window Manager is launched. X11 provides the graphical screen and the mouse. The window manager provides the actual user interface. With multiple window managers, GNU/Linux can be made unrecognizable from one login to the next. What fun!

I do not like the eye candy of Gnome and KDE. It looks cool, but it takes memory and CPU cycles away from my applications. GNU/Linux is a popular way to keep older computers running. Smaller, faster window managers are good.

A good reason to install several window managers is that they all have their own utilities, some of which work better than others.

As of 2026-03-02, X11 is being depreciated in favour of the Wayland user interface. For Fedora 43, I can still run my favourite window managers and X11 applications. X11’s days are numbered.

3.20.1 Gnome 3 and 4

I hate it. This is one of the reasons I install everything else.

The objective of Gnome 3 is to unclutter everyone’s desktop. I am not sure this is a problem. Some people like to work this way. If they get their work done, who cares? Meanwhile, it seems to take a maximum number of mouse clicks to get from one application to another.

Also, I do not like eye candy. Most of the time, you use the user interface to locate your files and launch applications. Any resources consumed by the window manager are not available for your application. This could be a problem if your application is a resource hog.

If you do not have Gnome installed on your Fedora machine, do this…

$ sudo dnf -y group install "Fedora Workstation"

3.20.2 KDE

I have never liked KDE much. I don’t like excessive eye candy. I never found the interface to be all that intuitive, although I might, if I used it more.

$ sudo dnf -y install @kde-desktop

There is nothing called KDE in the list of desktops you select from the GDM window. Look for “Plasma”.

3.20.3 XFCE

XFCE is a “lightweight” desktop environment. Its behaviour will be familiar to traditional Microsoft Windows users. It loads quickly. If you are not a dedicated GNU/Linux geek, I strongly recommend this.

$ sudo dnf -y group install xfce-desktop-environment

3.20.4 FVWM

This is my favourite window manager. I have been running it since 1996, and I have it working exactly the way I want it to.

$ sudo dnf -y install fvwm stalonetray gkrellm blueman xclock xload

I use stalonetray to embed Gnome and XFCE applets in FVWM’s buttons. Gkrellm is a system monitor I can embed in FVWM’s buttons.

3.20.5 LXDE

I like LXDE because I use its file manager, PCmanFM, in FVWM.

Like XFCE, it is a small, fast window manager that behaves a lot like a Microsoft Windows PC.

$ sudo dnf -y install lxde-common

3.20.6 Cinnamon

Cinnamon is the old Gnome 2 interface, which I always liked.

$ sudo dnf -y group install cinnamon-desktop

3.21 Login Window (Display Managers)

3.21.1 GDM Login (Preferred)

Username display is unacceptable. I investigated, and found out how to turn off user display on GDM. It used to not be possible to do this, which is why I got interested on alternate display managers. I got the following from the help files on http://www.gnome.org.

  1. Create the GDM profile /etc/dconf/profile/gdm, with the following…

         user-db:user
         system-db:gdm
         file-db:/usr/share/gdm/greeter-dconf-defaults
             
    

  2. If necessary, create the directory /etc/dconf/db/gdm.d.15

         $ sudo mkdir /etc/dconf/db/gdm.d
             
    

  3. Create the keyfile /etc/dconf/db/gdm.d/00-login-screen containing the following…

         [org/gnome/login-screen]
         # Do not show the user list
         disable-user-list=true
             
    

  4. Exit any applications you are running. When you restart GDM, you will be logged out.

  5. Update the system databases, and restart GDM…

         $ sudo dconf update
         $ sudo systemctl restart gdm.service
             
    

They used to have a convenient graphical tool that did this.

The original display manager, XDM, is still available to be downloaded and run, but it is absolutely basic, allowing you only to login. There is no control over your window manager, or over rebooting and shutting down.

3.21.2 SDDM Login (If GDM doesn’t work)

GDM can have problems with Nvidia cards. If you have an Nvidia card, you may have to run SDDM.

Open SDDM’s configuration file /etc/sddm.conf, for editing. Select a theme that does not display the user list

[Theme]
# Current theme name
#Current=01-breeze-fedora
Current=02-fedora               # Use this theme!
#Current=breeze

To restart SDDM, exit any applications you are running16 and…

$ sudo systemctl restart sddm.service

The theme itself is configured by a file in /usr/share/sddm/themes. When I used this on my desktop, I replaced the background graphic.

3.22 NFS

On my home desktop, I want to share file systems. Let us pretend for the moment that my shared file system is called /lone/ranger. Maybe it is! Who knows?

First, we need to export the file system. I only want to export it to my laptop Lenovo with permission to read and write. Edit /etc/exports.

/lone/ranger   Lenovo(rw)
      

Second, we need to tell Linux that the file is to be exported. Log in as root and run…

$ sudo exportfs -av
      

This exports everything in your /etc/exports file in verbose mode. You should see a list of the file systems exported.

Firewall configuration is explained elsewhere in this document. You need to allow NFS sharing.

Update the file /etc/idmapd.conf. Find the line starting with #Domain. Uncomment it and add your domain name as follows…

Domain = Rev
      

Now, start it…

$ sudo systemctl start rpcbind nfs-server
$ sudo systemctl enable rpcbind nfs-server
      

NFS should work now. If it does not, check your firewall again.

3.23 Fortune Cookie

It ain’t *NIX if there is no joke printed at the opening of each command shell.

If worst comes to worst, this is installable from a command line terminal, such as the Gnome terminal. Fedora 38 installs Fortune!

Red Hat (Fedora)

Debian (Ubuntu)



$ sudo dnf -y install fortune-mod

I activated the fortune cookie by adding the following lines to the very bottom of /etc/profile

$ sudo nano /etc/profile
FORTUNE=/usr/bin/fortune
if [ -x ${FORTUNE} ]; then
      ${FORTUNE}
fi

$ sudo apt -y install fortune-mod

I activated the fortune cookie by adding the following lines to the very bottom of /etc/profile

$ sudo nano /etc/profile
FORTUNE=/usr/games/fortune
if [ -x ${FORTUNE} ]; then
      ${FORTUNE}
fi

Make sure you scroll all the way to the bottom of /etc/profile before typing anything in.

The terminal that is launched by Gnome does not automatically run the Fortune Cookie. Pull down the edit menu. Select Preferences. Select Profiles. You should see highlighted a profile called “Unnamed”. Click the Edit button. Select Command. Ensure you have highlighted the button “Run command as a login shell”.

It will be worth it.

3.24 Development Tools

For a while there, Fedora came without software development tools. I found this incredible. With Fedora 43, the main compilers gcc and g++ are present.

There is nothing to do.

3.25 Services

Up until now, Fedora’s tool for managing services has been system-config-services. This allowed you to log in as root, turn stuff on and off, and make things turn on at boot.

No more.

You can still turn things on and off. Boot services are configured from the command line as follows…

$ sudo systemctl enable httpd.service
$ suto systemctl enable network.service

3.26 Networking

I was not prompted for my computer name while installing.

$ sudo nano /etc/hostname
      

My computer is named “rev”. Change localhost.localdomain to rev.

The network was configured by my install program. I added my printer to /etc/hosts, so that I could call it WF3720.

3.27 Games

It turns out you can search, using dnf.

$ sudo dnf -y search game
      

You also can search through the software package manager.

3.28 Multimedia

Linux and Fedora are Free Software. Most multi-media formats are proprietary. The primary problem with multi-media on Linux is the ideological assumption that you should not have non-free software on your computer. If you are determined to run only Free Software, your multi-media experience will be limited.

If this is less important to you, you can search the internet for “Fedora notfree software”. This reveals sites that tell you what to install. It also reveals Fedora’s page telling you why many packages are not included with their distribution.

For Fedora, xine and gxine play most commercial DVDs. When you install these, you get ffmpeg and lame as dependencies.

I have installed Adobe Flash back in the past, but this is buggy, no longer supported by Apple, or Google Chrome. Don’t bother.

3.29 Printer Configuration

I now have an Epson WorkForce Pro WF-3720. This is a combined printer, scanner and fax. I just wanted a printer,17 but this is what was available for a reasonable price. This is connected to my wireless network. There is no direct connection to my computer.

You can check your printers from a command line.

[howard@rev RevLinux]$ lpstat -t
scheduler is running
no system default destination
lpstat: No destinations added.
lpstat: No destinations added.
lpstat: No destinations added.
lpstat: No destinations added.
[howard@rev RevLinux]$
      

Fedora 43 does not come with Epson WF-3720 drivers. I had to seach for Epson drivers. My Google search was epson wf-3720 drivers linux. I found the following…

epsonscan2-bundle-6.7.87.0.i686.rpm.tar.gz
      

The file epsonscan2 is a GNU zipped tar file, so I unpacked it…

$ tar ztvf epsonscan2-bundle-6.7.87.0.i686.rpm.tar.gz
$ tar zxvf epsonscan2-bundle-6.7.87.0.i686.rpm.tar.gz
$ cd epsonscan2-bundle-6.7.87.0.i686.rpm
$ sudo ./install.sh
      

The command tar ztvf lists the contents of the tar file, so that I can verify it will unpack into a sub-folder. The command tar zxvf actually unpacks it. I then changed into the unpacked folder, and executed the install command.

The printer configuration can be launched from the command line…

$ sudo system-config-printer
      

I get a small menu with an button labelled [Add]. Clicking on it gives me a bunch of choices, one of which is Network Printer. I expanded this choice, and I got a bunch of choices, several of which were my printer, Epson WF-3720. I clicked on the one showing my printer with its IP address.

I clicked on [Forward].

The “Describe Printer” window came up. I changed the printer name to lpr. This is the traditional name for a primary printer in UNIX, and I use some old applications.

I was prompted to print a test page. It worked. There is no noticeable search for printer drivers, but obviously, it found some.

I can stop and restart the printer as follows…

$ sudo systemctl halt cups.service
$ sudo systemctl start cups.service
$ sudo systemctl restart cups.service
      

The scanner works. From a command line, type…

$ ls -l /usr/bin/*scan*
      

The command simple-scan finds the printer, and uses the loading tray to scan multiple page documents into PDF. You will have to play with the other stuff.

3.30 Scanner

I want my Epson V550 Perfection to work.

Epson scanners are recognized by sane, but Epson has official drivers. Xsane’s GIMP connection is very sophisticated, and I really ought to learn it.

$ sudo dnf -y install xsane xsane-gimp
      

Epson’s iscan seems to be obsolete. Now, I am supposed to download “Epson Scan 2”.

epsonscan2-bundle-6.6.42.0.x86_64.rpm.tar.gz
      

This looks weird. rpm is a distribution format, and tar.gz is a distribution format. Let’s examine the tar.gz file, then unpack it.18

[howard@rev ~]$ tar ztvf epsonscan2-bundle-6.6.42.0.x86_64.rpm.tar.gz
[howard@rev ~]$ tar zxvf epsonscan2-bundle-6.6.42.0.x86_64.rpm.tar.gz
      

What you get is a distribution directory containing your rpm files, plus an install script.

[howard@rev mess]$ cd epsonscan2-bundle-6.6.42.0.x86_64.rpm
[howard@rev epsonscan2-bundle-6.6.42.0.x86_64.rpm]$ ls -l
total 16
drwxr-xr-x. 2 howard howard 4096 Jul  4 03:23 core
-rwxr-xr-x. 1 howard howard 7396 Jul  4 03:01 install.sh
drwxr-xr-x. 2 howard howard 4096 Jul  4 03:23 plugins
[howard@rev epsonscan2-bundle-6.6.42.0.x86_64.rpm]$ sudo ./install.sh
      

Note how I like to download stuff into a directory called mess.

The command epsonscan2 finds the scanner and scans stuff. There is no integration with GIMP. I will have to learn xsane.

3.31 Modem

We need wvdial. To search for a modem…

$ sudo dnf -y install wvdial
$ sudo wvdialconf /etc/create
      

This locates the modem,19 then it creates a configuration file for it. My modem is at /dev/ttyUSB0. I created the group dialout, and I have assigned authorized users (me) to it. I have assigned the modem to it.

$ sudo chgrp dialout /dev/ttyUSB0
$ sudo chmod 660 /dev/ttyUSB0
$ sudo minicom -s
      

You need to tell minicom where the modem is.

3.32 /usr/local/src

I want to provide controlled write accesss to /usr/local/src. this makes it easier to install software from source, and keep the source distribution online with any modifications I had to make to get it to compile.

I change the group ownership of the directory of prg, and I turned on the sticky bit, so that anything written to the directory would belong to prg.

$ sudo chgrp prg /usr/local/src
$ sudo chmod 1775 /usr/local/src
      

Now, I need the /usr/local/lib directory to be included in the library search path. I need to configure and run /sbin/ldconfig.

Create the file /etc/ld.so.conf.d/usrlocal.conf. Add the line…

/usr/local/lib
      

Issue the command…

$ sudo /sbin/ldconfig -v
      

A Installing Fedora on New Hard Drive

For most Linux installs, I reformat and re-install the root and the swap partitions. The remaining partitions contain valuable data, and I do not want to touch them.

B Blivet Installer

Finally I tried the Blivet GUI disk partitioner. It provides a far clearer picture of your partitions, particularly the extended partitions. The standard Anaconda partitioner does not show this, and you cannot see how it is assigning partitions. The boot partion /boot/efi must be a primary partition. Anaconda did not indicate this point in its error messages, and I was unable to do this install. From Blivet, I was able to see what I was doing, and make everything work. Unfortunately, I was unable to tell Blivet to not reformat mounted partitions. My /home and /usr/local partitions got reformatted. Fortunately, I do backups.

From Blivet, I made a point of not mounting my backup and my archive drives. Reformatting these would have been a disaster, although I had copied my latest /home partition to Blu-Ray.

If you do not understand disk partitioning, you need an external USB drive to save all your files during a re-install.

C Checking mysterious hard drives

While you are starting your install, you can investigate mysterious drives, to see if there are partitions and data on them. Note how I have two drives, identifed as sda and sdb.

  1. Hit [Ctrl] [F3] to get a command line terminal.

  2. At the login prompt, type root, then hit [Enter]. This gives you a root shell, with a command line prompt ending in a “#”.

  3. Let’s start by looking at drive sda. At the root prompt, very carefully 20 type

         # fdisk /dev/sda
                   
    

  4. If your drive is not formatted, you will get an error message. Otherwise, at the prompt, type “p”. This will show you the partition table of the drive.

  5. Hit “q” to exit fdisk.

  6. Let’s assume you saw a partition you are curious about. Let’s assume it is /dev/sda2

         # mkdir /testing
         # mount /dev/sda2 /testing
         # ls /testing
         # umount /testing
         # exit
                   
    

  7. Hit [Ctrl] [F1] to get back into the X Window system, and your install program.

I am not sure how intelligent the mount command is. Hopefully, it identifies non-Linux partitions and mounts them. I had no Microsoft partitions to test with this.

D Fedora Networking

As of Fedora 23, networking has been a pain in the butt! My ethernet and my wireless connections appeared to be working. I could see the networks, including all sorts of wireless servers, including mine. The system simply would not connect. There is all sorts of stuff up on the internet about the Realtek RTL8111/8168 ethernet chip. Much of this goes back to Fedora versions prior to ones that worked fine for me.21

I have solved the problem, at least for my machine. I am not sure I understand the problem. On my KFedora installation, I select network configuration. I click on my desired network, preferably Ethernet. I click on [IPv4]. On KFedora, the relevant line is “Method”. On my Fedora 22 laptop, the line is called “Addresses”. This defaults to the selection [Automatic (DHCP)]. Change this to [Link-Local].

Once I have Fedora installed, this should be set to [Automatic]. Damn!

E Fedora Partitioning

Fedora recommends the following scheme for Fedora 23…

Mount SizePartition



/boot 500MBEFI
/ 10GBext4
/home 10GBext4

There is a lot of stuff on swap partitions. How about 10GB?

These all are minimums.

Lots of people, including me, create /usr/local partitions. These allow you to install software somewere outside the operating system partitions. You can re-format the operating system partitionl, and leave your installed software alone. This is particularly useful if you are installing software from source code.

If you replace your computer and drives annually, you can follow Fedora’s instructions. If you plan to keep your computer for a few years, plan on upgrades, and larger partitions. Here is my partition scheme from back in 2007…

[root@rev howard]# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/hde1             14802404   5662284   8376060  41% /
/dev/hdf1              6198404   4578956   1304576  78% /backup
tmpfs                   298764         0    298764   0% /dev/shm
/dev/hde3             10078852   2062248   7504616  22% /home
/dev/hde2             10078852   5448296   4118568  57% /usr/local
/dev/hde6              2419788    230140   2064748  11% /var
[root@rev howard]#
  

Fedora’s insistence on a /boot partition is new as of Fedora 23.

F Sudo

There are two ways to administer UNIX/Linux. You can have a root account, or you can use sudo.

Historically, UNIX type systems are installed with a super user account called root. This account has complete write access to everything on the computer. This is dangerous. Good practise is not use this account for anything other than system administration. When you are logged in as a regular user, your ability to damage your system is drastically reduced.

When you open any sort of UNIX/Linux terminal or shell, you are prompted by a text string ending in a dollar sign, $.22

When you log in as root, the prompt changes to a pound sign, #, also called a hash sign in the computer world. This is a sign of danger. The hash sign says you are root, and that you can trash the system if you are not careful.

An alternate approach for all this is to not have a root account. A group of users are designated as administrators. To issue a root command, they go…

$ sudo nano /etc/group
  

The system prompts for the user password. The resulting increased access continues for several minutes.

This is used on MacOS, Ubuntu and now, Fedora. I would prefer to keep the root account. When I am logged in as root, I can see the hash sign, and I know there is a threat. On a single user machine, like mine, sudo makes administration easier, and reduces the number of strong passwords I need to track. This may be one of those six of one, half dozen other issues.

G libc5

My libc5 notes are obsolete, because I did not install libc5. They are kept here for reference only. Do not toss out your old Linux install media. Do not use them unless you have to.

When you run a number of old applications and tools, they exit with the error “file not found”. This can be caused if libc5 is required. this is not installed on Red Hat 7 and up. As of Red Hat 8, I am not bothering to install it.

Libc5 can be useful. If you have WordPerfect 8 or openwin installed, you need it.

For Red Hat 7.2, I located and installed the following rpms…

ld.so-1.9.5-11.i386.rpm
libc-5.3.12-31.i386.rpm
      

The ld.so rpm is required as a dependency of libc-5.3.12-31

Now, you must open up /etc/ld.so.conf, and add the line…

/usr/i486-linux-libc5/lib
      

…to the end.

Run /sbin/ldconfig -v to set up the library path.

H Disasters

I sometimes have one of these with a Linux install of new hardware.

When I installed Fedora 38 on my laptop, it went without a hitch. When I installed Fedora 38 on my desktop, the system would not boot. I saw the BIOS screen, and then nothing. I set the BIOS up to boot from the hard drive first, and then the optical drive. When I left the install DVD in the drive, it booted. I Googled problems with Fedora 38 boots, but I saw nothing interesting. I then decided to install only my primary SSD drive /dev/sdd. I will install my other drives by updating /etc/fstab. The installer announced that I needed a “BIOS Boot” partition.

I searched through my BIOS settings. Somehow, I switched a parameter from “UEFI Boot” to “Legacy+UEFI Boot”!23 Aaaaarrrgh!

My install of Fedora 36 was messy. Fedora 36 requires a /boot/efi partition. I was able to create one by deleting the swap partition, and then creating /boot/efi and a new swap. The system when most of the way through the installation, then it reported that the /boot/efi did not work.

The boot /boot/efi partition must be a primary partition. The standard Anaconda disk partitioner creates extended partitions, but it does tell you or otherwise indicate anything.

I tried the Blivet GUI. The Blivet partitioner does show primary and extended partitions. I was able to reorganize everything with /boot/efi as a primary partition. I was not able to accept partitions without reformatting them. Luckily, I suspected Blivet would reformat everything, and I did not allow it anywhere near my other drives, containing my backups and my archives.

Shortly after I installed Fedora 33, I noticed that my computer was running very, very hard. I logged in, opened a terminal. and I ran the command top. This revealed something called baloo, which was building some sort of file database. I Googled this to find out what was going on, and I determined that baloo was a part of KDE. The web page recommended killing it with…

$ balooctl disable
        

Note how I did not use sudo. I owned the process. I have no idea of how it started. The next day, I looked at my backup, and I found that my latest one was six gigabytes bigger than my previous one. I did a search for enormous files less than a day old…

$ find ~ -type f -mtime -2 -size +10000 -ls
        

I found something called ./.local/share/baloo/index which turned out to be over eighteen gigabytes in size. I was compressing my backup at the time, so this makes sense. Whatever baloo was doing, it was not worth the CPU cycles and the disk space. I deleted the index, and the baloo directory. If weird things are happening, top shows your processes in order of CPU time. The command find does a whole lot of stuff. This is described in my Unix Command Line HOWTO, and by its man page.

When my 4TB hard drive failed, it took most of my SATA down with it. When I tried to boot, I got the message “Loading Operating System ...”. Everything worked when I unplugged the drive. Fortunately, it was my backup drive, and the system booted without it. Had it been my system drive, I would have had backups to recover.

When my 2TB hard drive failed, I bought a Western Digital WD2003FZEX-0. This turned out to be configured for GPT, a format not supported by my motherboard. This is similar to my 4TB drive, noted below. When I finished installing and I rebooted, the boot screens came up, then it said “Loading Operating System ...”, them it stopped. After many, many hours of frustrated hacking around, I purchased a Seagate “Desktop HDD”. This worked fine. See my notes above on MBR and GPT.

When I first tried to install Fedora 23, Anaconda rejected my partitioning scheme, insisting that I needed a /boot partition. I tried to create a /boot partition, but nothing worked. I was very frustrated. I Googled and posted on the GTALUG forum. There was a lot of stuff about MBR versus GTP partitioned disks. At the time, I had a 2TB drive for my working files, a 500MB drive as an archive, and a brand new 4TB drive as a backup. The 4TB drive was GTP partitioned. I unplugged it, and Anaconda treated my system as MBR, and I was able to install.

I had fun connecting to the network, as noted above, under networking.

When I first installed Fedora 12, it would not boot. The BIOS message came up, the all I saw was a gray, flashing cursor. There was no sign of Linux. I had already installed Fedora 10 on this machine.

I put a message up on the Toronto Linux User Group message base asking about this. Someone replied that the machine probably was confused about which hard drive was to have the bootloader. I needed to disconnect my old IDE drive during the install process.

Eventually, I looked at my BIOS and determined that the IDE drive was being recognized as a boot device, and that the SATA drive was not being recognized. There was a screen in the BIOS that allowed me to swap this. Everything worked fine after that.

On my Red Hat 8 install, I completed everything, and I booted the system up. I transfered data from my old 2GB hard drive, and I shut down.

I replaced the 2GB drive with my 6GB drive and rebooted. It took quite a lot of frustration before I realized that the 6GB and 40GB drives had a set of partitions with the same labels. I fixed this from the install shell using the command e2label

When I installed my new sound card, all the hard drive numbers changed. I did not notice or understand what happened until the system completed booting and started complaining that it could not find some partitions. The root partition, /home and /usr/local showed up properly because of the drive labels. The drive labels look a little weird, but this is very robust.

I think my SCSI burner failed after my first Fedora Core 3 install. This messed up all sorts of things including my USB devices. I had a persistent error message about no disk being in the drive, which I traced to my CF card reader. My sound card failed too. I removed the SCSI burner and re-did the install. Everything worked fine afterwards.

The first time I installed Fedora 6, my serial port and my floppy disks did not work. I was still using a serial modem, so this put me of the internet. I assumed I had hardware problems and I ripped stuff out and tried all sorts of new hardware, up to an external modem with a USB to serial converter. Eventually, I found out that the problem was Xen. When Xen runs, you lose your serial port and your floppy drives. I have idea what Xen actually does.

I Setting Up New SCSI Devices

I did not install my SCSI card. These notes are for historical interest, only.

I forget what it was like installing my SCSI card for my CD writer. When you install Linux, all this stuff works, if you can figure out what they are called. Since I installed Red Hat 7.0, I have connected an old Sun Desktop pack with a 9GB SCSI hard drive. I wanted to write stuff out to CD.

I plugged in the desktop pack, then I halted and restarted the computer. Linux and Kudzu autodetected and configured the device at boot. Now, all I had to do is figure out what the damn thing is called!

The naming convention in Linux SCSI is as follows…

hard drives/dev/sd[a-z], /dev/sd[a-c][a-z], /dev/sdd[a-x]
CD-ROMs /dev/scd[1-7]
Tapes /dev/st[0-7]

The Sun hard drive I was playing with turned out to be /dev/sda1. I am not quite sure how this corresponds to the logical device number 2, which was dialed up on the back.

J Xen

I saw no sign of Xen on Fedora 10. These notes are for historical purposes only, and as a warning!

Fedora 6’s default is to install a Xen compatible kernel and run the Xen daemon. This allows “paravirtualization”, and it messes up the serial port and the floppy drives. An ordinary person running Fedora as a desktop has no need for virtual environments but very likely wants floppies and modems. Xen is a pain in the butt.

You need to install the non-xen kernel, and you need to configure GRUB so it boots this kernel. The Fedora 6 DVD contains several kernels. You probably installed kernel-xen-2.6.18-1.2798.fc6.i686.rpm. You want to search for and install kernel-2.6.18-1.2798.fc6.i686.rpm.

In addition, I installed kernel-devel-2.6.18-1.2798.fc6.i686.rpm and kernel-headers-2.6.18-1.2798.fc6.i386.rpm.

Update /boot/grub/grub.conf, setting default=0. This causes GRUB to boot the first of the two kernels listed. The RPM install updated GRUB.