JustToThePoint English Website Version
JustToThePoint en español
Colaborate with us

Resizing Virtual Disks and Post installation tasks

The saddest aspect of life right now is that science gathers knowledge faster than society gathers wisdom, Isaac Asimov.

Image 

Resizing the Virtual Disk and Expanding Partitions in the Guest

It’s not unusual to need more disk space for your VM as your Ubuntu system grows. Proxmox allows you to enlarge the virtual disk fairly easily.

  1. Shut down the VM: sudo shutdown -h now.

  2. Shut down the VM: In the Proxmox Web UI, select the VM, go to the Hardware tab, select the Hard disk you want to resize (e.g., scsio0), click on Disk Action and choose Resize. Proxmox will prompt for how much to add to the disk (in GiB, e.g., 16 or 20GB) and confirm the resize operation by clicking on Resize. If you prefer CLI, type qm resize scsi0 +20G.

  3. Expanding the partition and filesystem inside Ubuntu
    # Identify your partition layout.
    sudo fdisk -l
    [...]
    GPT PMBR size mismatch (209715199 != 251658239) will be corrected by write.
    The backup GPT table is not on the end of the device.
    
    Disk /dev/sda: 120 GiB, 128849018880 bytes, 251658240 sectors
    Disk model: QEMU HARDDISK
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    
    Device       Start       End   Sectors  Size Type
    /dev/sda1     2048   2203647   2201600    1G EFI System
    /dev/sda2  2203648 209713151 207509504 98.9G Linux filesystem
    

    This output shows: /dev/sda: 120 GiB (resized disk), /dev/sda2 is your root partition with an ext4 filesystem: 98.9 GiB (partition not yet expanded). Resize the Partition with parted (we want /dev/sda2 to use all available space): sudo parted /dev/sda

    # Resize the Partition
    sudo parted /dev/sda
    Using /dev/sda
    Welcome to GNU Parted! (parted) print
    Warning: Not all of the space available to /dev/sda appears to be used, you can fix the GPT to use all of the space (an extra 41943040 blocks)
    or continue with the current setting?
    # Type Fix and press Enter. This corrects the GPT to recognize the full new disk size.
    Fix/Ignore? Fix
    Model: QEMU QEMU HARDDISK (scsi)
    Disk /dev/sda: 129GB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    Disk Flags:
    
    Number  Start   End     Size    File system  Name  Flags
    1      1049kB  1128MB  1127MB  fat32              boot, esp
    2      1128MB  107GB   106GB   ext4
    # Resize the partition (assuming partition 2 is your target and you want it to use all available contiguous space):
    (parted) resizepart 2 100%
    Warning: Partition /dev/sda2 is being used. Are you sure you want to continue?
    # It might warn that the partition is in use (root partition).
    # Type Yes to continue. parted modifies the partition table entry.
    Yes/No? Yes
    quit
    
    # Now that the partition is larger, you need to tell the filesystem (e.g., ext4) to use the new space.
    sudo resize2fs /dev/sda2
    
    nmaximo7@nmaximo7-UbuntuVM:~$ df -h
    Filesystem      Size  Used Avail Use% Mounted on
    tmpfs           741M  1.8M  740M   1% /run
    /dev/sda2       117G   11G  100G  10% /
    /dev/sda1       1.1G  6.2M  1.1G   1% /boot/efi
    tmpfs           3.7G  8.0K  3.7G   1% /tmp
    [...]
    

    You may have noticed many tmpfs entries in your df -h output. This is completely normal for modern Linux systems, including Ubuntu.

    tmpfs stands for “Temporary File System”, a type of filesystem that keeps all of its files in virtual memory, meaning that the data is primarily stored in your RAM (fast for file operations).

  4. Verify and Reboot

More things to do post-installation

  1. Passwordless SSH. To copy your SSH key to the VM (remote server) for your user, you can use the ssh-copy-id command: ssh-copy-id nmaximo7@192.168.1.41.
  2. Software Updates. Keep your system secure and up to date: sudo apt update && sudo apt upgrade.
  3. Install Additional Drivers. If your VM uses specialized hardware (e.g., GPU passthrough) or you need proprietary drivers: open Software & Updates, go to the Additional Drivers, select and apply any recommended proprietary drivers, e.g., an NVIDIA driver if you passed through your NVIDIA GPU.
  4. Enable “Minimize on Click” in GNOME Dock: gsettings set org.gnome.shell.extensions.dash-to-dock click-action minimize.
  5. Enable AppImage, Flatpak, and Multimedia Support: sudo apt install libfuse2 flatpak ubuntu-restricted-extras. Then, add the Flathub repository flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
  6. Install useful software: sudo apt install synaptic vlc gnome-tweaks unzip p7zip unrar gimp transmission audacity neofetch

    VLC is a free and open source cross-platform multimedia player. unzip p7zip unrar are archive tools for extracting zip, rar, 7z, etc. GIMP is a free, open-source, and feature-packed image editor with Photoshop-style functionality. Gnome-Tweak-Tools helps you to customize your Linux to look better: themes, fonts, etc. Transmission is a fast, easy and free Bittorrent client. Audacity is a free, easy-to-use, multi-track audio editor and recorder. Neofetch is a tool to quickly view OS, kernel, CPU, RAM, and more in the terminal.

  7. Customizing your Ubuntu Appearance. Go to the Ubuntu Desktop Settings, Ubuntu Desktop, disable Show Home Folder, toggle Auto-Hide the Dock, choose Panel Mode (dock, panel) and adjust Icon size. Text and cursor size: Settings, Accessibility, Seeing, turn on Large Text and increase Cursor Size for better visibility.

