2019年10月28日15:36:06
今天使用svn Apache 进行搭建
搭建完以后发现可以update但不能提交的一个问题:
Error: could not begin a transaction
解决方式:
1:查看权限,如果是权限问题那么恭喜你
sudo chown -R apache:apache /var/www/svn/spring-hello-world/
将其设置成apache即可
2:不管怎么设置都没有作用,那么可以使用如下
日志文件:
SELinux is preventing httpd from write access on the 文件 /var/www/svn/spring-hello-world/db/txn-current-lock.
***** 插件 httpd_write_content (48.3 置信度) 建议 *********************************
If you want to allow httpd to have write access on the txn-current-lock file
Then 需要更改 '/var/www/svn/spring-hello-world/db/txn-current-lock' 中的标记
Do
# semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/svn/spring-hello-world/db/txn-current-lock'
# restorecon -v '/var/www/svn/spring-hello-world/db/txn-current-lock'
***** 插件 restorecon (48.3 置信度) 建议 ******************************************
If you want to fix the label.
/var/www/svn/spring-hello-world/db/txn-current-lock default label should be httpd_sys_rw_content_t.
Then you can run restorecon. The access attempt may have been stopped due to insufficient permissions to access a parent directory in which case try to change the following command accordingly.
Do
# /sbin/restorecon -v /var/www/svn/spring-hello-world/db/txn-current-lock
***** 插件 catchall_boolean (4.32 置信度) 建议 ************************************
If you want to allow httpd to unified
Then 必须启用 'httpd_unified' 布尔值告知 SELinux 此情况。
Do
setsebool -P httpd_unified 1
***** 插件 catchall (0.97 置信度) 建议 ********************************************
If you believe that httpd should be allowed write access on the txn-current-lock file by default.
Then 应该将这个情况作为 bug 报告。
可以生成本地策略模块以允许此访问。
Do
allow this access for now by executing:
# ausearch -c 'httpd' --raw | audit2allow -M my-httpd
# semodule -i my-httpd.pp
更多信息:
源环境 (Context) system_u:system_r:httpd_t:s0
目标环境 unconfined_u:object_r:httpd_sys_content_t:s0
目标对象 /var/www/svn/spring-hello-world/db/txn-current-
lock [ file ]
源 httpd
源路径 httpd
端口
主机 localhost.localdomain
源 RPM 软件包
目标 RPM 软件包
策略 RPM selinux-policy-3.13.1-229.el7_6.12.noarch
Selinux 已启用 True
策略类型 targeted
强制模式 Enforcing
主机名 localhost.localdomain
平台 Linux localhost.localdomain
3.10.0-957.21.3.el7.x86_64 #1 SMP Tue Jun 18
16:35:19 UTC 2019 x86_64 x86_64
警报计数 32
第一个 2019-10-28 19:48:16 CST
最后一个 2019-10-28 23:10:32 CST
本地 ID f3dd7387-7be1-497b-a5e0-67e71424c600
原始核查信息
type=AVC msg=audit(1572275432.986:358): avc: denied { write } for pid=10332 comm="httpd" name="txn-current-lock" dev="dm-0" ino=85751535 scontext=system_u:system_r:httpd_t:s0 tcontext=unconfined_u:object_r:httpd_sys_content_t:s0 tclass=file permissive=0
Hash: httpd,httpd_t,httpd_sys_content_t,file,write
解决方式在文件里面已经说了大概的解决方式
chcon -R -t httpd_sys_rw_content_t /var/www/svn/spring-hello-world/
即可解决!