Unix tools & tips
The command line interface (CLI) programs/tools found on UNIX-like (*NIX) systems are among the most useful tools available to system administrators. CLI tools allow a system administrator to handle the *NIX systems either remotely or locally without needing to install Graphical User Interface (GUI) packages.
Almost twenty years ago, I bought two O’Reilly books: “sed & awk, second edition,” written by Dale Dougherty & Arnold Robbins, and “Mastering Regular Expressions,” written by Jeffrey E.F. Friedl. These two books were printed in the late ’90s, and I bought them in 2004. I remembered them recently when my co-workers and I held a few study sessions to learn regular expressions. When a page and chapter are mentioned in this post, I’m referring to the editions of these books printed in that particular year.
In this blog post, I’ll detail some common use cases I encounter day to day, as well as some related tools that help me handle them.
During my regular work as a system administrator, I usually use sed (“stream editor”) to do string replacement across files and awk for log files or file analysis with arbitrary strings …!-->
Rocky Linux 9 at Hetzner Robot Made Quick and Easy
Image by Jeffry Johar
In my last blog post, I shared my experience of installing Rocky Linux 8 on my Hetzner robot server and subsequently upgrading it to Rocky Linux 9.
Rocky Linux project manager Brian Clemens said that method is not recommended and suggested using a boot kickstart for an automated installation. Thanks, Brian!
Despite my attempts to utilize kickstart, I encountered difficulties in booting my NVMe disk. During this process, I discovered another workaround for installing Rocky 9 using the installimage script. This method is also experimental, just like the previous one.
Access the rescue mode (refer to my previous blog post if you need guidance).
Copy the existing Rocky Linux 9 image to Rocky Linux 8 and place it in the root directory with the following command:
cp /root/images/Rocky-91-amd64-base.tar.gz /root/Rocky-87-amd64-base.tar.gz
The filename should adhere to the required naming convention for the installimage script to function correctly.
installimageand select the Custom Image option.
Configure the disk settings as required, and at the end of the script, select the image accordingly.
cloud hosting linux sysadmin redhat
Migrating Rails 6 React to Rails 7 React
CasePointer’s disease reporting portal is built on React and Rails 6, and it’s time for an upgrade to Rails 7. This blog post will cover the steps, benefits, and challenges of migrating from Rails 6 to Rails 7, and offer valuable insights into the world of Ruby on Rails.
For those who are not familiar, Webpacker is a Rails gem which is a wrapper around the webpack build system that provides a standard webpack configuration and reasonable defaults.
Steps for migrating Rails 6 React to Rails 7 React
To migrate a Rails 6 React application to Rails 7 React, follow these steps:
1. Update the Rails Gem in the Gemfile
In your application’s Gemfile, update the Rails gem version to Rails 7:
-gem "rails", "~> 6.1.4" +gem "rails", "~> 7.0.0"
2. Upgrade Rails packages
Upgrade the Rails packages using Yarn:
yarn upgrade @rails/actioncable --latest yarn upgrade @rails/activestorage --latest
3. Run the Rails update task
rails react migration
Photo by Diva Plavalaguna, Pexels license
End Point is pleased to announce CasePointer, the expanded branding of our line of public health systems and services. Before this we referred to it simply by the name of one of its components, EpiTrax.
The name CasePointer more appropriately reflects the broad scope of services we provide within the disease reporting and surveillance sector.
This change coincides with the launching of the dedicated CasePointer website at www.casepointer.com and our participation next week in this year’s conference of CSTE (Council of State and Territorial Epidemiologists) in Salt Lake City, Utah. We will be staffing a booth there on the exhibition floor. Come visit us!
Starting in 2008, End Point helped develop and maintain the TriSano open source disease surveillance system. In 2019 we migrated our customer, the Kansas Department of Health and Environment, from TriSano to a new disease surveillance system called EpiTrax, which was developed by the state of Utah, and is also open source.
This timeline shows those and other key points on our journey:
Due to the need for major additional features and capabilities, especially since the onset of the COVID-19 …
casepointer epitrax conference
Using EndeavourOS as a daily driver
Choosing a new distro
I have been using Manjaro Linux (based on Arch Linux) for my work desktop and Pop!_OS (based on Ubuntu) for my laptop for quite some time now, and wanted to find another Arch Linux-based distro for my daily driver. Rather than aimlessly searching through the hundreds of Linux distros out there, I made several requirements the chosen distro should meet:
- Easy to maintain.
- Has strong community support and stable development.
- Has a Linux Unified Key Setup (LUKS) full-disk encryption option in the installation.
- If possible, the distro of choice should be able to trim down the number of default packages. For example, I am a Gnome desktop user, so I don’t want to install the game packages I won’t use.
I decided to use EndeavourOS. It supports the features that I need: It has a strong community and most of Arch Linux’s documentation/references are still applicable to it, like they are to most Arch Linux-based distros using
The most notable differences between EndeavourOS and Arch Linux are EndeavourOS’s GUI-based installer—we can select between installing XFCE, Plasma KDE, Gnome, and several others desktop environments—as well as …!-->
Let’s talk about CZML, Cesium’s main language for specifying 3D scenes, and how to incorporate external resources such as billboard graphics, material textures, and 3D models into CZML files.
For example, let’s look at how we can include glTF models.
glTF models are composed of multiple files: a single JSON index file along with a variable number of binary buffer files and textures. So, in order to package CZML assets that include glTF models for distribution, you have to read the CZML document itself, then read the referenced glTF files. If they are not binary GLB files, you must also read the glTF files and package all of the files referenced by the glTF models. And if you find this paragraph cumbersome, that’s no accident. Indeed, the whole process is quite cumbersome!
So we are dealing with something like:
If you want to keep the glTF model as a single asset, you can convert the glTF files into binary (GLB) files, and then embed them as base64 data links into CZML.
Another example would be a set of points with billboards, let’s say a couple hundred points with plenty of …!-->
visionport gis cesium
VisionPort: The Future of Tourism Marketing
In a world of rapidly evolving technology, businesses and organizations in the tourism industry must adapt to stay relevant and competitive. VisionPort offers innovative and powerful technological solutions that can help organizations and destinations in tourism enhance the customer experience and reach a wider audience.
By showcasing destinations and providing immersive and engaging content, VisionPort can help agencies stay ahead of the competition through the use of geographic information systems and customized presentations.
VisionPort’s ability to showcase destinations through interactive panoramic views and virtual tours is a game-changer for the tourism industry. By providing immersive and engaging content, potential visitors can get a real sense of what it would be like to experience a particular destination. This can help to spark their interest and inspire them to plan a trip to that location.
With its support for a variety of media types, including panoramic views, photos, and videos, VisionPort enables businesses to create high-quality content that highlights their unique features and attractions. For instance, a resort or hotel can create …
Rocky Linux 9 via Hetzner Robot for the impatient
Update: A Better Way to Install Rocky Linux 9 at Hetzner Cloud
Hey everyone, I wanted to share an update regarding the installation process of Rocky Linux 9 at Hetzner Cloud.
After input from Brian Clemens of the Rocky Linux project and some further exploration and testing, I have a more efficient and straightforward method to get Rocky Linux up and running on the Hetzner platform. You can check out the new method in my second blog post here.
About Rocky Linux
Rocky Linux is a free and open-source community-driven operating system designed to be a drop-in replacement for Red Hat Enterprise Linux (RHEL).
Rocky fills the gap left by the end of CentOS, which was a popular Linux distribution based on the same source code as RHEL but offered as a free alternative with community support. CentOS Stream is their new offering, but it is just different enough to not be entirely compatible with RHEL.
Another alternative is AlmaLinux, and everything mentioned here applies to Alma with some adaptation.
Rocky 9 on Hetzner
Hetzner is a popular hosting company offering bare metal and virtual servers at very affordable prices. It is based in …
cloud hosting linux sysadmin redhat