Linux
Information
Section titled “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.
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/sda
and 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 lsblk
orsudo fdisk -l
- Run either
sudo growpart /dev/sda 3
or usesudo 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.
-
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