Tales From The Sysadmin: Dumped Into The Grub Command Line

Today I have a tale of mystery, of horror, and of hope. The allure of a newer kernel and packages was too much to resist, so I found myself upgrading to Fedora 30. All the packages had downloaded, all that was left was to let DNF reboot the machine and install all the new packages. I started the process and meandered off to find a cup of coffee: black, and darker than the stain this line of work leaves on the soul. After enough time had elapsed, I returned, expecting the warming light of a newly upgraded desktop. Instead, all that greeted me was the harsh darkness of a grub command line. Something was amiss, and it was bad.

(An aside to the reader, I had this experience on two different machines, stemming from two different root problems. One was a wayward setting, and the other an unusual permissions problem.)

How does the fledgling Linux sysadmin recover from such a problem? The grub command line is an inscrutable mystery to the uninitiated, but once you understand the basics, it’s not terribly difficult to boot your system and try to restore the normal boot process. This depends on what has broken, of course. If the disk containing your root partition has crashed, then sorry, this article won’t help.

In order to get a system booting, what exactly needs to happen? How does booting Linux work, even? Two components need to be loaded into memory: the kernel, and the initramfs. Once these two elements are loaded into memory, grub performs a jump into the kernel code, which takes over and finishes the machine’s boot. There is one more important detail that we care about — the kernel needs to know where to find the root partition. This is typically part of the kernel parameters, specified on the kernel boot line.

When working with an unfamiliar shell, the help command is a good starting point. grub runs in a very limited environment, and running the help command scrolls most of the text off the screen. There is an environment variable that helps out here, enabling output paging:set pager=1.
Continue reading “Tales From The Sysadmin: Dumped Into The Grub Command Line”

Wipe Your Nozzle To Avoid Stringing

[Design Prototype Test] likes his Ender 3 printer. There was only one problem. When printing PETG — which is notorious for stringing — the hot end would pick up material and eventually ruin the print. The answer was to mount a cheap Harbor Freight brush somewhere and make the head pass over it after each layer. You can see the video of the design, below.

It sounds as though it worked well and after explaining the concept, he dives into the details of how he designed the fixture and how he mounted it. There’s a lot of good information in there about his particular toolchain and workflow.

Continue reading “Wipe Your Nozzle To Avoid Stringing”

Incredibly Tiny RF Antennas For Practical Nanotech Radios

Researchers may have created the smallest-ever radio-frequency antennas, a development that should be of interest to any nanotechnology enthusiasts. A group of scientists from Korea published a paper in ACS Nano that details the fabrication of a two-dimensional radio-frequency antenna for wearable applications. Most antennas made from metallic materials like aluminum, cooper, or steel which are too thick to use for nanotechnology applications, even in the wearables space. The newly created antenna instead uses metallic niobium diselenide (NbSe2) to create a monopole patch RF antenna. Even with its sub-micrometer thickness (less than 1/100 the width of a strand of human hair), it functions effectively.

The metallic niobium atoms are sandwiched between two layers of selenium atoms to create the incredibly thin 2D composition. This was accomplished by spray-coating layers of the NbSe2 nanosheets onto a plastic substrate. A 10 mm x 10 mm patch of the material was able to perform with a 70.6% radiation efficiency, propagating RF signals in all directions. Changing the length of the antenna allowed its frequency to be tuned from 2.01-2.80 GHz, which includes the range required for Bluetooth and WiFi connectivity.

Within the ever-shrinking realm of sensors for wearable technologies, there is sure to be a place for tiny antennas as well.

[Thanks Qes for the tip!]