从网页和 sudo 以编程方式创建 svn repo

从网页和 sudo 以编程方式创建 svn repo

我们希望自动为新项目创建 svn repos 和 trac 环境。基本上,这意味着创建一个 Web 脚本,从用户那里获取一些信息(如环境和 repo 名称等),然后执行

sudo -u svn svnadmin create /var/svn/<projectname>
trac-admin /var/trac/sites/<projectname> initenv [... All extra params...]

对于第二条命令,这很简单,因为它已经以 www-data 用户身份运行,所以我不必使用 sudo。但对于第一条命令,我必须使用 sudo 并添加www-data到 sudoers 文件中。我想知道这是否是一个好主意,以及在这种情况下如何做到这一点。阅读手册页让我对此的疑虑多于确定性。

顺便说一句,这个网络服务器只能从我们的内部网络访问。操作系统是 Ubuntu Server 10.04。

答案1

更新

将文件夹所有者设置/var/svnwww-data

chown -R www-data:www-data /var/svn

然后您就可以从无需的网页创建一个 Subversion 存储库sudo


如果你真的想这样做,我们可以限制www-data用户运行svnadmin命令而不提示输入密码。输入visudo并添加以下行:

www-data  ALL=(ALL)   NOPASSWD:/usr/bin/svnadmin

相关内容