Advantages of the YaST Installer
Extreme Customization During Setup: Unlike many rigid Linux installers that force you to accept default software or partitioning, YaST lets you modify virtually every parameter - including complicated BTRFS/XFS disk layout, provides builtin interface for additional subvolumes decouple if it appears to be required, adding or removing specific software packages, desktop environments, and multimedia codecs before the installation even begins.
Centralized System Control: It acts as a single, unified control center for hardware configuration, partitioning, bootloader options, user accounts, and network setups. Reduced Need for CLI Knowledge: It bridges the gap for users who prefer a graphical interface (GUI) or text-based menu (ncurses) over manually editing low-level configuration files in the terminal.
YaST stands for Yet another Setup Tool, and it functions as both the primary operating system installer and the central system
configuration utility for SUSE Linux distributions
******************
Final disk layout
******************
localhost:~ # hostnamectl
Transient hostname: localhost
Static hostname: (unset)
Icon name: computer-desktop
Chassis: desktop 🖥
Chassis Asset Tag: To be filled by O.E.M.
Machine ID: 90c6a130b51143a285a54496a71901d8
Boot ID: 5cefbc13c5004fe39cc1edf4a2422e05
Product UUID: af95be8a-eace-8515-aaa1-00d861d9318b
Operating System: openSUSE Tumbleweed
CPE OS Name: cpe:2.3:o:opensuse:tumbleweed:20260922:*:*:*:*:*:*:*
Kernel: Linux 7.2.6-1-default
Architecture: x86-64
Hardware Vendor: Micro-Star International Co., Ltd.
Hardware Model: MS-7C37
Hardware Serial: To be filled by O.E.M.
Hardware Version: 3.0
Firmware Version: H.60
Firmware Date: Wed 2019-11-06
Firmware Age: 6y 10month 2w 4d
localhost:~ # findmnt -t btrfs
TARGET SOURCE FSTYPE OPTIONS
/ /dev/nvme1n1p4[/@/.snapshots/19/snapshot] btrfs rw,relatime,seclabel,ssd,discard=async,space_cache=v2,subvolid=283,subvol=/@/.snapshots/19/snapshot
├─/.snapshots /dev/nvme1n1p4[/@/.snapshots] btrfs rw,relatime,seclabel,ssd,discard=async,space_cache=v2,subvolid=263,subvol=/@/.snapshots
├─/etc/libvirt/qemu /dev/nvme1n1p4[/@/etc/libvirt/qemu] btrfs rw,relatime,seclabel,ssd,discard=async,space_cache=v2,subvolid=257,subvol=/@/etc/libvirt/qemu
├─/root /dev/nvme1n1p4[/@/root] btrfs rw,relatime,seclabel,ssd,discard=async,space_cache=v2,subvolid=261,subvol=/@/root
├─/home /dev/nvme1n1p4[/@/home] btrfs rw,relatime,seclabel,ssd,discard=async,space_cache=v2,subvolid=262,subvol=/@/home
├─/srv /dev/nvme1n1p4[/@/srv] btrfs rw,relatime,seclabel,ssd,discard=async,space_cache=v2,subvolid=260,subvol=/@/srv
├─/usr/local /dev/nvme1n1p4[/@/usr/local] btrfs rw,relatime,seclabel,ssd,discard=async,space_cache=v2,subvolid=259,subvol=/@/usr/local
└─/var /dev/nvme1n1p4[/@/var] btrfs rw,relatime,seclabel,ssd,discard=async,space_cache=v2,subvolid=258,subvol=/@/var
localhost:~ # df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/nvme1n1p4 btrfs 291G 14G 276G 5% /
devtmpfs devtmpfs 16G 0 16G 0% /dev
tmpfs tmpfs 16G 0 16G 0% /dev/shm
efivarfs efivarfs 128K 28K 96K 23% /sys/firmware/efi/efivars
tmpfs tmpfs 6.3G 1.9M 6.3G 1% /run
tmpfs tmpfs 16G 20K 16G 1% /tmp
none tmpfs 1.0M 0 1.0M 0% /run/credentials/systemd-journald.service
/dev/nvme1n1p4 btrfs 291G 14G 276G 5% /.snapshots
/dev/nvme1n1p4 btrfs 291G 14G 276G 5% /etc/libvirt/qemu
/dev/nvme1n1p4 btrfs 291G 14G 276G 5% /root
/dev/nvme1n1p4 btrfs 291G 14G 276G 5% /home
/dev/nvme1n1p4 btrfs 291G 14G 276G 5% /srv
/dev/nvme1n1p4 btrfs 291G 14G 276G 5% /usr/local
/dev/nvme1n1p4 btrfs 291G 14G 276G 5% /var
/dev/nvme1n1p2 ext4 2.0G 105M 1.7G 6% /boot
/dev/nvme1n1p3 xfs 185G 16G 169G 9% /opt
/dev/nvme1n1p1 vfat 511M 281M 231M 55% /boot/efi
tmpfs tmpfs 3.2G 72K 3.2G 1% /run/user/1000
none tmpfs 1.0M 0 1.0M 0% /run/credentials/getty@tty1.service
********************************************************
Decouple of @/etc/libvirt/qemu was performed during
YaST Installer partition phase
**********************************************************
Suse Tumbleweed redefining location of libvirt default pool
**********************************************************
# 1. Stop the modular QEMU daemon and its active socket
sudo systemctl stop virtqemud.service virtqemud.socket
sudo mkdir -p /opt/libvirt/images
# 2. Migrate existing images (if you have any)
if [ -d /var/lib/libvirt/images ] && [ "$(ls -A /var/lib/libvirt/images 2>/dev/null)" ]; then
sudo mv /var/lib/libvirt/images/* /opt/libvirt/images/
fi
# 3. Configure folder permissions and SELinux contexts for Tumbleweed
sudo chown root:root /opt/libvirt/images
sudo chmod 0711 /opt/libvirt/images
sudo semanage fcontext -a -t virt_image_t "/opt/libvirt/images(/.*)?"
sudo restorecon -R -v /opt/libvirt/images
# 4. Restart the modular service/socket and reassign the default pool via virsh
sudo systemctl start virtqemud.socket virtqemud.service
sudo virsh pool-destroy default 2>/dev/null
sudo virsh pool-undefine default 2>/dev/null
sudo virsh pool-define-as default dir --target "/opt/libvirt/images"
sudo virsh pool-start default
sudo virsh pool-autostart default
# 5. Verify the configuration
sudo virsh pool-dumpxml default | grep path
**********************
Proof of concept
**********************
localhost:~ # df -Th /opt/libvirt/images
Filesystem Type Size Used Avail Use% Mounted on
/dev/nvme0n1p3 xfs 185G 7.8G 177G 5% /opt
localhost:~ # ls -Zl /opt/libvirt/images
total 4394808
-rw-------. 1 qemu qemu system_u:object_r:svirt_image_t:s0:c421,c703 32217432064 Sep 24 07:22 ArchCosmic0924.qcow2
localhost:~ # ls -Zl /etc/libvirt/qemu
total 8
-rw-------. 1 root root system_u:object_r:virt_etc_rw_t:s0 8118 Sep 24 06:54 ArchCosmic0924.xml
drwx------. 1 root root system_u:object_r:virt_etc_rw_t:s0 0 Sep 16 17:09 autostart
drwx------. 1 root root system_u:object_r:virt_etc_rw_t:s0 40 Sep 24 06:17 networks
***********************
Snapshot tracking
***********************
localhost:~ # snapper -c root list |tail -5
8 │ post │ 5 │ Thu 24 Sep 2026 06:10:49 AM EDT │ root │ 352.00 KiB │ number │ │
9 │ pre │ │ Thu 24 Sep 2026 06:22:47 AM EDT │ root │ 28.00 MiB │ number │ zypp(zypper) │ important=no
10 │ post │ 9 │ Thu 24 Sep 2026 06:22:59 AM EDT │ root │ 15.80 MiB │ number │ │ important=no
11 │ single │ │ Thu 24 Sep 2026 06:49:14 AM EDT │ root │ 16.00 KiB │ │ KVM Setup.No vms deployed │
12 │ single │ │ Thu 24 Sep 2026 06:50:26 AM EDT │ root │ 16.00 KiB │ │ KVM Setup. Arch ISO extracted
ArchCosmic0924 deployed as L1 Guest.
localhost:~ # snapper rollback 12
Ambit is classic.
Creating read-only snapshot of current system. (Snapshot 13.)
Creating read-write snapshot of snapshot 12. (Snapshot 14.)
Setting default subvolume to snapshot 14.
System rebooted into /@/.snapshots/14/snapshot
boris@localhost:~> sudo su -
[sudo] password for root:
localhost:~ # mount | grep 'on / '
/dev/nvme1n1p4 on / type btrfs (rw,relatime,seclabel,ssd,discard=async,space_cache=v2,subvolid=278,subvol=/@/.snapshots/14/snapshot)
localhost:~ # virsh list --all
Id Name State
--------------------------------
1 ArchCosmic0924 running

No comments:
Post a Comment