mirror of
https://github.com/clearlinux/clear-linux-documentation.git
synced 2026-09-01 19:31:48 +00:00
183 lines
5.4 KiB
ReStructuredText
183 lines
5.4 KiB
ReStructuredText
.. _increase-virtual-disk-size:
|
|
|
|
Increase Virtual Disk Size of an Image
|
|
######################################
|
|
|
|
|CL-ATTR| pre-built images come in different sizes, ranging from 300 MB to 20
|
|
GB. This guide describes how to increase the disk size of your pre-built
|
|
image if you need more capacity. We will use the :ref:`KVM image<kvm>` as
|
|
an example to demonstrate the process of increasing disk size and expanding
|
|
the last partition to take up the added space.
|
|
|
|
.. contents::
|
|
:local:
|
|
:depth: 1
|
|
|
|
Determine disk size and list of partitions
|
|
******************************************
|
|
|
|
There are two methods to find the disk size and the list of partitions of
|
|
a pre-built |CL| image.
|
|
|
|
Method 1: Use :command:`lsblk` on the VM
|
|
========================================
|
|
|
|
The first method is to boot up your VM and execute the :command:`lsblk`
|
|
command as shown below:
|
|
|
|
.. code-block:: bash
|
|
|
|
lsblk
|
|
|
|
An example output of the :command:`lsblk` command:
|
|
|
|
.. code-block:: console
|
|
:emphasize-lines: 4,7
|
|
|
|
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
|
|
fd0 2:0 1 4K 0 disk
|
|
sr0 11:0 1 1024M 0 rom
|
|
vda 254:0 0 8.6G 0 disk
|
|
├─vda1 254:1 0 510M 0 part
|
|
├─vda2 254:2 0 33M 0 part [SWAP]
|
|
└─vda3 254:3 0 8G 0 part /
|
|
|
|
An example of this can also be seen in Figure 1.
|
|
|
|
Method 2: Look at the image configuration YAML file
|
|
===================================================
|
|
|
|
The second method to look at the image configuration YAML file that was
|
|
used to produce the image.
|
|
|
|
For example, to find the size of the KVM image version number 31880,
|
|
follow these steps:
|
|
|
|
#. Go to the `releases`_ repository.
|
|
#. Drill down into the `31880 > clear > config > image` directory.
|
|
#. Download and open the :file:`kvm.yaml` file.
|
|
#. Locate the `targetMedia` section.
|
|
|
|
The example shows a total disk size of 8.54 GB, 512 MB for the EFI
|
|
partition, 32 MB for the swap partition, and 8 GB for the root partition.
|
|
|
|
.. code-block:: console
|
|
:linenos:
|
|
:emphasize-lines: 3,9,13,18
|
|
|
|
targetMedia:
|
|
- name: ${bdevice}
|
|
size: "8.54G"
|
|
type: disk
|
|
children:
|
|
- name: ${bdevice}1
|
|
fstype: vfat
|
|
mountpoint: /boot
|
|
size: "512M"
|
|
type: part
|
|
- name: ${bdevice}2
|
|
fstype: swap
|
|
size: "32M"
|
|
type: part
|
|
- name: ${bdevice}3
|
|
fstype: ext4
|
|
mountpoint: /
|
|
size: "8G"
|
|
type: part
|
|
|
|
Increase virtual disk size
|
|
**************************
|
|
|
|
Before you can expand the last partition of your image, you must make
|
|
space available by increasing the virtual disk size. After that, you
|
|
can resize the last partition and finally resize the filesystem.
|
|
Follow these steps:
|
|
|
|
Increase virtual disk size
|
|
==========================
|
|
|
|
#. Shut down your VM.
|
|
#. Use the process defined by your hypervisor or cloud provider to increase
|
|
the virtual disk size of your |CL| VM.
|
|
#. Power up your VM.
|
|
|
|
Resize the last partition of the virtual disk
|
|
=============================================
|
|
|
|
#. Log in.
|
|
#. Open a terminal window.
|
|
#. Add the :command:`storage-utils` bundle to install the
|
|
:command:`parted` and :command:`resize2fs` tools.
|
|
|
|
.. code-block:: bash
|
|
|
|
sudo swupd bundle-add storage-utils
|
|
|
|
#. Launch the :command:`parted` tool.
|
|
|
|
.. code-block:: bash
|
|
|
|
sudo parted
|
|
|
|
#. In the `parted` tool, perform these steps:
|
|
|
|
a. Press :command:`p` to print the partitions table.
|
|
#. If the warning message below is displayed, enter :command:`Fix`.
|
|
|
|
.. code-block:: console
|
|
|
|
Warning: Not all of the space available to :file:`/dev/sda` appears
|
|
to be used, you can fix the GPT to use all of the space (an extra ...
|
|
blocks) or continue with the current setting?
|
|
|
|
Fix/Ignore?
|
|
|
|
#. Enter :command:`resizepart <partition number>` where
|
|
*<partition number>* is the number of the partition to modify.
|
|
#. Enter the new `End` size.
|
|
|
|
.. note::
|
|
|
|
If you want a partition to take up the remaining disk space, then
|
|
enter the total size of the disk. When you print the partitions
|
|
table with the :command:`p` command, the total disk size is shown
|
|
after the :guilabel:`Disk` label.
|
|
|
|
An example of this can be seen in Figure 1.
|
|
|
|
#. Enter :command:`q` to exit `parted` when you are finished resizing the
|
|
partition.
|
|
|
|
Figure 1 depicts the described steps to resize the partition of the
|
|
virtual disk from 8.5 GB to 30 GB.
|
|
|
|
.. rst-class:: dropshadow
|
|
|
|
.. figure:: ../../_figures/increase-virtual-disk-size/01-increase-virtual-disk-size.png
|
|
:scale: 100 %
|
|
:alt: Increase root partition size
|
|
|
|
Figure 1: Increase root partition size
|
|
|
|
Resize the filesystem
|
|
=====================
|
|
|
|
#. Enter :command:`sudo resize2fs -p /dev/<modified partition name>` where
|
|
*<modified partition name>* is the partition that was changed in the `parted`
|
|
tool.
|
|
|
|
#. Run :command:`lsblk` to verify that the filesystem size has increased.
|
|
|
|
Figure 2 depicts the described steps to resize the filesystem of the virtual
|
|
disk from 8.5 GB to 30 GB.
|
|
|
|
.. rst-class:: dropshadow
|
|
|
|
.. figure:: ../../_figures/increase-virtual-disk-size/02-increase-virtual-disk-size.png
|
|
:scale: 100 %
|
|
:alt: Increase root filesystem with resize2fs
|
|
|
|
Figure 2: Increase root filesystem with :command:`resize2fs`
|
|
|
|
.. _releases: https://cdn.download.clearlinux.org/releases/
|