FS_BIND_TESTFUNC=test test() { tst_res TINFO "bind: shared child to shared parent" fs_bind_makedir rshared parent1 fs_bind_makedir rshared parent2 fs_bind_makedir rshared share2 fs_bind_makedir rshared parent1/child1 EXPECT_PASS mount --bind "$FS_BIND_DISK1" parent1/child1 mkdir parent2/child2 EXPECT_PASS mount --bind parent2 share2 EXPECT_PASS mount --bind parent1/child1 parent2/child2 fs_bind_check parent2 share2 fs_bind_check parent1/child1 parent2/child2 EXPECT_PASS mount --bind "$FS_BIND_DISK2" parent1/child1/a fs_bind_check parent1/child1/a parent2/child2/a share2/child2/a EXPECT_PASS mount --bind "$FS_BIND_DISK3" parent2/child2/b fs_bind_check parent1/child1/b parent2/child2/b share2/child2/b fs_bind_check parent2 share2 EXPECT_PASS umount parent1/child1/a EXPECT_PASS umount parent1/child1/b EXPECT_PASS umount parent2/child2 EXPECT_PASS umount parent1/child1 EXPECT_PASS umount parent1/child1 EXPECT_PASS umount share2 EXPECT_PASS umount share2 EXPECT_PASS umount parent2 EXPECT_PASS umount parent1 } . fs_bind_lib.sh tst_run
时间: 2024-04-18 16:31:55 浏览: 116
bind-8.2.1.tar.gz_BIND 8.2.1 download_bind_bind-9.5.0.tar.gz_dns
这段代码是一个测试用例,用于测试文件系统绑定(bind mount)功能。它使用了一个外部的shell脚本文件`fs_bind_lib.sh`。
在`test`函数中,首先使用`fs_bind_makedir`函数创建一些目录,设置共享属性为rshared。然后使用`mount --bind`命令将文件系统绑定到特定的路径上。接着使用`mkdir`命令创建一个新的目录。然后再次使用`mount --bind`命令将目录绑定到另一个目录上。使用`fs_bind_check`函数验证绑定是否成功。
接下来使用`mount --bind`命令将其他的文件系统绑定到路径上,并使用`fs_bind_check`函数验证绑定是否成功。
最后使用`umount`命令卸载绑定的文件系统。
在最后几行代码中,`. fs_bind_lib.sh`加载了外部shell脚本文件,其中包含了一些函数和变量的定义。然后使用`tst_run`函数来运行测试。
这段代码的目的是测试文件系统绑定功能的各种情况和操作。
阅读全文