我不知道如何命名我所寻找的东西但我会尝试描述它。
我正在寻找一种工具,它允许您在大多数平台上使用相同的命令行执行常见任务。它将通过调用特定于平台的工具来执行此操作。
例子:
service apache stop/start/restart
- 即使你运行的是 Ubuntu,其中 apache 是 apache2,也可以正常工作
service network restart
- 重新初始化所有网络接口
service apache disable
- 禁用它从启动
service firewall stop/start/restart
- 将使用操作系统防火墙(检测它)
pm install abc
- 在 Windows 上运行 yun、apt-get、port 或 raise not-implemented :)
pm remove abc
pm search abc
- 根据名称查找包
ifconfig
ipconfig
-在 Windows 上运行
是否有任何工具可以实现这一目标?如果没有的话,您愿意做出贡献吗?
答案1
据我所知,没有命令行工具可以做这样的事情。这听起来是个好主意,我承认在阅读您的问题后,我并没有进行过任何粗略的 Google 搜索,但我知道在我担任系统管理员的这么多年里,我从未见过或听说过这样的事情。
与此相关的是,你听说过/使用过网页管理前?
Webmin 是一个基于 Web 的 Unix 系统管理界面。使用任何现代 Web 浏览器,您都可以设置用户帐户、Apache、DNS、文件共享等。Webmin 消除了手动编辑 Unix 配置文件(如 /etc/passwd)的需要,并允许您从控制台或远程管理系统。请参阅标准模块页面查看 Webmin 内置的所有功能列表,或者查看截图。
正如您所描述的,它为服务提供了标准接口,并且我已经成功编写了脚本,这些脚本会将命令发送到 Webmin,然后 Webmin 会调用类似/etc/init.d/named reload
或类似的东西。因此,如果您正在寻求创建类似的东西,那么这对您来说可能是一个很好的开始。
答案2
我虽然建议使用像 puppet 这样的配置管理系统,但我对此了解甚少,所以我快速浏览了一下,然后就stackoverflow 上的这篇文章
对接受的答案提出的建议是智能青蛙它也适用于 Windows。
重点是,您可以编写一个配置来要求安装 apache,而 SmartFrog 知道如何在包括 Windows 在内的各种不同系统上实现这一点。
如果您对 Windows 不感兴趣,而只是想要跨 Linux 发行版的某些功能,Puppet 就可以满足您的需求。
如果这些系统可以做到这一点,那么代码就已经存在了,如果你要构建某些东西,也许看看那个区域会有所帮助。