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:

How to connect to a server from your Termux terminal

I found that good documentation from Termux, about Remote Access. It mentions [S]FTP and SSH. The main problem to use SSH is that you need to have access to the public key and... how do you copy the public key from your Termux terminal to your server?

What I've found is that you can use ssh-copy-id with a local VPS on the same network. When I'm at home, I have my phone on a LAN IP address and I can access my VPS servers... at least those that allow for a password login.

So what I've done is something like this:

1. Make sure that your VPS SSH server is still allowing password ...

Including old code in modern programs

As I'm working on a project that runs on a Jetson Tegra, I ran in this issue:

CMakeFiles/panel_ve.dir/panel_ve.cpp.o: In function `panel_ve::run()':
/home/alexis/ve/virtual-entertainment/panel-ve/src/panel_ve.cpp:383: undefined reference to `NvEGLImageFromFd(void*, int)'
/home/alexis/ve/virtual-entertainment/panel-ve/src/panel_ve.cpp:414: undefined reference to `NvDestroyEGLImage(void*, void*)'

Yet, I linked against the nvbuf_utils library, but apparently it was not happening.

The fact is NVidia offers an nvbuf_utils.h file in their development environment and ...

RAM & Swap memory exchange, but who uses it?

Limited Information...

When a computer swap is getting used, by default you just see that swap is used, not so much about which process uses that swap space.

The function I used by default is free which outputs that info:

$ free
          total     used      free  shared buff/cache available
Mem:  528011648 75782220 200245172 1928996  251984256 449183156
Swap:  30769148        0  30769148

As we can see, this tool shows use how much RAM is used/available and how much swap is in use/available.

Only that doesn't tell you much. That is, my main question is genrally: which ...

Volume & Balance Potentiometer

Incerase Your Volume Beyond 100

I have been listening to many videos on YouTube, Facebook, etc. that have a really low volume. This is generally rather annoying since in the end I cannot hear a lot of the audio track.

There is actually a way to increase the volume over the normal 100% limit.

There are several features that offer such a feature, but the one that worked for me is a Volume Control application called pavucontrol.

sudo apt-get install pavucontrol

It looks like various systems offer various ways to do that, but at least that one works for me under Linux in ...

Cluster Issues


For my work, I need to have a simple Redis cluster to test that everything works. Unfortunately, when trying to setup the cluster, I was getting this message:

Waiting for the cluster to join................

with the dots (.) going forever.

Creation of Cluster

To create the cluster I decided to create VPS computers with Ubuntu 18.04 since that's what we're still using. These have Redis version 4.0.3.

So... I created a clone from my clean Ubuntu 18.04.

I started that first system, changed the IP address to a group I could use on my system, and installed Redis.


Illuminated optical fiber.

The simplest way to start is to create a simple one page app.

npx create-react-app my-app
cd my-app
npm start

A one page app. just means that all the code works in one place, not that you don't have the ability to use multiple paths and change the render of the page accordinly.

Handling multiple paths is called routing.

The npx command above downloads all the files necessary to run the react app.

The npm start command starts that app. That command requests your default browser to open a link to the service that it just started. The default port used for that feat is 3000.

You ...

A beautiful screenshot


On Ubuntu, the default is to simply hit the PtrScr key. The screenshot of the entire screen will be taken and saved in your Pictures folder.

However, in many cases you may need a special screenshot. Maybe just a small area or a window.

I do not know the defaults exactly, but I think that for a window you want to select the window and then hit Alt-PtrSrc.

On my end, I love to be able to select what I want to screenshot instead of a whole window or screen. I use Ctrl-Shift-PtrSrc which changes the cursor to a cross and then I can select an area on the screen which gets saved ...

A Blank Invite... Why is Thunderbird not seeing that content?

Microsoft has a special format that Outlook (at least) uses to generate an invitation that you can add to your calendar.

However, under Linux with default Thunderbird, that looks like an empty email (well... in general, just the signature of the person sending the invite).

Looking around for the issue, I actually found out that you could just install the Lightning AddOn to Thunderbird and voilà! You'll now see the invite as expected. Actually, the funny thing is that you won't see the signature anymore.

Warning: For the AddOn to work as expected you'll be required to ...

Spaces require special handling in regular expressions

Many of the examples in fail2ban make use of ^ at the start and $ at the end. In other words, the entire line is expected to match.

In many cases, though, it's not really useful to match the entire line when only a few things can be matched. That means you can't use have " $" at the end of the regular expression. (or even " +$" if one or more spaces are expected).

Instead you have to resort to a different way to allow for a space.

Note that I wrote these two regex example in double quotes to make it clear that there is a space at the start, but you actually ...

Settings for you NVidia video cards

NVidia provides a neat graphical interface that allows you to see and change various values that the GPU makes available.

This interface is opened when you start nvidia-settings.

The problem is that at times you probably would like to set a parameter to a value as defined in that interface. The cool thing is that the nvidia-settings tool actually lets you do that.

How that works exactly, you can use the --help command line option for details. The main two are -a to assign a new value and -q to list existing values. The values are defined per GPU, per screen, per display (monitor), and a ...

Unfreeze your Mouse when it Froze

Thank you for visiting my website.