Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了以健壮的方式自动维护syslog.conf等linux配置文件中的条目大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

有时我想自动将配置添加到我以后可以自行删除的conf文件中,例如我想暂时让10个主机登录到远程syslog服务器.所以我在脚本中是这样的; ##some other commands echo "kern.* @syslog.server.local" >> /etc/syslog.conf service syslogd restart 但是我经常更新其他一些命令并再次运
有时我想自动将配置添加我以后可以自行删除的conf文件中,例如我想暂时让10个主机登录到远程syslog服务器.所以我在脚本中是这样的;
##some other commands 
echo "kern.*            @syslog.server.local" >> /etc/syslog.conf
service syslogd restart
@H_874_18@但是我经常更新其他一些命令并再次运行脚本.显然这不是幂等的,我不能重新应用它没有一些grep / delete jiggerpokery,我不能轻易删除它.

@H_874_18@所以我采取了这样的做法;

cat <<HEREDOC >>/etc/syslog.conf
###some unique String###
echo "kern.*            @syslog.server.local"
###end some unique String###
HEREDOC
@H_874_18@这允许我这样做,使操作可重复…

sed -e 's/###some unique String###(*)###end some unique String###/replacement/g' /tmp/syslog.conf > /tmp/syslog.conf
cat <<HEREDOC >>$dfile
###some unique String###
echo "kecrn.*            @syslog.server.local"
###end some unique String###
HEREDOC
@H_874_18@然而这一切似乎都有点……

@H_874_18@(显然/etc/httpd/conf.d/someConffile.conf安排已解决了新版程序包的问题)

@H_874_18@有更简单的方法吗?

@H_874_18@我应该注意这种方法的任何警告?

解决方法

我已经使用SVN了.
假使,假设 @H_874_18@>你有一个svn存储库为每个主机:http://svn.localnet/thishost/,你想开始对’thishost’上的真实/etc/syslog.conf进行花哨的更改.
>您已经在/ configs /中为此主机配置了本地配置存储库

@H_874_18@开始管理此文件的配置

cp /etc/syslog.conf /configs/etc/
svn add /configs/etc/syslog.conf
svn commit -m "Managing syslog.conf"
@H_874_18@通过脚本进行更改

#echo some stuff into the file.. no need for extra markup/Metadata
cp /etc/syslog.conf /configs/etc/
svn commit -m "I added some junk temporarily"
service syslogd restart
@H_874_18@现在您可以回滚到以前的版本.如果在添加和回滚之间进行了其他永久性更改,则可以使用svn来获取版本之间的差异,并将这些内容合并在一起.

@H_874_18@当然,用git或任何你喜欢的代替版本控制.
并且还制作一些永久性脚本以减少出错的可能性,例如bash函数将cp作为基于路径的checkout repo中的文件,将提交注释作为参数.管他呢.

@H_874_18@你有一个配置存储库在svn:/// config /包含etc / syslog.conf,你知道存储库中最新的东西与文件系统上的实时配置文件相同:

大佬总结

以上是大佬教程为你收集整理的以健壮的方式自动维护syslog.conf等linux配置文件中的条目全部内容,希望文章能够帮你解决以健壮的方式自动维护syslog.conf等linux配置文件中的条目所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。