unix - 如何使用任何编程语言编辑/更新主机(etc/hosts)文件

标签 unix hosts

我想动态地编辑/更新主机(etc/hosts)文件以添加域。

要编辑主机(etc/hosts)文件需要管理员权限。使用 Linux 我可以通过此命令执行此操作

sudo gedit/etc/hosts

但我正在尝试使用编程语言来做到这一点。

我该怎么做?

最佳答案

最好的办法是使用 SSH 之类的东西,并以 root 身份(或 system() 中的 sudo)连接到计算机,修改文件,然后断开连接。这样做的另一个好处是提示用户输入密码很方便。

要在没有提示的情况下执行此操作,用户必须设置一些方法以 root 身份完成它。 IE。设置辅助应用程序、安装无密码 key 、修改 LDAP 树或其他各种方式。由于缺乏更好的术语,这有点“恶心”。

对于通常没有权限升级功能的用户,没有办法让它工作。

关于unix - 如何使用任何编程语言编辑/更新主机(etc/hosts)文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1642055/

相关文章:

regex - 使用 Sed 删除前导空格和尾随空格的问题

python - Python 2.6.4 中的 urllib2 : Any way to override windows hosts file?

linux - 在 Linux Mint 17.1 上清除 Firefox Developer Edition DNS 缓存

windows - 如何让 Windows 7 上的 Web 浏览器考虑 etc/hosts 文件

apache - 在 Apache 2.4 中调试为什么我得到 "You don' t have permission to access”

linux - := and += in make file?有什么区别

c - 错误的文件描述符

linux - 将 Hostname 命令的输出附加到/etc/hosts

linux - grep 包含 1 个字符后跟另一个字符的行

c - UNIX:退出时等待进程子进程?