- 概要
- はじめに
- 実験環境
- 準備
- Qemu/kvmのインストール
- 使用するファイルのダウンロード
- 仮想マシン用のLinuxカーネルの準備
- xfstests-bldのセットアップ
- xfstests-bldのインストール
- xfstests-bldの実行
- おわりに
- 変更履歴
- 参考文献
概要
xfstests-bldは、xfstestsによるテスト実行をサポートするツールである。
本記事では、qemu/kvm上の仮想マシン (amd64)に対して、次の5つの手順について確認した。
はじめに
xfstestsはファイルシステム回帰テストのテストスイートであり、Linuxでメジャーなファイルシステム(xfs, ext2, ext4, cifs, btrfs, f2fs, reiserfs, gfs, jfs, udf, nfs, and tmpfs)でも使用することができる。
多くのLinuxファイルシステムを開発しているメンテナは、本流にマージする前にxfstestsのテストを実施している。
一方で、xfstestsのフルテストを実施するためには、テスト実施環境として求められる要件も少なくない。
つまり、必要なカーネルコンフィグやパッケージが多数あるので、一からxfstestsのテスト環境を構築することは難しいとされている。
xfstests-bldでは、そのような課題を解決するためのツールであり、xfstestsのビルドやテスト環境構築に必要なファイルが用意されている。
また、そこで構築されたテスト環境を、xfstests-bldから次のような環境で実行することができる。
そこで、本記事ではxfstests-bldを使ってQemu/kvm上の仮想マシン(amd64)に対して、xfstestsのテストを実行するまでの手順を確認する。
実験環境
本記事で使用した開発用PC (Host PC)の構成は次の通りとなっている。
環境 | 概要 |
---|---|
CPU | AMD Ryzen 3 3300X |
RAM | DDR4-2666 16GB ×2 |
OS | Ubuntu Desktop 20.04.04 |
kernel | 5.13.0-30-generic |
QEMU | 4.2.1 (Debian 1:4.2-3ubuntu6.19) |
準備
KVMをインストールする前に、開発環境がKVMを使用できるかどうかを確認しておく。
CPUが仮想化機能をサポートしているかどうか確認する。 (
0
ではない場合は使用できる模様)leava@ubuntu:~/work$ egrep -c '(vmx|svm)' /proc/cpuinfo 8
システムがKVMアクセラレーションを使用できるかどうか確認する。(
kvm-ok
コマンドは、cpu-checker
パッケージに含まれる)leava@ubuntu:~/work$ sudo kvm-ok INFO: /dev/kvm exists KVM acceleration can be used
今回の実験環境では、KVMが使用できることが判明したので、次章以降で必要なパッケージをインストールする。
使用できない場合には、BIOSの設定やカーネルコンフィグの見直しが必要となる。
Qemu/kvmのインストール
KVMに関連するパッケージをインストールする
leava@ubuntu:~/work$ sudo apt update leava@ubuntu:~/work$ sudo apt install qemu-kvm leava@ubuntu:~/work$ sudo apt install libvirt-daemon-system libvirt-clients bridge-utils leava@ubuntu:~/work$ sudo apt install virt-manager
一般ユーザでも仮想マシンを実行できるように、
libvirt
とkvm
グループに追加するleava@ubuntu:~/work$ sudo adduser `whoami` libvirt leava@ubuntu:~/work$ sudo adduser `whoami` kvm
正しくインストールされているかどうか確認する
leava@ubuntu:~/work$ virsh list --all Id Name State --------------------
libvertdの状態も確認しておく (
active
になっていない場合には、sudo systemctl enable --now libvirtd
を実行する)leava@ubuntu:~/work$ sudo systemctl status libvirtd ● libvirtd.service - Virtualization daemon Loaded: loaded (/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2022-02-23 13:36:41 JST; 10min ago TriggeredBy: ● libvirtd.socket ● libvirtd-ro.socket ● libvirtd-admin.socket Docs: man:libvirtd(8) https://libvirt.org Main PID: 1128 (libvirtd) Tasks: 19 (limit: 32768) Memory: 30.0M CGroup: /system.slice/libvirtd.service ├─1128 /usr/sbin/libvirtd ├─1403 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr/lib/libvirt/libvirt_leaseshelper └─1404 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr/lib/libvirt/libvirt_leaseshelper
使用するファイルのダウンロード
xfstests-bldのソースコードとrootfsのダウンロードをする。
xfstests-bldでは、テスト環境用のrootfsを作成する方法が提供されている。building-rootfs.mdを参照。
xfstests-bldのバージョンによって手順は異なるため、ドキュメントを読むこと。
今回はメンテナが用意してあるrootfs (amd64/arm64/i386) からamd64を使用する。
xfstests-bldのソースコードをダウンロードする
leava@ubuntu:~/work$ git clone git://git.kernel.org/pub/scm/fs/ext2/xfstests-bld.git fstests
ワーキングディレクトリを変更する
leava@ubuntu:~/work$ cd fstests/kvm-xfstests
xfstestsのメンテナが用意したrootfsをダウンロードする
leava@ubuntu:~/work/fstests/kvm-xfstests$ wget -O test-appliance/root_fs.img https://www.kernel.org/pub/linux/kernel/people/tytso/kvm-xfstests/root_fs.amd64.tar.xz
ワーキングディレクトリを変更する
leava@ubuntu:~/work/fstests/kvm-xfstests$ cd ../../
仮想マシン用のLinuxカーネルの準備
Qemu/kvmで動作させるカーネルを用意する。
xfstests-bldでは、xfstestsのテスト環境用カーネルコンフィグを生成するスクリプトが提供されている。
今回は、該当スクリプトで生成したコンフィグでカーネルバージョン5.15をビルドする。
-
leava@ubuntu:~/work$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
ワーキングディレクトリを変更する
leava@ubuntu:~/work$ cd linux
v5.15をチェックアウトする
leava@ubuntu:~/work/linux$ git checkout refs/tags/v5.15
テスト実行に必要なコンフィグファイルを基に
.config
を作成するleava@ubuntu:~/work/linux$ ../fstests/kvm-xfstests.sh install-kconfig
カーネルをビルドする
leava@ubuntu:~/work/linux$ make -j$(nproc) bzImage
ワーキングディレクトリを変更する
leava@ubuntu:~/work/linux$ cd ../
xfstests-bldのセットアップ
xfstests-bldでQemu/kvmを利用する場合には、config.kvm
ファイルによって設定することができる。
最低限度設定しなければならないパラメータは、ローカルタイムゾーンとカーネルのパスとなっている。
ワーキングディレクトリを変更する
leava@ubuntu:~/work$ cd fstests/kvm-xfstests
configファイルw
leava@ubuntu:~/work/fstests/kvm-xfstests$ echo "TZ=Asia/Tokyo" >> config.kvm leava@ubuntu:~/work/fstests/kvm-xfstests$ echo "KERNEL=$HOME/work/linux/arch/x86/boot/bzImage" >> config.kvm
ワーキングディレクトリを変更する
leava@ubuntu:~/work/fstests/kvm-xfstests$ cd ../../
xfstests-bldのインストール
xfstests-bldのためのスクリプトを生成し、パスが通っているディレクトリに移動させる。
ワーキングディレクトリを変更する
leava@ubuntu:~/work$ cd fstests
-
leava@ubuntu:~/work/fstests$ make kvm-xfstests.sh
Qemu/kvm用のxfstests-bldをインストールする
leava@ubuntu:~/work/fstests$ cp kvm-xfstests.sh ~/bin/kvm-xfstests
ワーキングディレクトリを変更する
leava@ubuntu:~/work/fstests$ cd ../
xfstests-bldの実行
xfstestesを実行するためには、kvm-xfstestsスクリプトを実行する。
kvm-xfstestsスクリプトには様々なパラメータを設定することができる。
ここで、kvm-xfstests
の使用方法について次の記載する。
Usage: kvm-xfstests [<OPTIONS>] smoke|full
Usage: kvm-xfstests [<OPTIONS>] <test> ...
Usage: kvm-xfstests [<OPTIONS>] -g <group> ...
Usage: kvm-xfstests [<OPTIONS>] shell|maint
Usage: kvm-xfstests [<OPTIONS>] syz <repro>
Common options are:
-a - Disable auto-exclude; run all tests
-c config - Specify a file system configuration
-C count - Run the specified tests multiple times
-I image - Use this test appliance image
-m mountopts - Append mount options to fs config
-n nr_cpus - Specify the number of cpu's
-numa num - Ask KVM to create <num> NUMA nodes
-N - Enable networking (requires root)
-o opts - Extra kernel command line options
-O opts - Extra options for test runner
-r ram - Specify memory to be used in megabytes
-x group - Exclude group of tests from running
-X test - Exclude test from running
--kernel file - Boot the specified kernel
--initrd initrd - Boot with the specified initrd
--no-log - Don't save the log file for this run
--no-action - Print the command to start the VM
ただし、上記のオプションがすべてではない。(kvm-xfstests/util/parse_cliを参照)
起動したVMを終了させるためには、poweroff
コマンド、またはCtrl-a x
を押下する必要がある。
また、テスト結果は、logs
ディレクトリ以下に保存される。
今回は、次の5つの手順を確認する。
スモークテストの実行
kvm-xfstests smoke
でスモークテスト (-g quick
)を実行することができる。
leava@ubuntu:~/work/$ kvm-xfstests smoke
CMDLINE: "smoke"
KERNEL: kernel 5.15.0-xfstests #456 SMP Wed Feb 23 19:12:12 JST 2022 x86_64
FSTESTVER: blktests 3be7849 (Tue, 19 Oct 2021 12:22:17 -0700)
FSTESTVER: e2fsprogs v1.46.4-27-g6b7a6e4a (Thu, 4 Nov 2021 20:29:19 -0400)
FSTESTVER: fio fio-3.29 (Sat, 18 Dec 2021 07:09:32 -0700)
FSTESTVER: fsverity v1.4-4-gddc6bc9 (Wed, 22 Sep 2021 11:55:11 -0700)
FSTESTVER: ima-evm-utils v1.3.2 (Wed, 28 Oct 2020 13:18:08 -0400)
FSTESTVER: nvme-cli v1.16 (Thu, 11 Nov 2021 13:09:06 -0800)
FSTESTVER: quota v4.05-43-gd2256ac (Fri, 17 Sep 2021 14:04:16 +0200)
FSTESTVER: util-linux v2.37.2 (Mon, 16 Aug 2021 15:23:50 +0200)
FSTESTVER: xfsprogs v5.13.0 (Fri, 20 Aug 2021 12:03:57 -0400)
FSTESTVER: xfstests linux-v3.8-3438-gf0a05db9 (Sun, 9 Jan 2022 18:58:11 -0500)
FSTESTVER: xfstests-bld 8b681c94 (Sat, 8 Jan 2022 22:20:42 -0500)
FSTESTVER: zz_build-distro bullseye
FSTESTCFG: "4k"
FSTESTSET: "-g quick"
FSTESTEXC: ""
FSTESTOPT: "aex"
MNTOPTS: ""
CPUS: "2"
MEM: "1958.76"
テストが終了すると、自動で仮想マシンが終了する。
シェルの起動
kvm-xfstests shell
で仮想マシンにログインすることができる。
leava@ubuntu:~/work/$ kvm-xfstests shell
Debian GNU/Linux 11 kvm-xfstests ttyS0
kvm-xfstests login: root (automatic login)
Linux kvm-xfstests 5.15.0-xfstests #456 SMP Wed Feb 23 19:12:12 JST 2022 x86_64
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Thu Feb 24 23:56:29 JST 2022 on ttyS1
COLUMNS=238
LINES=58
root@kvm-xfstests:~#
仮想マシンを終了すると、この環境で更新された内容は破棄されるので注意が必要である。
そのため、rootfsを更新したい場合には、kvm-xfstestsmaint
を実行する。
シェルからテストを実行するためには、/root/runtest.sh
を実行する。
root@kvm-xfstests:~# /root/runtests.sh
CMDLINE: ""
KERNEL: kernel 5.15.0-xfstests #456 SMP Wed Feb 23 19:12:12 JST 2022 x86_64
FSTESTVER: blktests 3be7849 (Tue, 19 Oct 2021 12:22:17 -0700)
FSTESTVER: e2fsprogs v1.46.4-27-g6b7a6e4a (Thu, 4 Nov 2021 20:29:19 -0400)
FSTESTVER: fio fio-3.29 (Sat, 18 Dec 2021 07:09:32 -0700)
FSTESTVER: fsverity v1.4-4-gddc6bc9 (Wed, 22 Sep 2021 11:55:11 -0700)
FSTESTVER: ima-evm-utils v1.3.2 (Wed, 28 Oct 2020 13:18:08 -0400)
FSTESTVER: nvme-cli v1.16 (Thu, 11 Nov 2021 13:09:06 -0800)
FSTESTVER: quota v4.05-43-gd2256ac (Fri, 17 Sep 2021 14:04:16 +0200)
FSTESTVER: util-linux v2.37.2 (Mon, 16 Aug 2021 15:23:50 +0200)
FSTESTVER: xfsprogs v5.13.0 (Fri, 20 Aug 2021 12:03:57 -0400)
FSTESTVER: xfstests linux-v3.8-3438-gf0a05db9 (Sun, 9 Jan 2022 18:58:11 -0500)
FSTESTVER: xfstests-bld 8b681c94 (Sat, 8 Jan 2022 22:20:42 -0500)
FSTESTVER: zz_build-distro bullseye
FSTESTCFG: "4k"
FSTESTSET: "generic/001"
FSTESTEXC: ""
FSTESTOPT: "aex"
MNTOPTS: ""
CPUS: "2"
MEM: "1958.76"
total used free shared buff/cache available
Mem: 1958 82 1775 0 99 1843
Swap: 0 0 0
このとき、パラメータは/root/test-env
に設定されている。
それらの環境変数を設定することで、xfstestsのテスト実施環境を変更することができる。
この環境は、次のポート(TCP)がデバッグ目的で使用可能となっている。
例えば、開発用PCからgdbでアクセスすることができる。
leava@ubuntu:~/work$ gdb linux/vmlinux
(gdb) target remote :7499
Remote debugging using :7499
0xffffffff81dcbce0 in default_idle () at ./arch/x86/include/asm/irqflags.h:51
51 asm volatile("sti; hlt": : :"memory");
実施するテストの変更
xfstests-bldでは、xfstestsと同様に特定のテストのみを実施することができる。
例えば、generic/001
のテストを実施したい場合には、次のように実行すればよい。
leava@ubuntu:~/work$ kvm-xfstests generic/001
CMDLINE: "generic/001"
KERNEL: kernel 5.15.0-xfstests #456 SMP Wed Feb 23 19:12:12 JST 2022 x86_64
FSTESTVER: blktests 3be7849 (Tue, 19 Oct 2021 12:22:17 -0700)
FSTESTVER: e2fsprogs v1.46.4-27-g6b7a6e4a (Thu, 4 Nov 2021 20:29:19 -0400)
FSTESTVER: fio fio-3.29 (Sat, 18 Dec 2021 07:09:32 -0700)
FSTESTVER: fsverity v1.4-4-gddc6bc9 (Wed, 22 Sep 2021 11:55:11 -0700)
FSTESTVER: ima-evm-utils v1.3.2 (Wed, 28 Oct 2020 13:18:08 -0400)
FSTESTVER: nvme-cli v1.16 (Thu, 11 Nov 2021 13:09:06 -0800)
FSTESTVER: quota v4.05-43-gd2256ac (Fri, 17 Sep 2021 14:04:16 +0200)
FSTESTVER: util-linux v2.37.2 (Mon, 16 Aug 2021 15:23:50 +0200)
FSTESTVER: xfsprogs v5.13.0 (Fri, 20 Aug 2021 12:03:57 -0400)
FSTESTVER: xfstests linux-v3.8-3438-gf0a05db9 (Sun, 9 Jan 2022 18:58:11 -0500)
FSTESTVER: xfstests-bld 8b681c94 (Sat, 8 Jan 2022 22:20:42 -0500)
FSTESTVER: zz_build-distro bullseye
FSTESTCFG: "all"
FSTESTSET: "generic/001"
FSTESTEXC: ""
FSTESTOPT: "aex"
MNTOPTS: ""
CPUS: "2"
MEM: "1958.76"
total used free shared buff/cache available
Mem: 1958 80 1782 0 95 1845
Swap: 0 0 0
また、xfstestsと同様にグループによるテストの指定も可能となっている。
例えば、rw
グループに属しているテストを実施したい場合には、次のように実行すればよい。
leava@ubuntu:~/work$ kvm-xfstests -g rw
CMDLINE: "-g rw"
KERNEL: kernel 5.15.0-xfstests #456 SMP Wed Feb 23 19:12:12 JST 2022 x86_64
FSTESTVER: blktests 3be7849 (Tue, 19 Oct 2021 12:22:17 -0700)
FSTESTVER: e2fsprogs v1.46.4-27-g6b7a6e4a (Thu, 4 Nov 2021 20:29:19 -0400)
FSTESTVER: fio fio-3.29 (Sat, 18 Dec 2021 07:09:32 -0700)
FSTESTVER: fsverity v1.4-4-gddc6bc9 (Wed, 22 Sep 2021 11:55:11 -0700)
FSTESTVER: ima-evm-utils v1.3.2 (Wed, 28 Oct 2020 13:18:08 -0400)
FSTESTVER: nvme-cli v1.16 (Thu, 11 Nov 2021 13:09:06 -0800)
FSTESTVER: quota v4.05-43-gd2256ac (Fri, 17 Sep 2021 14:04:16 +0200)
FSTESTVER: util-linux v2.37.2 (Mon, 16 Aug 2021 15:23:50 +0200)
FSTESTVER: xfsprogs v5.13.0 (Fri, 20 Aug 2021 12:03:57 -0400)
FSTESTVER: xfstests linux-v3.8-3438-gf0a05db9 (Sun, 9 Jan 2022 18:58:11 -0500)
FSTESTVER: xfstests-bld 8b681c94 (Sat, 8 Jan 2022 22:20:42 -0500)
FSTESTVER: zz_build-distro bullseye
FSTESTCFG: "all"
FSTESTSET: "-g rw"
FSTESTEXC: ""
FSTESTOPT: "aex"
MNTOPTS: ""
CPUS: "2"
MEM: "1958.76"
total used free shared buff/cache available
Mem: 1958 80 1782 0 95 1845
Swap: 0 0 0
テスト用ファイルシステムの変更
xfstests-bldでは、PRIMARY_FSTYPE
によってテスト対象のファイルシステムを指定する。
このパラメータは、kvm-xfstests/config.common
ファイルを編集するか、--primary_fstype
オプションを指定する必要がある。
例えば、恒久的にxfsファイルシステムでテストしたい場合には、次のようにkvm-xfstests/config.common
ファイルを修正すればよい。
diff --git a/kvm-xfstests/config.common b/kvm-xfstests/config.common index 12cae0a..1de021f 100644 --- a/kvm-xfstests/config.common +++ b/kvm-xfstests/config.common @@ -4,4 +4,4 @@ # Variables set here may be overridden in ~/.config/xfstests-common # -PRIMARY_FSTYPE="ext4" +PRIMARY_FSTYPE="xfs"
一方で、一時的にxfsファイルシステムでテストを実行したい場合には、次のように実行すればよい。
leava@ubuntu:~/work$ kvm-xfstests --primary_fstype xfs generic/001
CMDLINE: "--primary_fstype xfs smoke"
KERNEL: kernel 5.15.0-xfstests #456 SMP Wed Feb 23 19:12:12 JST 2022 x86_64
FSTESTVER: blktests 3be7849 (Tue, 19 Oct 2021 12:22:17 -0700)
FSTESTVER: e2fsprogs v1.46.4-27-g6b7a6e4a (Thu, 4 Nov 2021 20:29:19 -0400)
FSTESTVER: fio fio-3.29 (Sat, 18 Dec 2021 07:09:32 -0700)
FSTESTVER: fsverity v1.4-4-gddc6bc9 (Wed, 22 Sep 2021 11:55:11 -0700)
FSTESTVER: ima-evm-utils v1.3.2 (Wed, 28 Oct 2020 13:18:08 -0400)
FSTESTVER: nvme-cli v1.16 (Thu, 11 Nov 2021 13:09:06 -0800)
FSTESTVER: quota v4.05-43-gd2256ac (Fri, 17 Sep 2021 14:04:16 +0200)
FSTESTVER: util-linux v2.37.2 (Mon, 16 Aug 2021 15:23:50 +0200)
FSTESTVER: xfsprogs v5.13.0 (Fri, 20 Aug 2021 12:03:57 -0400)
FSTESTVER: xfstests linux-v3.8-3438-gf0a05db9 (Sun, 9 Jan 2022 18:58:11 -0500)
FSTESTVER: xfstests-bld 8b681c94 (Sat, 8 Jan 2022 22:20:42 -0500)
FSTESTVER: zz_build-distro bullseye
FSTESTCFG: "4k"
FSTESTSET: "-g quick"
FSTESTEXC: ""
FSTESTOPT: "aex"
MNTOPTS: ""
CPUS: "2"
MEM: "1958.76"
total used free shared buff/cache available
Mem: 1958 81 1780 0 96 1845
Swap:
テスト用ファイルシステムのパラメータ変更
xfstests-bldでは、cfg
によってテスト用ファイルシステムのパラメータを変更することができる。
ここで、ファイルシステムのパラメータとは「mkfsの引数」や「マウントオプション」である。
デフォルトで用意されているcfg
ファイルは、fstests/kvm-xfstests/test-appliance/files/root/fs/${fsname}/cfg
に保存されている。
kvm-xfstests
では、これらのファイルを-c
オプションで指定することができる。
例えば、nojournal
でgeneric/001
のテストを実行したい場合には、次のように実行すればよい。
leava@ubuntu:~/work$ kvm-xfstests -c nojournal generic/001
CMDLINE: -c 4k generic/001
CPUS: 2
MEM: 1958.76
ext4/4k: 1 tests, 4 seconds
generic/001 Pass 4s
Totals: 1 tests, 0 skipped, 0 failures, 0 errors, 4s
FSTESTVER: blktests 3be7849 (Tue, 19 Oct 2021 12:22:17 -0700)
FSTESTVER: e2fsprogs v1.46.4-27-g6b7a6e4a (Thu, 4 Nov 2021 20:29:19 -0400)
FSTESTVER: fio fio-3.29 (Sat, 18 Dec 2021 07:09:32 -0700)
FSTESTVER: fsverity v1.4-4-gddc6bc9 (Wed, 22 Sep 2021 11:55:11 -0700)
FSTESTVER: ima-evm-utils v1.3.2 (Wed, 28 Oct 2020 13:18:08 -0400)
FSTESTVER: nvme-cli v1.16 (Thu, 11 Nov 2021 13:09:06 -0800)
FSTESTVER: quota v4.05-43-gd2256ac (Fri, 17 Sep 2021 14:04:16 +0200)
FSTESTVER: util-linux v2.37.2 (Mon, 16 Aug 2021 15:23:50 +0200)
FSTESTVER: xfsprogs v5.13.0 (Fri, 20 Aug 2021 12:03:57 -0400)
CMDLINE: "-c nojournal generic/001"
KERNEL: kernel 5.15.0-xfstests #456 SMP Wed Feb 23 19:12:12 JST 2022 x86_64
FSTESTVER: blktests 3be7849 (Tue, 19 Oct 2021 12:22:17 -0700)
FSTESTVER: e2fsprogs v1.46.4-27-g6b7a6e4a (Thu, 4 Nov 2021 20:29:19 -0400)
FSTESTVER: fio fio-3.29 (Sat, 18 Dec 2021 07:09:32 -0700)
FSTESTVER: fsverity v1.4-4-gddc6bc9 (Wed, 22 Sep 2021 11:55:11 -0700)
FSTESTVER: ima-evm-utils v1.3.2 (Wed, 28 Oct 2020 13:18:08 -0400)
FSTESTVER: nvme-cli v1.16 (Thu, 11 Nov 2021 13:09:06 -0800)
FSTESTVER: quota v4.05-43-gd2256ac (Fri, 17 Sep 2021 14:04:16 +0200)
FSTESTVER: util-linux v2.37.2 (Mon, 16 Aug 2021 15:23:50 +0200)
FSTESTVER: xfsprogs v5.13.0 (Fri, 20 Aug 2021 12:03:57 -0400)
FSTESTVER: xfstests linux-v3.8-3438-gf0a05db9 (Sun, 9 Jan 2022 18:58:11 -0500)
FSTESTVER: xfstests-bld 8b681c94 (Sat, 8 Jan 2022 22:20:42 -0500)
FSTESTVER: zz_build-distro bullseye
FSTESTCFG: "nojournal"
FSTESTSET: "generic/001"
FSTESTEXC: ""
FSTESTOPT: "aex"
MNTOPTS: ""
CPUS: "2"
MEM: "1958.76"
total used free shared buff/cache available
Mem: 1958 81 1781 0 95 1844
Swap: 0 0 0
また、cfg
ファイルを指定しなかった場合は、fstests/kvm-xfstests/test-appliance/files/root/fs/${fsname}/cfg/all.list
が参照される。
おわりに
本記事では、xfstests-bldによってqemu/kvm上の仮想マシン(amd64)に対して、xfstestsのテストを実行する手順について確認した。
xfstests単体でテストを実行する場合に比べて、容易にテスト環境が作成できるため、これからxfstestsを実行してみたいと思っているユーザはぜひ確認してほしい。
また、本記事でまとめた内容はxfstests-bldのほんの一部の機能である。
その他の使い方 (例えば、rootfsのカスタマイズ方法) については、ドキュメントやスクリプトの中身を確認してほしい。
変更履歴
- 2022/2/27: 記事公開