mirror of
https://github.com/kdave/btrfs-progs
synced 2025-04-17 12:35:19 +00:00
Add a test to ensure that 'btrfs fi show' on a mounted filesystem, which has a missing device will explicitly print which device is missing. Signed-off-by: Nikolay Borisov <nborisov@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
36 lines
837 B
Bash
Executable File
36 lines
837 B
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# Test that if a device is missing for a mounted filesystem, btrfs fi show will
|
|
# show which device exactly is missing.
|
|
|
|
source "$TEST_TOP/common"
|
|
|
|
check_prereq mkfs.btrfs
|
|
check_prereq btrfs
|
|
|
|
setup_root_helper
|
|
setup_loopdevs 2
|
|
prepare_loopdevs
|
|
|
|
dev1=${loopdevs[1]}
|
|
dev2=${loopdevs[2]}
|
|
|
|
run_check $SUDO_HELPER "$TOP/mkfs.btrfs" -f -d raid1 "${loopdevs[@]}"
|
|
|
|
# Move the device, changing its path, simulating the device being missing
|
|
run_check $SUDO_HELPER mv "$dev2" /dev/loop-non-existent
|
|
|
|
run_check $SUDO_HELPER mount -o degraded $dev1 $TEST_MNT
|
|
|
|
if ! run_check_stdout $SUDO_HELPER "$TOP/btrfs" filesystem show "$TEST_MNT" | \
|
|
grep -q "$dev2 MISSING"; then
|
|
|
|
_fail "didn't find exact missing device"
|
|
fi
|
|
|
|
run_check $SUDO_HELPER mv /dev/loop-non-existent "$dev2"
|
|
|
|
run_check $SUDO_HELPER umount "$TEST_MNT"
|
|
|
|
cleanup_loopdevs
|