【问题标题】:How could I get a root level access/permission in runtime golang application?如何在运行时 golang 应用程序中获得根级别的访问/权限?
【发布时间】:2017-07-17 16:36:34
【问题描述】:

以下命令将创建一个用户,但它要求 sudo 密码。

cmd := "sudo /usr/sbin/useradd "+ 
      "-m -d "+home_dir+                       
      " -s "+preferredShell +
      " -g "+usrLoginName+
      " "+ usrLoginName

cmdStatus,err := exec.Command("bash","-c",cmd).Output()

如何在没有 sudo 的情况下执行上述命令或如何为我的 golang 应用程序提供 root 级别权限?如何解决?

【问题讨论】:

    标签: linux go


    【解决方案1】:

    使用 sudo 运行您的 golang 应用程序。

    【讨论】:

    • 但我不想这样做,它需要 sudo 密码。能否请您提出一些更好的替代方案?
    • 上面一行是自动执行的(以 90 秒为间隔),那么我们如何在终端提供 sudo 密码?
    • 好吧,听起来你需要学习 Unix 系统管理。成为 root 最简单的方法就是不要放弃它,所以作为系统服务运行。
    • @PiyushSinha 或者如果你在桌面环境中,你可能会使用 Polkit:en.wikipedia.org/wiki/Polkit
    • 使用visudo(或者,更准确地说,/etc/sudoers文件)可以指定运行sudo时不会要求输入密码的用户:askubuntu.com/a/147265/2639
    猜你喜欢
    • 1970-01-01
    • 2011-06-21
    • 2016-04-01
    • 2015-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多