【问题标题】:how to switch to root user without entering password in bash script on RedHat如何切换到 root 用户而不在 RedHat 上的 bash 脚本中输入密码
【发布时间】:2012-06-04 13:38:23
【问题描述】:

我想通过在代码中指定密码而不是输入密码来切换到 RedHat 上的 bash 脚本中的 root 用户。

我们将不胜感激。

谢谢

【问题讨论】:

    标签: linux bash root redhat


    【解决方案1】:

    在脚本中以纯文本形式存储密码不是一个好主意。您可以使用visudo 编辑sudoers 文件,并允许用户使用sudo 运行命令而无需使用密码。

    【讨论】:

      【解决方案2】:

      sudo 的灵活性被广泛低估了。这导致了非常糟糕的做法(例如sudo su - canon-ball 手术方法)。

      更好的方法是专门允许您打算允许的命令不使用密码

      phill = NOPASSWD: /bin/ls, /usr/bin/lprm
      

      查看更多示例:Shell script - Sudo-permissions lost over time

      【讨论】:

        【解决方案3】:

        让 sudo 使用 -S 标志从标准输入读取数据

        sudo -S mkdir /mnt/somedir <<END 
        password here
        
        END   
        

        这将让用户在 /mnt 中创建一个由 root 拥有的目录

        编辑:这似乎不适用于“su”命令,但我认为这个解决方案可能会有所帮助

        【讨论】:

        • @user1433243: &lt;&lt;ENDhere document 的开头,最后一行END 是它的结尾。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-11-02
        • 2018-07-07
        • 2012-05-17
        • 1970-01-01
        • 2018-12-30
        • 1970-01-01
        相关资源
        最近更新 更多