使用bash脚本修改Apache配置文件

使用bash脚本修改Apache配置文件,apache,apache2,bash,Apache,Apache2,Bash,我目前正在编写一个脚本来自动化我们的CMS设置和部署。该过程的一部分是向Apache2添加别名,这通常通过Webmin手动完成。 目前,我希望在存储所有别名的Apache2 include文件中添加一行,使用以下命令: echo Alias /path \"/var/www/directory\" >> alias.include 我遇到的问题是,这个include文件归root所有,并且当前具有权限-rw-r-r-。我可以附加此文件的唯一方法是chmod权限,进行更改,然后chm

我目前正在编写一个脚本来自动化我们的CMS设置和部署。该过程的一部分是向Apache2添加别名,这通常通过Webmin手动完成。 目前,我希望在存储所有别名的Apache2 include文件中添加一行,使用以下命令:

echo Alias /path \"/var/www/directory\" >> alias.include

我遇到的问题是,这个include文件归root所有,并且当前具有权限-rw-r-r-。我可以附加此文件的唯一方法是chmod权限,进行更改,然后chmod返回。这在我看来真的很狡猾。有什么建议吗?

如何将include文件的所有者更改为执行更新的所有者

cd /alias/path
chown user *.include
当然,root用户仍然可以读取/写入该文件

或ligther版本,创建一个仅用户所属的新组


除非您使用支持ACL的文件系统,否则您的选项是

  • 以root用户身份运行bash脚本
  • 更改文件的所有权或组以匹配运行脚本的用户
groupadd newgroup
usermod -a -G newgroup user
cd /alias/path
chgrp newgroup *.include
chmod 664 *.include