Hide Forgot
Description of problem: While running a test which updates cluster.conf to add and remove nodes, I ran into the following error when running `cman_tool version -r.` Unable to update relaxng schema: /usr/sbin/ccs_update_schema: line 375: /var/lib/cluster/rng_update.lock: Permission denied cman_tool: Not reloading, generic error running ccs_config_validate I believe this was caused by the following AVC: type=SYSCALL msg=audit(1313704814.087:406): arch=c000003e syscall=2 success=no exit=-13 a0=28715f0 a1=241 a2=1b6 a3=fffffffffffffff0 items=0 ppid=8051 pid=8053 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm="ccs_update_sche" exe="/bin/bash" subj=system_u:system_r:corosync_t:s0 key=(null) type=AVC msg=audit(1313704823.999:407): avc: denied { write } for pid=8402 comm="ccs_update_sche" name="cluster" dev=dm-0 ino=1442475 scontext=system_u:system_r:corosync_t:s0 tcontext=system_u:object_r:cluster_var_lib_t:s0 tclass=dir It looks like some of the new binaries need to be labelled correctly. [root@buzz-01 ~]# ls -Z `rpm -ql cman | grep bin` -rwxr-xr-x. root root system_u:object_r:bin_t:s0 /usr/sbin/ccs_config_dump -rwxr-xr-x. root root system_u:object_r:bin_t:s0 /usr/sbin/ccs_config_validate lrwxrwxrwx. root root system_u:object_r:bin_t:s0 /usr/sbin/ccs_test -> ccs_tool -rwxr-xr-x. root root system_u:object_r:corosync_exec_t:s0 /usr/sbin/ccs_tool -rwxr-xr-x. root root system_u:object_r:bin_t:s0 /usr/sbin/ccs_update_schema -rwxr-xr-x. root root system_u:object_r:bin_t:s0 /usr/sbin/cman_notify -rwxr-xr-x. root root system_u:object_r:bin_t:s0 /usr/sbin/cmannotifyd -rwxr-xr-x. root root system_u:object_r:corosync_exec_t:s0 /usr/sbin/cman_tool -rwxr-xr-x. root root system_u:object_r:dlm_controld_exec_t:s0 /usr/sbin/dlm_controld -rwxr-xr-x. root root system_u:object_r:bin_t:s0 /usr/sbin/dlm_tool -rwxr-xr-x. root root system_u:object_r:fenced_exec_t:s0 /usr/sbin/fenced -rwxr-xr-x. root root system_u:object_r:fenced_exec_t:s0 /usr/sbin/fence_node -rwxr-xr-x. root root system_u:object_r:fenced_exec_t:s0 /usr/sbin/fence_tool -rwxr-xr-x. root root system_u:object_r:bin_t:s0 /usr/sbin/gfs_control -rwxr-xr-x. root root system_u:object_r:gfs_controld_exec_t:s0 /usr/sbin/gfs_controld -rwxr-xr-x. root root system_u:object_r:groupd_exec_t:s0 /usr/sbin/groupd -rwxr-xr-x. root root system_u:object_r:bin_t:s0 /usr/sbin/group_tool -rwxr-xr-x. root root system_u:object_r:bin_t:s0 /usr/sbin/mkqdisk -rwxr-xr-x. root root system_u:object_r:qdiskd_exec_t:s0 /usr/sbin/qdiskd Version-Release number of selected component (if applicable): cman-3.0.12.1-10.el6.x86_64 selinux-policy-3.7.19-107.el6.noarch How reproducible: Easily Steps to Reproduce: 1. update cluster.conf 2. run cman_tool version -r Actual results: See above Expected results: cluster.conf should be updated around the cluster without causing selinux AVCs. Additional info:
I should mention that I am running the tool from qarsh so we're starting in the qarshd_t context and transitioning to corosync_t
# sesearch -A -s corosync_t -t cluster_var_lib_t Found 3 semantic av rules: allow corosync_t cluster_var_lib_t : file { ioctl read write create getattr setattr lock append unlink link rename open } ; allow corosync_t cluster_var_lib_t : dir { ioctl read write getattr lock add_name remove_name search open } ; Nate, something is wrong with your policy. Try to reinstall.