The Linux Page

Help other users realize that everything is possible, especially avoiding Windows for their own personal use.

Welcome to The Linux Page

Fox Trot by Bill Amend. Click to enlarge.
Click to enlarge

This site is a collection of my own work with Linux. Certain things are easy, others take time to decipher and if I ever need to repeat the work (which usually happens!), then I need to remember everything by memory or... have a site with all the steps taken and to take again.

The following are my most recent posts:

From a full hard drive to about 20% usage! All due to our MySQL script using the front host IP address.

One of our computers was setup to delete rows from a database. Anything older than 90 days should be deleted. Only the script to run that DELETE had the incorrect IP address and we weren't watching the database closely so it grew to over 107 million rows and on a small VPS that filled up the hard drive.

At that point, trying to run the DELETE command would generate this error:

ERROR 3019 (HY000) at line 1: Undo Log error: No more space left over in system tablespace for allocating UNDO log pages. Please add new data file to the tablespace or check if filesystem is full or enable ...

A bunch of fruits on a table with five smoothies

Unix in Colors

Whenever I run a command without piping it through less, I generally get colors.

This is true in this century that computer started to use more and more colors in the console. It's practical for all sorts of reasons.

However, you lose those nice colors when you want to use "less" to paginate the results. There are two reasons for that:

Terminal vs. Pipe

The fact is that many tools will check their stdout and determine whether it's a terminal or not. If not, it can generally be assumed that it's a file, a pipe, a variable, etc. and therefore a ...

A Telephone post with many lines to the surrounding homes.

I have noticed that quite a few people were trying to create UDP communication and I thought that proposing my class could help them. This is very basic as it does not define anything such as the size of a packet or any protocol to ensure arrival of the packets. However, it can be useful if you want to send a signal from one process to another, which is exactly how I use this implementation (i.e. I send a PING message to wake up a background process whenever the front end adds data to the database.)

This code is part of the Snap! C++ implementation. The latest version can be found in GitHub ...

An Ubuntu 16.04 login prompt just after boot, ready for you to log in.

As I just upgraded my 14.04 installation to 16.04, it booted right up to lightdm.

I had it properly setup to boot in a console before, but somehow it changed the behavior on me.

This is because the computer is now using systemd to boot.

I already had the GRUB variables setup as expected:


But this is not enough if you want to start in the console when running systemd (which is running since 15.04). See X11 Auto-starting for details about older versions.

systemd has a list of ...

A beautiful table ready to be server with plates, glasses, napkins, all very elegantly set.

Getting the OS

First go to and get the latest version you're interesting in. They offer server version that they support for 5 years or so. I suggest one of those if you want to run a server. This is an ISO, in generate around 600Mb so be ready to wait a few hours... Even with a really fast connection, because the transfer will be limited by the mirror in most cases.

Unless you know better, I strongly suggest you get the Ubuntu Server version. Maybe a bit more annoying to use BUT it works on ALL computers. ...

A message in a bottle, you might as well not ever bother...

Today I learned that by default Ubuntu doesn't install an MTA.

I've been installing Postfix on my computers and never noticed that because it's like part of the things I install even before I start doing anything on my computer.

However, a default basic Ubuntu install comes bare and does not offer a sendmail tool.

Looking at a certain number of computers, I noticed that the /var/mail folder was empty. That in itself wasn't really anything to worry about, but I was still wondering, how come?! I run CRON on those 13 computers and it never fails??? Oh yeah because on my ...

The Ubuntu Logo using a wood texture

(Picture above represents the logo of Ubuntu, a Linux distribution.)

The following is a list of the Ubuntu Releases with their versions and their name.

I find it really annoying when someone says "I have such" and he/she has no clue what version (i.e. 7.10) it is. Then I have to look it up because I don't memorize the numbers to the names, but I know what the numbers entitles.

So... I need a table and I had one on Wikipedia, but that was wiped out. So now, I'll keep my own here and I'll try to keep it up to date. I start with the version Mar 16, 2009 from the Ubuntu ...

An opened laptop optical drive with a literally burned CD disk showing.

Create ISO File to Burn

When creating a CD you use mkisofs (make ISO file system--ISO stands for International Standard Organization, a non-profit organization used to write standard procedures used in business and other places to better organize interoperability between many companies in the world.)

mkisofs -o my-cd.iso directory

The "directory" are all the files you want to write to the ISO file.

Verify Disk Before Burning

Then you should verify that it looks as you expected. This is done by mounting the ISO file:

sudo mount -o loop my-cd.iso /mnt/cd

Assuming ...

Virtual Mount of Rocks with a Beautiful Sunset in the Background


Today I made a mistake and create the file /etc/sudoers.d/timeout which was definitely not compatible with sudo. The file was JSON when sudo only accepts very basic var=value lines.


I could not use sudo anymore on that VM. I had to find a way to fix the file system without having to rebuild the entire disk because that would have taken way too long.

How to Mount a VDI File

Since your VDI (VirtualBox Disk Image) files are literally disk files, they should be mountable, right? Yes! They are. Actually, that's certainly exactly what the VirtualBox code does, but ...

A 1U server, what a servlet (called at Droplet at DigitalOcean) or VPS represents although you have many within a single computer now.


When I create a new DigitalOcean droplet I have to run a few commands that I don't otherwise use very much at all so I was thinking that adding them here would make it easier to remember.

Creating a New Key with ssh-keygen

I use the same key for each group of computers I manage there. Each time I create a new group, I create a new key with the ssh-keygen command as so:

% ssh-keygen -t rsa
Enter file in which to save the key (/home/alexis/.ssh/id_rsa): ...

WARNING: as we can see ssh-keygen asks you to write the resulting keys using the default ...

Thank you for visiting my website.