当前位置: 技术问答>linux和unix
请教大家是如何通过程序去动态修改系统服务参数的?
来源: 互联网 发布时间:2017-05-24
本文导语: 需要在linux上开发一个应用层软件,对系统当前的dhcp,nat,dns,ufw等服务进行配置信息进行查看修改,对一些时时参数比如当前系统已经分配的地址信息之类的,需要进行查看。 目前已经知道的实现方法: 1,用程...
需要在linux上开发一个应用层软件,对系统当前的dhcp,nat,dns,ufw等服务进行配置信息进行查看修改,对一些时时参数比如当前系统已经分配的地址信息之类的,需要进行查看。
目前已经知道的实现方法:
1,用程序去访问,构建相关服务的配置文件。比如dhcpd.conf, dhcp.lease等
缺点是觉得比较复杂。因为每个服务的配置文件格式都不一样,而且c语言下操作这些文件还比较麻烦。
2.用数据库维护所有数据,用system()去动态进行配置。但是这种方法好像没有办法查看诸如当前已经分配的dhcp地址之类的信息,最终还得依靠文件解析解决。
3.直接修改系统相关服务的源代码,把自己的应用程序配置代理接进去,取代原有的从配置文件中获取数据的方法。
这个感觉动静大了,而且今后系统升级是个麻烦。
不知道大家有什么更好的建议呢?
目前已经知道的实现方法:
1,用程序去访问,构建相关服务的配置文件。比如dhcpd.conf, dhcp.lease等
缺点是觉得比较复杂。因为每个服务的配置文件格式都不一样,而且c语言下操作这些文件还比较麻烦。
2.用数据库维护所有数据,用system()去动态进行配置。但是这种方法好像没有办法查看诸如当前已经分配的dhcp地址之类的信息,最终还得依靠文件解析解决。
3.直接修改系统相关服务的源代码,把自己的应用程序配置代理接进去,取代原有的从配置文件中获取数据的方法。
这个感觉动静大了,而且今后系统升级是个麻烦。
不知道大家有什么更好的建议呢?
|
I will go with the first one. But do you have to use C? Is it an embedded system? Any script language is better than C for this job. If it's embedded, will Lua work?