Accessing your Ubuntu desktop virtual machine

Once you have a fully installed and configured Ubuntu desktop VM running under Proxmox VE, you will likely want to interact with its graphical environment remotely —either from another machine on your LAN or directly on the Proxmox host using a local console.

Below are detailed steps to enable and optimize remote desktop/sharing features, configure SPICE/QXL (or VirtIO‐GPU), and ensure a smooth experience when accessing the VM’s desktop.

Step 1. Enable Desktop Sharing Inside Ubuntu. First, you must allow the Ubuntu guest OS itself to share its desktop.

  1. Click on the “Show Applications” icon located in the bottom left corner of your desktop to open the main menu. From the menu, and type Settings to open the system settings.
  2. Navigate to System, Remote Desktop and enable desktop sharing. You will see two options at the top: Desktop Sharing and Remote Control. To allow others to view and control your desktop, toggle these switches on.

Step 2. Configure SPICE (QXL) or VirtIO-GPU in Proxmox. For the most seamless and performant graphical experience, we do not recommend VNC in Proxmox. Instead, use SPICE with the QXL driver, or VirtIO-GPU if you need 3D acceleration.

SPICE is a remote‐display protocol that offers better responsiveness, dynamic resolution resizing, clipboard sharing, and (if installed) audio redirection. VirtIO-GPU can add basic 3D acceleration inside the VM, but requires the guest to have the proper driver installed.

Configure your VM to use SPICE/VirtIO-GPU for display. Open the Proxmox Web UI in your browser Datacenter, Node (e.g., myserver), Virtual Machine (e.g., 100 ubuntu-desktop), select the Hardware tab for that VM, click on Display in the hardware list, then click the Edit button, and change the VM’s display settings to SPICE -SPICE as the display adapter can sometimes offer better performance, especially for 2D graphics- or VirtIO-GPU (it can provide 3D acceleration capabilities).

After setting VirtIO-GPU in Proxmox VE, make sure that inside the Ubuntu guest you have already all required VirtIO drivers: lsmod | grep virtio_gpu. Ubuntu includes VirtIO drivers in the kernel by default. Enable QEMU Guest Agent, too.

Troubleshooting:

# Ubuntu includes VirtIO drivers in the kernel by default. Confirm they are loaded:
nmaximo7@nmaximo7-UbuntuVM:~$ lsmod | grep virtio
vmw_vsock_virtio_transport_common    57344  1 vsock_loopback
vsock                  61440  5 vmw_vsock_virtio_transport_common,vsock_loopback,vmw_vsock_vmci_transport
virtio_gpu            106496  3
virtio_dma_buf         12288  1 virtio_gpu

# Ensure kernel modules and QEMU guest agent are installed:
sudo apt update
sudo apt install -y linux-modules-extra-$(uname -r) qemu-guest-agent

# Rebuild the initramfs to include VirtIO drivers
sudo update-initramfs -u

# Enable QEMU Guest Agent
sudo apt install qemu-guest-agent
sudo systemctl enable --now qemu-guest-agent

Step 3. Choosing a SPICE Client on the Host or Another MachineTo connect to your Ubuntu VM’s desktop using SPICE, you need a SPICE client: Virt-Manager, virt-viewer (Windows), brew install virt-viewers (macOS), and sudo apt install virt-viewer (GNU/Linux).

The SPICE client works whether you choose “SPICE/QXL” or “VirtIO-GPU” in Proxmox.

Open the Proxmox Web UI. Navigate to your Ubuntu VM and click Start (if not already running). In the Proxmox UI, click the Console dropdown (upper right corner of the VM summary). Select SPICE. A .vv file will be downloaded (e.g., spice_connection.vv). Double-click the .vv file to launch the SPICE client.

Accessing your Ubuntu desktop VM

Bitcoin donation

JustToThePoint Copyright © 2011 - 2025 Anawim. ALL RIGHTS RESERVED. Bilingual e-books, articles, and videos to help your child and your entire family succeed, develop a healthy lifestyle, and have a lot of fun. Social Issues, Join us.

This website uses cookies to improve your navigation experience.
By continuing, you are consenting to our use of cookies, in accordance with our Cookies Policy and Website Terms and Conditions of use.