What happens when a file gets executed in Linux? What does it mean that a file is executable? Can we only execute compiled binaries? What about shell scripts then? If I can execute shell scripts, what else can I execute? In this article we will try to answer those questions. What involves executing a …
Category: shell
Analyze disk usage with dutree
dutree is a command line tool to analyze disk usage. Features coloured output, according to the LS_COLORS environment variable. display the file system tree ability to aggregate small files ability to exclude files or directories ability to compare different directories fast, written in Rust This tool is a mix between tree and durep, which we already …
Easy sync BTRFS snapshots with btrfs-sync
To complement the last BTRFS tool btrfs-snp (which allows us to schedule snapshots), I would like to share a new tool to synchronize them locally or remotely to achieve efficient data redundancy. With btrfs-snp we can replicate our BTRFS snapshots in a different BTRFS system, and have a second copy of our versioned subvolume in …
Safely flash SD card images with ddsd
I would like to share another wrapper based on the pv command ( because we love progress bars!! ). As part of my work in NextCloudPi, I am constantly copying images to an SD card to test the latest build. The classic Linux way of doing this is by using the dd command # dd …
Schedule BTRFS snapshots with btrfs-snp
To complement the last BTRFS tool btrfs-du, I would like to share a simple script for creating BTRFS snapshots that plays well with cron and systemd timers. This allows us to easily automate snapshot creation. I was inspired by btrfs-snap by Birger Monsen. Usage btrfs-snp can be run manually, or summoned from cron. Invoke without …
Check disk space of your BTRFS snapshots with btrfs-du
Today I want to share a simple way to check the state of our BTRFS snapshots. Usage # btrfs-du /path/ If path is omitted, it will default to / . We can list easily our snapshots, plus have a clear view of how much data they have in common and how much total overhead are …
Copy with a progress bar with cpv
It won’t come as a surprise by now that we love shell progress bars. When we are copying big files it would be nice to have an ETA, progress bar and some feedback, but the cp command doesn’t provide us with this. Of course, we can use rsync to get some feedback of the process, …
A progress bar for the shell
I would like to share this little shell function that I wrote to spice up my shell scripts. It is a simple progress bar that you can launch for a number of seconds, to get an idea of how long there is still to wait. It uses partial Unicode blocks to achieve subcharacter precision. Usage …
Customize your MOTD login message in Debian and Ubuntu
This is a little guide to display dynamic login messages on a Debian system. This is one of those things where the internet has plenty of resources, but they are mostly outdated and contradictory. Even typing man motd in Debian is a sad experience. It is not a difficult thing to do but it can …
Easy passwordless SSH with sshh
This little wrapper for SSH and SCP allows for comfortable management and scripting. It is specifically recommended for developing and testing embedded systems and virtual machines before production, where strong security is not required. Usage Use sshh and scpp exactly as you would use ssh and scp. Instalation Easy install! Paste on your zsh terminal …