Intermediate Vim

Intermediate Vim is a nice collection of Vim tips and tricks, which are aimed at somebody who is already familiar with Vim. (There is of course no single definition of what’s advanced, intermediate or introductory, so we’ll leave that argument out.) But the article is well worth the read, even if you already know all of the mentioned commands. A refresher is always welcome.

Fedora 30

Fedora 30 has been released a few days ago. In the long list of changes, the most interesting to me are:

I’ve already upgraded my laptop to this version and everything seems to work as expected. The upgrade from Fedora 29 to Fedora 30 is easy:

# Install all the latest updates
dnf upgrade --refresh

# Install DNF plugin for system upgrades
dnf install dnf-plugin-system-upgrade

# Download all the necessary packages for Fedora 30
dnf system-upgrade download --releasever=30

# Reboot and start the upgrade of packages
dnf system-upgrade reboot

# Cleanup after successful upgrade
dnf system-upgrade clean

If this is not your first upgrade on the machine, it might also be a good idea to cleanup some of the installed packages BEFORE the upgrade, so that the process goes faster, skipping unnecessary downloads and upgrades. Here are a few suggestions:

# List all installed RPMs by size
rpm -qa --queryformat '%{size} %{name}\n' | sort -rn | less

# List all packages from earlier Fedora releases
rpm -qa | grep -i fc28

How to disable IPv6 on CentOS / RHEL 7

Sometimes I miss the good old days …

Recently, I had an issue with one of the servers, where a bunch of services were attaching to IPv6 ports instead of the IPv4 ones. Rather than editing the configuration of each of these services, I wanted to simply disabled IPv6 on the machine.

In the old good days, things like these were easily done via the sysctl. I surely tried that option too, but it wasn’t enough. Turns out, the proper way these days is to do this via Grub, as per this blog post:

  1. Vim /etc/default/grub file
  2. Change: GRUB_CMDLINE_LINUX=”ipv6.disable=1 crashkernel=auto rhgb quiet”
  3. Regenerate and overwrite Grub config with: grub2-mkconfig -o /boot/grub2/grub.cfg
  4. Reboot.

That sounds a bit too excessive. But then again a reboot is also required for the proper disabling of SELinux, so I guess its’ fine.

Configuring HA Kubernetes cluster on bare metal servers

Alexey Nizhegolenko has an excellent 3-part series of articles that cover the setup of Kubernetes on the bare metal servers. Here are the parts:

If that’s not a hand-holding walk-through guide, then I don’t know what is.

Unix History Repository

Evolution of unix-history-repo (Gource Visualization) video shows how the UNIX operating system was born and how it matured over time. The video is based on this GitHub repository, which combines the following:

The project has achieved its major goal with the establishment of a continuous timeline from 1970 until today. The repository contains:
– snapshots of PDP-7, V1, V2, V3, V4, V5, V6, and V7 Research Edition,
– Unix/32V,
– all available BSD releases,
– the CSRG SCCS history,
– two releases of 386BSD,
– the 386BSD patchkit,
– the FreeBSD 1.0 to 1.1.5 CVS history,
– an import of the FreeBSD repository starting from its initial imports that led to FreeBSD 2.0, and
– the current FreeBSD repository.
The files appear to be added in the repository in chronological order according to their modification time, and large parts of the source code have been attributed to their actual authors.

This is mind-blowing! So much work, so many people, so little recognition. The world wouldn’t be the same without all that, and yet the masses think that Steve Jobs or Bill Gates were the greatest computer geniuses in the history of mankind. Sad…

But the video is beautiful. It desperately needs some music though.