McGarrah Technical Blog

Generate Git Timesheet from Commit Logs

· 10 min read
A Python tool that generates timesheets from git commit history — because your commits are already timestamped and reflect when you were actually working.

Enabling SMART Monitoring on Seagate USB Drives

· 5 min read

USB drives are notorious for hiding their SMART data behind finicky USB-to-SATA bridges. If you’ve ever tried to check the health of a Seagate USB drive and gotten frustrated with “unsupported field in scsi command” errors, you’re not alone.

After wrestling with several Seagate drives in my homelab, I finally figured out the magic incantations needed to get SMART data working. Here’s how to do it properly.

Update (2026-02-03): This article has been superseded by USB Drive SMART Updates: Fast-Track to the GRUB Solution which includes updated device IDs and production experience from my Ceph cluster deployment.

Note: The decision to not allow this in Linux as a default was done for good reasons. You are playing with fire as some drives behave erratically. I have not experienced this with recently purchased USB drives, but older ones did have quirks and issues. So buyer beware.

Dell Wyse 3040 eMMC Storage Health Monitoring

· 5 min read

I found out awhile ago that eMMC storage is a different thing entirely when it comes to health monitoring. This is especially true when you’re booting from it like on the Dell Wyse 3040s of which I have several in my homelab. The goal is to get some status information on the eMMC storage health, but the usual SMART utilities don’t work on eMMC.

root@pve1:~# smartctl -H /dev/mmcblk0 -d auto
smartctl 7.3 2022-02-28 r5338 [x86_64-linux-6.8.12-1-pve] (local build)
Copyright (C) 2002-22, Bruce Allen, Christian Franke, www.smartmontools.org

/dev/mmcblk0: Unable to detect device type
Please specify device type with the -d option.

Turns out eMMC has its own health monitoring system that’s actually pretty useful once you know how to access it. I figured I would share my experience since it took some time to figure out. Maybe this will help someone else.

Optimizing Ceph Performance in Proxmox Homelab

· 7 min read
Performance tuning Ceph on USB storage and constrained hardware — mClock configuration, IOPS optimization, and the realities of USB 3.0 as a storage tier.

Posts