Welcome on my blog, enjoy!

DevOps blog about Linux configuration, Contenerisation, Automation, Security

[Photo by Markus Winkler from Pexels](https://www.pexels.com/photo/wood-dirty-rope-door-3828944/)

Creating fully encrypted ZFS pool

What I want to do? I use my pool to securely store backups, archive my old documents and keep huge family’s photo library. I have new disks. They were tortured with badblocks, so they’re ready to create ZFS pool. I’ve read few documents about different approaches 1 2 3. I wanted to be sure if anything changed during past years. One of articles recommends mirroring over RAIDZ. Resilvering is faster, at the same time putting IO less stress on whole pool....

2021-11-22 · 5 min

Shucking WD Elements 14TB

I used to have RAID (or at least some variation of it) for my main storage. For redundancy, in case of disk failure. I started with some crazy LVM mirrors done on two disks of different size. Sync job was starting on every boot 😄 Then came time for RAID5 on mdadm + LVM for volume management. It was working nice until the moment when disks became bigger. Long array rebuilds or checks, required my PC to stay turned on overnight just to validate if stuff works still....

2021-11-12 · 6 min
[Photo by Christina Morillo from Pexels](https://www.pexels.com/photo/eyeglasses-in-front-of-laptop-computer-1181253/)

Automatically add ticket ID to every commit message in Git

I don’t know how it is in your company, but in mine it’s considered a good practice to add ticket numbers to commit messages. It allows to easily determine why something was changed, etc. Makes sense, but this also means, that I should be adding this ticket to every message… And this doesn’t make sense for me. I will accidentally avoid it from time to time or make a lot of typos....

2021-11-09 · 2 min

Resize images from command line on MacOS

I was updating my blog and needed to generate few variants of images, in different resolution. Option 1 - sips There’s simple, builtin tool sips, that can be used for simple resizing 1: Resize single image sips -Z 36 orig.png --out static/favicon36x36.png -Z - maintain image aspect ratio 36 - maximum height and width It can be also used for batch image processing:...

2021-11-07 · 2 min

Homebrew - uninstall formula with dependencies

I use brew extensively on MacOS. It’s just as convenient as many Linux package managers. What I don’t like, it leaves dependencies after removal of formula. There’s simple way to clean it up by running one command 1. Uninstall with dependencies brew uninstall FORMULA brew autoremove .notice{padding:18px;line-height:24px;margin-bottom:24px;border-radius:4px;color:#444;background:#e7f2fa}.notice p:last-child{margin-bottom:0}.notice-title{margin:-18px -18px 12px;padding:4px 18px;border-radius:4px 4px 0 0;font-weight:700;color:#fff;background:#6ab0de}.notice.warning .notice-title{background:rgba(217,83,79,.9)}.notice.warning{background:#fae2e2}.notice.info .notice-title{background:#f0b37e}.notice.info{background:#fff2db}.notice.note .notice-title{background:#6ab0de}.notice.note{background:#e7f2fA}.notice.tip .notice-title{background:rgba(92,184,92,.8)}.notice.tip{background:#e6f9e6}.icon-notice{display:inline-flex;align-self:center;margin-right:8px}.icon-notice img,.icon-notice svg{height:1em;width:1em;fill:currentColor}.icon-notice img,.icon-notice.baseline svg{top:0.125em;position:relative} Info...

2021-11-05 · 1 min


I’ve build new PC - it’s based on Asus ROG STRIX Z590-E GAMING WIFI motherboard. Generally, I’m quite satisfied, but it have one irritating downside - after each UEFI BIOS upgrade, it’s silently resetting some of settings. Let me note, what I want to have there: Ai Tweaker (use my RAM capabilities) AI Overcloack Tuner -> [XMP I] DRAM Frequency -> [DDR4-3600MHz] DRAM CAS# Latency -> [16] DRAM RAS# to CAS# Delay -> [19] DRAM RAS# ACT Time -> [39] DRAM Voltage -> [1....

2021-10-30 · 2 min

Official CentOS 8 Stream Docker image finally available!

Finally, they’re available! Wait a moment.. Actually they’re available for few months, just nobody published information about moving them to quay.io and dropped poor guys using hub.docker.com without any updates! Yes, that how they did! I found new place accidentally, reading some news about CentOS Stream 9 on their blog. There was reference to CentOS 9 Stream dev builds of Docker images and I found “missing” stream and stream8 tags too....

2021-07-25 · 2 min

How to remove geo-localization/EXIF data from photos

I wanted to share publicly some photos, but I performed them with navigation enabled so they contained accurate localisation of my house. I wanted to remove EXIF data GPS tags, my phone type and other irrelevant stuff. TL;DR You will need imagemagick installed (use apt/yum/dnf of whatever you have there): Install imagemagick sudo apt install -y imagemagick To remove them just use: Strip EXIF data mogrify -strip image....

2021-03-05 · 1 min

How to run JMX monitoring in Docker image?

It’s sometimes useful to quickly connect to JMX console, to checkout what’s going on in your application, but the whole thing get’s tricky if you’re running your app in a container. I need it from time to time and I keep myself few times searching for set of params below: ~/2021/02/how-to-run-jmx-monitoring-in-docker-image/ java \ ... -Dcom.sun.management.jmxremote \ -Dcom.sun.management.jmxremote.rmi.port=${PORT1} \ -Dcom.sun.management.jmxremote.port=${PORT1} \ -Dcom.sun.management.jmxremote.local.only=false \ -Dcom.sun.management.jmxremote.authenticate=false \ -Dcom.sun.management.jmxremote.ssl=false \ -Djava....

2021-02-19 · 1 min

CentOS 8 Stream Docker image

We’re all divided with recent decision to focus on CentOS Stream, which essentially means that stable, professional distro will turn into rolling release now. Also CentOS board members don’t gave us more confidence for the future. I don’t want to be totally sceptic, I would like to test it on my own and only then, decide if it’s stable enough. But I work mostly with Docker containers and there are no official Docker images with Stream variant....

2021-02-11 · 2 min