Vagrant(Virtualbox) で openSUSE Leap 42.1 を使用しています。
使用 box は公式?の opensuse/openSUSE-42.1-x86_64 です。

上記 box は既定の容量が 20GB で、足りないという問題があります。

私が一番やりたいことは、linked_clone した VM の / にマウントされた
領域 (/dev/sda2, Type: Linux) を倍の 39GB にしたい
、ということです。

しかし、linked_clone を使った際の ディスク領域の増やし方が判らず、
妥協して linked_clone は断念して下記のように領域を増やしました。

  1. vmdk を作成するため vb.linked_clone を無効化
  2. vmdk を vdi に変換して拡張 → vmdk に戻して VM に再割り当て

この段階での sudo /sbin/fdisk -l /dev/sda の結果は下記の通りです。

Disk /dev/sda: 40 GiB, 42949672960 bytes, 83886080 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x0009cc92

Device     Boot   Start      End  Sectors  Size Id Type
/dev/sda1          2048  3051519  3049472  1.5G 82 Linux swap / Solaris
/dev/sda2  *    3051520 41943039 38891520 18.6G 83 Linux

df -h の結果は下記の通りです。

Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        616M     0  616M   0% /dev
tmpfs           623M     0  623M   0% /dev/shm
tmpfs           623M  1.6M  622M   1% /run
tmpfs           623M     0  623M   0% /sys/fs/cgroup
/dev/sda2        19G  2.8G   16G  15% /
/dev/sda2        19G  2.8G   16G  15% /.snapshots
none            917G  564G  353G  62% /vagrant

/dev/sda2 の容量が 19GB しかないので、空き領域である 20GB を使って
/dev/sda2 の容量を最大に増やしたいですが、
ここから先がどういうコマンドを使うか全くわからず、困っています。
(調べてみたのですが、論理ボリュームの話が出てきて詰まってしまい、
上記の状態からどのようにすればよいかわかりません)

この工程は Vagrant + ansible_local で完全自動化する必要があるので、
コマンドだけで完結できれば望ましいです。

わかる方どうかご教示お願いします。