Recent Articles
My Take on Synology as a Sys-Admin
I first dipped my toes into using Synology though their top-notch NVR system. I had eight cameras at the time around my house and it worked very well for myself and my family, though paying $40-$50 a license per camera can get expensive fast. I didn’t really use it for its other features for years until a fellow sysadmin introduced to me the functionality that it had offered him as he did large project like setup NVR and NASes for the city and school systems.
read more
Giving New Life to a Chromebook
I am the new owner of a hand-me-down Chromebook that to me, now has a new reason to exist. No longer is it tied to Google and their tracking and ads policies. Rather it is its own system now, complete with Arch Linux/EndeavourOS on i3-wm.
I first purchased this laptop for my oldest child who required something for online school during the Covids and I landed on the Lenovo S340-14. Inside it has a Celeron N4000 dual core/dual hyperthread CPU, 4GB of RAM, 64GB of storage, and a 14 inch TN screen at 1920x1080 and 220 nits.
read more
Running Asahi Linux on my Macbook Air M1
Even though this device is not meant to be running Linux, I’m going to be tough during this review.
Setup process It’s extremely easy. Enter in the script, read what its outputting, click a few keys, voila, you have a running Asahi Linux system that dual-boots with MacOS. Ok, its not as simple as that but one through ten where 10 is installing Gentoo its like a two. The only gotchas that occur are when you don’t read the final output and your system goes into an infinite boot loop which is remedied by simply resetting and holding the power button until it tells you it is booting into config mode.
read more
The Reasons I Keep Going Back to MikroTik
I have been using MikroTik (my-crow-tick or me-crow-teek), or however you want to pronounce it, for several years now and I just keep coming back to using it. MikroTik, for the uninitiated, can be quite a difficult system to learn and use. There are quite a bit of gotchas that can bite you along the way and even now, some things can still trip me up if I’m not paying attention to what I’m doing.
read more
How to Upgrade Gitea
Updating gitea is a simple as replacing the binary in /usr/local/bin/gitea.
Stop the gitea service $ sudo systemctl stop gitea
Move the current binary from gitea to gitea.old just in case things break. $ sudo mv /usr/local/bin/gitea /usr/local/bin/gitea.old
Use wget to get the the current version: example -> https://github.com/go-gitea/gitea/releases/download/v1.20.2/gitea-1.20.2-linux-amd64. This is not the latest version, this is just an example. cd ~/Downloads && wget https://github.com/go-gitea/gitea/releases/download/v1.20.2/gitea-1.20.2-linux-amd64
Change the name of the file from gitean-x.
read more
My MikroTik Firewall Rules
I wanted to show a little firewall rule that I setup that will allow an entity to attempt to login via SSH or Winbox and have them locked out for 21 days after so many attempts. You can tweak this to allow for more attempts and or have them locked out indefinably. This might be considered a tar pit for those that know that term except this is a manual tar pit that acts a little differently than the one MikroTik has built-in.
read more
How to Sync AntennaPod with Nextcloud | Part 2
I have basically gone this whole entire setup just to get synchronization on AntennaPod and my phone/devices. Is it worth it? Not really as you can do the same with exporting the backup the official AntennaPod to another phone or use an OPML file to do the same for other podcast clients, but its a fun project.
Now that we have Nextcloud up and running now we can install the GPodder Sync app.
read more
How to Sync AntennaPod with Nextcloud | Part 1
Part 2 - Still mostly a work in progress.
After much research and trial and error I have found the gpodder implementation to be very terrible. The only known way to get synchronzation across devices is to setup a nextcloud server and install the plugin/addin gpodder. The other ways that I have tested but could not get any to work due to broken links and or not enough information are with micro-gpodder-server and gpodder2go.
read more
Using Perl-Rename For File Substitution
I tried to use sed to rename filenames but found it rather cumbersome. sed is great when used to edit the content of a file which you can find some examples I created here, but I found this handy program that can do the same but for filenames instead.
Installed on my Arch, BTW, system I already had the program called rename which is not the same as the one we need called perl-rename.
read more
Pixel 4 on GrapheneOS EoL:
Editor’s Note GrapheneOS has placed the Pixel 4 line in legacy extended support which is great news as I believe many people complained and or threw money at the GrapheneOS creators.
Unfortunately, my Pixel 4 XL that I have been using with GrapheneOS for around two years now is End-of-Life. All the Pixel 4 range except the Pixel 4a(5G) will no longer be getting any extended support nor security updates as of Oct 1, 2023.
read more
Two-Factor Auth and/or Passwordless Login on Arch Linux Using u2f Physical Keys
Credit Where Credit Is Due I used a lot of https://old.jamesthebard.net/archlinux-and-u2f-login/ config but then tweaked it and added a litle more explination as his entry was from 2017~.
Let’s Start the Rant I have always wanted a way to get away from always having to type in password to login or use sudo. There are security concerns by allowing this type of login, one is the fact that anyone who possesses my key could then login and run as sudo, also is the factor that with some tweaking you can make it only allow for key entry via u2f.
read more
Web Scraping for Preservation's Sake
Due to the higher complexities of running a modern website or blog securely or rather, for making it easier for people via CloudFlare and the like, I have found that when one of those main sites are down, again like CloudFlare, sites that rely on their DNS redirecting and whatnot, go down too. Many blogs that I follow are starting to jump on that band-wagon which is annoying since it can be quite a bit of time for a site to return to working order whether it was on CloudFlare’s side or the blog owner.
read more
How to Remove the DRM on Amazon Audible files
Editor’s Note: When I first published this page the https://audible-converter.ml/ link was still working. As of Aug 03, 2023, the link is still broken. I will keep it here for future reference but I found another way to get the aax hash so I will be showing how to do that below.
As Amazon continues to get bigger and bigger their collection of books, music, and audio books will eventually cause issues with publishers and authors.
read more
Vim Substitution
vim substitution is one tool any advanced vim user should know. Basically, vim substitution is similar to search and replace used on other file editors but vim goes much further than just searching and replacing files and characters. For anyone who creates bash scripts and edits a ton of config files like myself, will attest to the need to comment and uncomment many lines at a time.
I’ll start with the basic uses of substitution and go into the more meaty commands as we go along.
read more
AntennaPod Has To Be My Favorite App Right Now
After hacking my Amazon Audible key which can be found in a previous post here: https://blog.wretchednet.com/post/hacking_aax/, I was on the hunt for an audiobook player that was OpenSource and simple to work with.
My search for anything on Android begins with F-Droid, an OpenSource app “store”, that has tons of OpenSource apps made by awesome people. Most of these apps are less bloaty and don’t track your usage. Some are labeled as having Anti-features which conveniently show how they may do things like track and or require access to your files.
read more
Auto Screen Lock With Suspend and Resume in i3 With Systemd
After using i3-wm, formally known as i3-gaps, for several years on my personal workstation I have not really needed to use the i3lock features that often due to my workstation being in my office where no one else touches it. They wouldn’t know how to use it in they did try and mess with my workstation. But now that I am using my same i3 config across more systems including my work computer where I now use it manage and maintain the network and servers of my work, I began looking for ways to make my computer more secure.
read more
Data Hoarding in an RV
I like to data hoard but I don’t take it the extreme. I am able to prune things I really don’t need. Living in an RV doesn’t help with having excess. In fact part of the liberating thing of the RV life is to get rid of things that we don’t really need. Believe me it was hard giving up on my networks, and servers, server racks, and full tower PCs, but going miniature and finding out what you really need is freeing.
read more
My Thinkpad Woes
Maybe its my fault but my latest hardware purchase a Lenovo Thinkpad X1 Extreme Gen4 has been nothing but issues for me. Lets start with the hardware. I thought purchasing a badass laptop with a 4K display, RTX 3070 mobile, a 16:10 aspect ratio, and all the other great aspects that a powerful laptop is known for would translate well into a beast of a machine that can handle anything I give it.
read more
Use Tailscale to Connect over CGNAT Devices (ie., SpaceX, Verizon, Tmobile, etc.)
EDITOR’S NOTE – 08-07-2023 – This article has been updated to fill in missing info and explain better some misunderstood concepts.
For those of us using SpaceX satellite internet, we have had a great means to have internet in virtually any location now, but it does come with some caveats. One major one is the fact that SpaceX satellite networks are CGNATed (Carrier grade NAT). For those that don’t know what that means, NAT, which is used by virtually any router/modem to redirect an internal network (ie.
read more
What's in a name... WretchedNet.com
For someone who uses the name net in their domain name for their blog, I don’t really post many networking tips or information. True, networking is not my true passion but after running the networking and systems for the business I work for, for 5 years now, I am deciding to change that and add some networking flare to my blog.
I have used several brands of hardware ranging from the ultra cheap to the the mid-level business switches and firewalls.
read more
How Linux Can Free You
I’ve been a user of Linux since 2011. My brother-in-law was the one who introduced me to Linux and more specifically, Ubuntu. Since then, I have loved every minute of it. Even though I don’t use Ubuntu as my daily driver machine, but I do use it and Debian for servers, I am eternally grateful for him showing me this entire different world of computers. Sometimes learning new things can be frustrating, and believe me there is a steep climb atop the Linux mountain, but once you reach a certain point you just cannot fathom life without it.
read more
The Watch Command
The watch command is used when you want to have a program run every so many seconds that you define. I often use it to see the stream of files that are being transferred or for checking the status of scripts while I test them.
Running The Watch Command Here is a common way that I use watch after I have run rsync just to make sure things are going the way they should:
read more
Sometimes You Just Need to Reboot Your System
If you ever have an issue with Arch Linux it could be due to a kernel issue. Due to Arch Linux’s rolling release nature, an update usually comes with a new kernel. Due to the mismatch between what you are running and what Arch Linux is now looking for, various things can stop working.
For me this specifically was the OS would not detect any new USB HDD I had just plugged into my computer.
read more
i3-wm Advanced Lessons
After using i3-wm (which I will call i3 from here on out) for over 5 years now, I have pretty much got it almost exactly how I like it. For reference here is my latest i3 config which can be found at https://git.wretchednet.com/wretchedghost/i3-wretchedbox This config might change here and there so check often as some things might have been updated since this post.
Today’s lesson will revolve around some advanced tweaks to add to your config for a more finely tuned system on i3.
read more
Sweet ffmpeg Script to Speed Up Convert Times with AMDGPU
My current specs can be found here: https://wretchedghost.com/about.
After pulling all the photos and videos from my wife’s iPhone I soon ran into an issue where I found all of her videos were a MOV format. Normally this is not an issue due the fact I can use VLC which can play anything I give it but other software, in this case Synology Photos, would not play this at all on the computer.
read more
WretchedGhost's Arch Install Guide
Editor’s Note Here is a guide of my super simple install of Arch Linux using a fork of Classy Girraffe’s that users LUKS, ext4, GRUB2, swapfile, and tmpfs. It can be found here. I also have my i3 dotfiles that you can check out here.
This guide does not hold your hand so you will either need to research a few things you do not know or you must already know what commands and flags are needed when presented.
read more
Mounting Mulitple Drives at Boot Time using LUKS (dm-crypt)
Mounting more than just the root partition at boot using LUKS/dm-crypt is a little more complicating than setting up just the one. Rather than just placing your UUID of the root partition in the /etc/default/grub file you have to go through several more steps. Follow along as I describe a simple way to get more than one partitions/disks mounted at boot time.
When you might not want mount-encrypted drives at boot.
read more
The Frailties of mdadm RAID
PSA!!!
As a homelabber I have used several filesystems across many machines. When I first began the simplest was EXT3 and its predecessor EXT4 is still the simplest journaling file system around. After a while I started to look for redundancy via mdadm’s RAID on Linux. From then on I had RAID arrays usually consisting of RAID1 or mirror on most of my systems whether it be on HDDs or SSDs.
read more
Gitea Setup and Install on Ubuntu 20.04 and Others
After an exhaustive exercise of finger tapping on my keyboard and several attempts to clear my head by walking away from the computer, I have finally setup a Gitea instance. Following the how-tos online seemed simple enough. Follow the steps, install a user, setup permissions, download a file and bam you are good to go. But that is the furthest from the truth for my experience. I have followed what seemed to be ten different how-tos that somehow seem to differ even between the same distro install.
read more
bmon CLI Network Traffic Viewer
In my ever continuing effort to use the command-line more, one tool that allows any command-line-junky to view their network traffic in real time is called bmon. It can be installed via any package manager: ie, apt, pacman, portage, etc.
read more
Test HDD, SSD, and USB Read/Write Speeds with dd
I have found a fancy way to test the speeds of my media devices by using the dd tool. For those that don’t know what the dd command stands for or does, Disk/data Duplicator is a tool that was used in the old BSD/AT&T days but still has great functionality today.
Mostly dd is used for writing a .iso to a USB to be used to boot into a Linux distro or what have you.
read more
Setting a GTK Theme from Dark to Light
After setting up my latest theme based on the vimix-dark-amethyst on my i3-gaps I have grown to love it. That being said I prefer a light theme when it comes to writing in LibreOffice and Obsidian. I’m old school in the fact that I used microsoft word for school growing up and the white and bright theme is what my eyes prefer to use when writing more than a few sentences.
read more
Vim Plugins Setup
As of right now I have been using pathogen as my vim plugin manager for a few years now. It took a little setup but is massively trivial to add new plugins or bundles as pathogen calls them.
My current vimrc and vim files can be found at my github vim repo.
My .vimrc file is currently sitting at 182 lines but most of those are comments. The most important thing to setup pathogen is by adding execute pathogen#infect() somewhere in your .
read more
Weird Issue with Tailscale and How to Fix it on Arch Linux
On my distro of choice, Arch BTW, I had a weird issue where I couldn’t find a proper solution for. My Tailscale would not let me turn it on and would give me an error where the server and the installed version were mismatched.
After doing some research I found that the backend, the installed version, and the CLI version must have the same versions. I did not find a way to choose a previous version other than the git version which is actually newer than the one you get with tailscale through the AUR.
read more
Latest MakeMKV Broken, Downgrade Needed
As of 20220926, MakeMKV is broken on Arch Linux due to glib and various other files being updated in Arch but not in MakeMKV. To fix this issue which shows up as a “Fatal error”, you must install downgrade from the AUR.
yay -S downgrade Once that is complete you will need to downgrade a few files.
sudo downgrade glibc=2.35-6 lib32-glibc=2.35-6 gcc-libs=12.1.0-3 gcc=12.1.0-3 The main AUR Arch Linux page for MakeMKV show the same process found here: https://aur.
read more
Bringing Rsnapshot Back From the Dead on Debian
For those of us who use rsnapshot, moving to another backup solution is really not a pleasant thought. Debian 11 Bullseye brought along new features, updated packages, and a new kernel. Unfortunately it also dropped support on some packages, namely rsnpashot. This was done, I’m sure with a purpose to keep packages that are still being developed running in the latest distro. And since Debian usually runs for about two years between major update version it was made that rsnapshot was to not be added the the Debian 11 release due to rsnapshot not being maintained for two years.
read more
Reduce SSD Wear When Running ZFS: Plus Extra Tips
A few tricks to reduce SSD wear when running ZFS:
Remember to enable autotrim option on the pool. You should also setup a cron job to run zpool trim tank0 weekly or bi-weekly. Replace tank0 with your tank/dataset name. zpool get autotrim tank0 # check trim zpool set autotrim=on tank0 # enable trim on tank0 zpool trim tank0 # run trim manually Use a large ashift of at least 12 but 13 is better.
read more
Proxmox Backup
After running Proxmox on my server in my homelab as well as for work for several years now, I have looked into ways to backup the essential files for an easy reinstall if and when needed. Since most Proxmox setups run on bare metal hardware recover is a little more involved than just creating a snapshot or backup and reverting to an earlier point in time.
I often backup the files with rsnapshot, but sadly Debian 11 has dropped rsnapshot from their repo due to the fact that rsnapshot hasn’t been maintained in over two years.
read more
Custom Git Commit Push Alias
I normally don’t create nor use tons of aliases in my .bashrc file. I have a few that tweak how grep and ls show color in the prompt and others where I can change directory by typing .. or … which perform cd ../ and cd ../../ respectively, but because of my roaming nature, where I bounce around from one computer/server to another where it may or may not have a configured .
read more
That's What I Sed
sed (Stream EDitor) is a super simple program that can be used to replace text for another in a file. Let’s first view the contents of the file greetings.txt with cat.
$ cat greetings.txt hello wilkommen hola We can see that the words hello, wilkommen, and hola exist in the text file greetings.txt.
If we wanted to swap out hello for bonjour using sed we could run:
$ sed -i 's/hello/bonjour/' greetings.
read more
Best ZFS Snapshot Scripts
I came upon a very powerful and simple script when I was searching for a good way to automate the ZFS snapshots. I have found this to the best one so far in terms of how I can edit the script and tweak it for my use very easily. I know that other scripts and programs exist such as sanoid by Jim Salter, which you can find at his GitHub page here jimsalterjrs/sanoid, but I have found iceflatline’s script to be quite good at what it does which is a basic ZFS snapshot creator.
read more
Backing Up to Google Drive Using Rclone
After I recently setup rsnapshot as my backup solution, which can be found here https://blog.wretchednet.com/post/rsnapshot/ I started looking at options on how to remotely backup my workstation. I used Backblaze for a while but I wasn’t too happy with their interface. I looked at getting another cloud backup solutions but each one would either cost quite a bit more per month and or had similar or worse user interfaces.
I decided to go with Google Drive since I’ve had it for years, its free for up to 15 GB, and the interface is simple to index and use.
read more
Git Init Pull
Creating a new git repo is a little more involved than one that is already setup but here are the simple steps to get one rolling. I prefer to use SSH over HTTPS due to security and ease of use from the command line.
Setup We need to first do a few things to make a commit as easy as possible.
Create a ssh key if you haven’t already. This will be placed in ~/.
read more
Using Arch Linux Downgrade to Fix Broken Programs
After performing a new Arch install I found that the 1.6.1 version of rofi was not available to be installed due to it never being installed previously. After doing some research I found a cool packaged called downgrade from the AUR. I installed it via yay and ran it:
$ yay -S downgrade $ sudo downgrade rofi Which produced a ton of versions to choose from.
I chose the 1.6.1 version.
read more
Replace HDD in Server Chassis on Linux
In this scenario I want to replace a HDD in my ZFS tank0 pool. The pool has grown from 4 TB across 3 HDDS to 8TBs. I have swapped out two of the HDDs in the pool but I’m needing to swap out the last one to finally start using 8TB of storage where right now I’m stuck at 4TB.
Now, I have several things I can do to swap out this hard drive but since I didn’t use the /dev/by-disk or /dev/by-id labels and all of my HDDs in my zpool pull are labeled as /dev/sdx, I don’t know which one it currently is I’m needing to replace.
read more
Save a File as Sudo Without Exiting Vim
I have often opened a file which I did not first run as sudo in vim, edited the file, then to only find out that it is in read-only mode. I would then have to close the file then re-open it as superuser then make the changes needed. I found this to be very frustrating and found out there are several ways to get the file edited by inserting commands in command-mode using vim.
read more
Rsnapshot
I think of myself as an advanced Linux users. I have been using it exclusively for over 10 years plus and as a homelab enthusiast and a network/system administrator for my job, I use it every single day. But I hadn’t taken the time to sit down and really give rsnapshot a decent try. I have worked with rsync and scripting during all of this time but now that my needs are expanding, rsync is not keeping up with the scale.
read more