Make Grub2 Boot Older Kernel Version in Ubuntu 20.04

Posted on

In a Linux system, we may have multiple kernels installed. Usually, it is the latest kernel configured to be the default one the system boot loader will use during automatic boot if there is no manual kernel choosing. In many cases, such as there is no driver ready yet for some devices in newer kernels,
Read more

How to list and start VirtualBox VMs in command line in Linux?

Posted on

VirtualBox is a nice open source virtual machine software. It works nicely on Linux and is supported by many Linux distros like Ubuntu in their official package repositories, so it is quite easy to set it up on Linux. The VMs can also be managed in command line using the vboxmanage command line tool provided
Read more

How to Statically Link OCaml Programs

Posted on

Static linking is preferred for some cases although it has its own various problems. Static building/linking is not always possible for some languages on some platform. For OCaml, the answer to this question is yes. In this post, we will introduce 2 methods to statically linking OCaml: static linking with runtime glibc required and static
Read more

Changing Systemd Boot Target in Linux

Posted on

Many Linux distros, such as RHEL/CentOS 7, Fedora, Ubuntu 16, are now using systemd instead of init as the init system. It is common for Linux users to set Linux to boot to “GUI” or “Text” mode. The old way of changing ‘/etc/inittab’ for choosing Linux runlevels is not working for sytemd. This post will
Read more

Notes for Beginners of Software Development on Linux

Posted on

Linux is a great platform for software development targeting servers or backends. In general, working on Linux is very productive. The problem that beginners on Linux face is the the learning curve is steep at the beginning. But believe me, after you get through the initial green steep learning step as in the figure below
Read more

How to Run a Command Upon Files or Directories Changes on Linux

Posted on

Doing actions upon changes of files and directories is very useful. Examples like compiling a project after the source code files are changed, sending emails after important configuration files are modified, building the PDF after a TeX file is modified. On Linux, the inotify-tools provide good support for trigger actions after changes. In this post,
Read more

How to Regenerate Grub2 Config Files on Linux

Posted on

Grub2 config file may need to be re-generated after changing Grub2 configurations such as configuration changes and setting default boot entries. The Grub2’s config file may be at different locations depending on your Linux distro and whether your Linux is booted in BIOS or UEFI mode. This makes regenerating Grub2 config file not easy for
Read more

How to Flush iptables on Fedora Linux

Posted on

iptables is a mechanism in Linux kernel for port forwarding, NAT, firewalls etc. In Linux distros, such as Fedora, the iptables is configured to be as a “strict” firewall that opens a limited know ports, such as 22 for SSH. However, in some network environment, such as a private cluster, the nodes are trusted and
Read more

How to Disable IPv6 on Linux

Posted on

IPv6 is enabled by default on most Linux distros. However, IPv6 is not used for some situations for most of time and it may cause troubles and requires effort to protect the network and ensure the security. This post introduces how to disable IPv6 support on Linux (newer modern Kernel versions). First, add these lines
Read more

How to Change Hostname of Fedora Linux

Posted on

Different Linux distros have different method to set the hostname. On Fedora Linux, it is quite simple. On newer Fedora releases At least from Fedora 19 (sorry, no sure the exact earliest version): You need to edit the file /etc/hostname which just contains the hostname. On older Fedora releases Sorry, I do not know the
Read more

How to disable IPv6 on Linux (Old Version Kernels)

Posted on

Update: this only works on older Linux kernels (e.g. Fedora 12). For newer kernels, please see How to disabling IPv6 on Linux IPv6 is enabled by default on most Linux distros. However, IPv4 is still the mostly used network and IPv6 is not used in many environment. This post introduces how to disable IPv6 support on
Read more