gpt4 book ai didi

svn - Ubuntu rc.local 未运行 Subversion 命令

转载 作者:行者123 更新时间:2023-12-04 19:04:42 26 4
gpt4 key购买 nike

这是基于 ubuntu 的自动缩放 amazon ec2 实例的 rc.local:(请注意,出于安全目的,用户名、域和路径已更改)

logger "Begin rc.local startup script:"

logger "svn checkout"
sudo -u nonRootUser /usr/bin/svn co svn+ssh://user@svnserver.com/path/to/repo /var/www/html | logger

logger "chown writeable folder"
chown www-data /var/www/html/writeableFolder

logger "restart apache"
/etc/init.d/apache2 restart | logger

exit 0

这是 sudo tail -n 40/var/log/syslog 的输出
Mar 10 22:05:20 ubuntu logger: Begin rc.local startup script:
Mar 10 22:05:20 ubuntu logger: svn checkout
Mar 10 22:05:20 ubuntu logger: chown writeable folder

当然,它不会重新启动 apache2,因为它在 chown 上出错了。但是,我确实发现,如果我事先进行了结帐,并将 rc.local svn 命令设置为 svn update,它仍然不会运行 svn 命令,但会成功输出 apache2 restart。

当我手动运行这些相同的 svn 命令时,它们可以完美运行,但奇怪的是,在 rc.local 中它们不会产生任何输出到记录器,但 apache2 restart 会。

我还尝试使用 sudo -u 和不使用 svn co 和 svn update 运行。

如何让 svn 命令运行?完整结帐或更新。在这一点上,要么总比没有好!

最佳答案

不知道为什么sudo在这里引起问题,但您也可以使用 su ,它会像这样工作:

su nonRootUser -c "/usr/bin/svn co svn+ssh://user@svnserver.com/path/to/repo /var/www/html | logger"

关于svn - Ubuntu rc.local 未运行 Subversion 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2421194/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com