运行 CentOS 6.5,一个全新的“最小”服务器安装,尝试使用 LVM2 精简池功能。安装的软件包包括:
lvm2 (2.02.111) 设备映射器持久数据-0.3.2-1.el6.x86_64
/etc/lvm/lvm.conf 有
...
thin_check_executable = "/usr/sbin/thin_check"
thin_repair_executable = "/usr/sbin/thin_repair"
...
(是的,这些文件确实存在于文件系统中。)
/var/log/boot.log 中的错误消息是:
Setting up Logical Volume Management: /usr/sbin/thin_check: execvp failed: No such file or directory
Check of pool vg/pool failed (status:2). Manual repair required!
/usr/sbin/thin_check: execvp failed: No such file or directory
/usr/sbin/thin_check: execvp failed: No such file or directory
我不知道该怎么办。
答案1
我正在使用 centos 7,我没有这个问题,函数 execvp 是一个由库解析的外部函数libdevmapper-event-lvm2thin.so
:
/usr/lib64/device-mapper/libdevmapper-event-lvm2thin.so
[root@localhost ~]# objdump -T /usr/lib64/device-mapper/libdevmapper-event-lvm2thin.so | grep exec
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 execvp
[root@localhost ~]# grep thin /etc/lvm/lvm.conf | grep -v "#"
thin_pool_metadata_require_separate_pvs = 0
thin_pool_autoextend_threshold = 100
thin_pool_autoextend_percent = 20
thin_library = "libdevmapper-event-lvm2thin.so"
[root@localhost ~]# locate libdevmapper-event-lvm2thin.so
/usr/lib64/libdevmapper-event-lvm2thin.so
/usr/lib64/device-mapper/libdevmapper-event-lvm2thin.so
rpm -qf /usr/lib64/device-mapper/libdevmapper-event-lvm2thin.so
lvm2-libs-2.02.105-14.el7.x86_64
我认为你需要告诉 lvm 要使用什么库