The quiet force,Linux.
The heartbeat of modern infrastructure — cloud servers, Kubernetes clusters, desktops, and embedded devices alike. This guide covers the everyday sysadmin skills the KBVE stack leans on: extending storage with LVM, a productive ZSH shell, and the command-line essentials.
Everywhere, often invisible
From the servers powering your favorite websites to the clusters orchestrating entire cloud platforms — understanding Linux means understanding the language of modern computing.
- Storage — resize volumes live with LVM.
- Shell — ZSH with Oh My Zsh and Powerlevel10k.
- Reference — the commands you reach for daily.
On this page
What this guide covers
Essential commands
The quick-reference toolkit — files, permissions, processes, systemd services, disk usage, and search.
LVM extension
Grow partitions, physical volumes, and logical volumes without disrupting a running system — ideal under Proxmox.
ZSH + Powerlevel10k
A faster, more expressive terminal — Oh My Zsh, themes, fonts, autosuggestions, and syntax highlighting.
Permissions first
Most "works for root, not the app" bugs are ownership problems — fix with chown and chmod, not by running everything as root.
Start here
Information
Linux is more than just an operating system, its the quiet force that keeps the modern world running. From the servers that power your favorite websites to the Kubernetes clusters orchestrating entire cloud platforms, Linux is everywhere, often invisible but always essential. Its open-source roots have created a culture of collaboration and curiosity, where anyone can peek under the hood, make changes, and share improvements with the world. Whether you’re deploying containers, managing infrastructure, or just exploring the command line, understanding Linux means understanding the language of modern computing.
This page focuses on two everyday sysadmin skills — extending storage with LVM and setting up a productive ZSH shell — plus an essential command reference for navigating any Linux system.
Daily drivers
Essential Commands
A quick reference for the commands you reach for constantly on any Linux box:
| Command | Purpose |
|---|---|
ls -lah | List files with sizes, permissions, and hidden entries |
cd / pwd | Change directory / print working directory |
cp / mv / rm | Copy, move, remove files |
chmod / chown | Change file permissions / ownership |
sudo | Run a command as root |
ps aux / top | List / monitor running processes |
systemctl status <svc> | Inspect a systemd service |
journalctl -u <svc> -f | Follow a service’s logs |
df -h / du -sh * | Disk free / directory sizes |
grep -r "text" . | Recursively search file contents |
Grow without downtime
LVM
Logical Volume Management (LVM) provides a flexible way to manage storage on Linux, allowing you to resize, extend, or move partitions without disrupting your system. It’s especially useful when running Linux inside virtualized environments like Proxmox, where disk space can be expanded dynamically.
LVM Extension
Section titled “LVM Extension”-
Verify the current layout
Check the existing disks, partitions, and volume groups to understand your current storage configuration.Terminal window sudo lsblk# orsudo fdisk -l -
Grow the partition to fill the disk Assuming your disk is
/dev/sdaand the partition is3, extend the partition to use the new space.Terminal window sudo growpart /dev/sda 3# Alternatively, open an interactive resizer:sudo cfdisk /dev/sda -
Resize the Physical Volume (PV) After extending the partition, update the LVM physical volume to recognize the new size.
Terminal window sudo pvresize /dev/sda3 -
Extend the Logical Volume (LV) Grow the logical volume to use all the available free space.
Terminal window sudo lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv -
Resize the filesystem Expand the filesystem so it can utilize the newly extended logical volume.
Terminal window sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv -
Verify the result Check that the filesystem now reflects the expected capacity.
Terminal window df -h
To extend the ubuntu--vg-ubuntu-lv after increasing the size of a physical volume from Proxmox
For the purposes of simplicity, I’m going to assume that the main volume you wish to extend is /dev/sda3.
- Check the current size with
sudo lsblkorsudo fdisk -l - Run either
sudo growpart /dev/sda 3or usesudo cfdiskto resize the/dev/sda3to max size - Extend the PV volume with
sudo pvresize /dev/sda3 - Extend the LV to 100% with
sudo lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv - Resize the filesystem with
sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
A better terminal
ZSH
The Z Shell (ZSH) is a feature-rich shell that builds on Bash, offering improved autocompletion, better history management, and deep customization through plugins and themes.
It is the go to choice for developers who want a faster, more expressive terminal experience.
-
Install ZSH
Make sure ZSH is installed on your system.Terminal window sudo apt install zsh -y# or on Fedora / RHELsudo dnf install zsh -y# or on Archsudo pacman -S zsh -
Set ZSH as the default shell
Terminal window chsh -s $(which zsh)Log out and back in for the change to take effect.
-
Install Oh My Zsh
Oh My Zsh is a framework that simplifies managing your ZSH configuration and plugins.
Terminal window sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" -
Add the Powerlevel10k theme
Clone the Powerlevel10k theme into your Oh My Zsh themes directory.
Terminal window git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10kEdit your ~/.zshrc and set:
Terminal window ZSH_THEME="powerlevel10k/powerlevel10k"Then reload:
Terminal window source ~/.zshrc -
Install recommended fonts Powerlevel10k uses Nerd Fonts or Meslo LGS NF for icons and symbols.
Terminal window # Quick download and install for Meslo fonts (Mac/Linux)p10k configureFollow the prompts to install the suggested font and tweak your prompt style.
-
Enhance with plugins (optional) You can extend functionality with plugins like:
Terminal window plugins=(gitzsh-autosuggestionszsh-syntax-highlighting)To install:
Terminal window git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestionsgit clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlightingThen reload once more:
Terminal window source ~/.zshrc
Questions
Frequently asked
How do I extend a disk partition on Linux with LVM?
Grow the partition with growpart, update the physical volume with pvresize, extend the logical volume using lvextend -l +100%FREE, then resize the filesystem with resize2fs (EXT4) or xfs_growfs (XFS). Verify with df -h.
What is LVM in Linux?
Logical Volume Management is a storage abstraction layer that lets you resize, extend, or move volumes without repartitioning. It is especially useful in virtualized environments like Proxmox where disk size can grow dynamically.
How do I change my default shell to ZSH?
Install ZSH with your package manager, then run chsh -s $(which zsh) and log out and back in. Many users add Oh My Zsh and a theme like Powerlevel10k for autocompletion, history, and prompt customization.
What is the difference between ext4 and XFS when resizing?
Both are Linux filesystems, but they grow with different tools. Use resize2fs to expand an ext4 filesystem and xfs_growfs to expand XFS. XFS can only grow, never shrink, so plan capacity accordingly.
