lzop by the imitable Markus F.X.J. Oberhumer is an infeasibly-fast file compressor. This post is a thank you for its existence, an anniversary update, and my discovery of default operation that all such tools should be doing.
I haven’t done a pointless introduction paragraph in ages. And the next section is equally pointless.
Mikuru Beam Dynapacks
For some reason, every time I discuss file archiving and compression, I’ve included images of Asahina Mikuru from The Melancholy of Haruhi Suzumiya (© Kyoto Animation). Presumably because her moebeam can similarly compress files.
Anyway, we’re in a Retina™ world now, so I’ve sourced the original image and uploaded a higher-resolution version for those of you using recent browsers that support srcset.
That may qualify as the longest digression I’ve ever had on this blog. Not a small feat, because mine are more medium-sized.
Moving on. lzop had its tenth anniversary last month, announced in typically understated fashion on the project’s homepage:
Happy 20th Anniversary Release! (Aug 2017)
Congrats to Markus for this huge achievement. We should pay omage to this by including in every *nix distribution. The fact it’s on my list of essential packages in Ansible because of its lack of default availabilty is a travesty.
A desirable default operation
And now, the thing I learned yesterday. As if we needed another reason to love lzop it, you don’t need to specify
-k to keep the original file after compressing:
$ lzop -v file ==> compressing file into file.lzo $ ls -1 ==> file ==> file.lzo
lzop(1) man page:
-k, –keep Do not delete input files. This is the default.
This should the default for all tools like this. File deletions are destructive operations that should always be initiated by the user.