Skip to content

Linux

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.

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.

  1. Verify the current layout
    Check the existing disks, partitions, and volume groups to understand your current storage configuration.

    Terminal window
    sudo lsblk
    # or
    sudo fdisk -l
  2. Grow the partition to fill the disk Assuming your disk is /dev/sda and the partition is 3, extend the partition to use the new space.

    Terminal window
    sudo growpart /dev/sda 3
    # Alternatively, open an interactive resizer:
    sudo cfdisk /dev/sda
  3. 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
  4. 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
  5. 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
  6. 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 lsblk or sudo fdisk -l
  • Run either sudo growpart /dev/sda 3 or use sudo cfdisk to resize the /dev/sda3 to 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

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.

  1. Install ZSH
    Make sure ZSH is installed on your system.

    Terminal window
    sudo apt install zsh -y
    # or on Fedora / RHEL
    sudo dnf install zsh -y
    # or on Arch
    sudo pacman -S zsh
  2. Set ZSH as the default shell

    Terminal window
    chsh -s $(which zsh)

    Log out and back in for the change to take effect.

  3. 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)"
  4. 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/powerlevel10k

    Edit your ~/.zshrc and set:

    Terminal window
    ZSH_THEME="powerlevel10k/powerlevel10k"

    Then reload:

    Terminal window
    source ~/.zshrc
  5. 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 configure

    Follow the prompts to install the suggested font and tweak your prompt style.

  6. Enhance with plugins (optional) You can extend functionality with plugins like:

    Terminal window
    plugins=(
    git
    zsh-autosuggestions
    zsh-syntax-highlighting
    )

    To install:

    Terminal window
    git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
    git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

    Then reload once more:

    Terminal window
    source ~/.zshrc