最近要基于原有的svn搭建一个测试环境,遇到几个问题。
最开始遇到的是csvn启动失败报错/sbin/runuser: cannot set groups: Operation not permitted
解决方法是csvn.conf文件中有RUN_AS_USER字段,需要修改为启动csvn的用户。
之后执行./csvn start,爆出如下错误,启动失败
WARNING: CSVN Console timed-out waiting for http://localhost:3344/csvn
执行./csvn-httpd start,根据报错发现是lib目录下的软链接需要重新创建。
再次执行启动,报错如下:
Starting Subversion Edge Apache Server: httpd: Syntax error on line 72 of /scm/csvn/data/conf/httpd.conf: Syntax error on line 15 of /scm/csvn/data/conf/svn_viewvc_httpd.conf: Cannot load /scm/csvn/lib/modules/mod_python.so.2.6 into server: libpython2.6.so.1.0: cannot open shared object file: No such file or directory
这里可以看到,需要找到libpython2.6.so.1.0,这个文件是在安装python时生成的,在python的安装目录下。
需要执行 vim /etc/ld.so.conf,把libpython2.6.so.1.0所在的目录添加进去,然后执行/sbin/ldconfig -v命令,导入库
ldconfig是一个程序,通常它位于/sbin下,是root用户使用的东东。具体作用及用法可以man ldconfig查到
它的作用就是将/etc/ld.so.conf列出的路径下的库文件 缓存到/etc/ld.so.cache 以供使用。因此当安装完一些库文件,或者修改ld.so.conf增加新的库路径后,需要运行一下/sbin/ldconfig使所有的库文件都被缓存到ld.so.cache中,如果没做,即使库文件明明就在/usr/lib下的,也不会被使用。