【问题标题】:Running a file as nonroot from a root bash script从根 bash 脚本以非根用户身份运行文件
【发布时间】:2010-04-09 19:34:17
【问题描述】:

好的,我目前在我的服务器上使用 Eggdrop IRC 机器人。我想制作一个 bash 脚本来同时启动它以及其他一些脚本。剩下的就是让它启动,但它不会以 root 身份运行。

不过,我还需要在文件的当前目录下才能运行,不然会报错。

例如: /home/eggdrop/eggdropbot/eggdrop 会显示错误,所以要运行它我需要 cd /home/eggdrop/eggdropbot 然后 ./eggdrop

所以我不能只使用“sudo -u eggdrop /home/eggdrop/eggdropbot/eggdrop”,你可能知道,sudo 也不会 cd,因为那毫无意义。

有什么建议吗?

【问题讨论】:

    标签: linux bash sudo


    【解决方案1】:

    为什么不先cd,然后再sudo -u ./eggdrop .

    【讨论】:

    • 因为不知何故我是个白痴,没想到这一点。一秒钟让我试试看。
    • 呃,我是个白痴,工作就像一个魅力。其实我早就想到了,我想我忘记了。我想是太努力让它变得更简单一点。只是设法使它变得更加困难。谢谢
    【解决方案2】:

    如何执行cd,然后才使用sudo 启动命令?

    我想这样的事情应该可以解决问题:

    cd /home/eggdrop/eggdropbot && sudo -u eggdrop ./eggdrop
    

    【讨论】:

      【解决方案3】:

      您可以以root用户cd进入该目录,然后使用sudo -u从工作目录调用程序。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-10-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-10
        • 2011-03-10
        • 1970-01-01
        相关资源
        最近更新 更多