代码之家  ›  专栏  ›  技术社区  ›  Jonah Braun

sudo nohup nice<-以什么顺序?

  •  18
  • Jonah Braun  · 技术社区  · 17 年前

    因此,我有一个脚本,我想作为root用户运行,不需要挂断,而且很好。我应该把命令按什么顺序排列?

    或

    nohup nice sudo foo.bash&

    等

    真正地 知道

    6 回复  |  直到 17 年前
        1
  •  12
  •   Felipe Alvarez    16 年前

    如果需要负面的精确性,我会: 因为根据'info coreutils'nohup应该 控制

    如果需要正面的精确性,我会简单地做: 这确保nohup和nice不会以root权限运行。

        2
  •  11
  •   Adam Crume    16 年前

    nice sudo nice
    sudo nice nice
    

        3
  •  6
  •   user42092 user42092    17 年前
    ~ $ sudo nohup nice whoami
    nohup: ignoring input and appending output to `nohup.out'
    ~ $ sudo cat nohup.out 
    root
    

    第一种方法和第二种方法的区别在于谁拥有nohup.out文件。 sudo 首先将其归root所有, nohup

        4
  •  5
  •   Draemon    17 年前

    sudo应该放在最后,这样nohup和nice就不会以root权限运行。

    那么后者呢

        5
  •  3
  •   Partly Cloudy    14 年前

    不同意 还有其他答案。我建议:

    sudo nohup nice foo.sh

    诺胡普苏多 #失败

    (我注意到其他人报告说niceness没有通过,所以似乎最好把它放在最后……尽管如果对您的操作系统有疑问,请将nice放在前面,因为nice没有生效通常比nohup没有生效的问题要小!)

    注意 叶nohup.out归root所有,也如前所述,但这是由一个:

    sudo nohup nice foo.sh >> /tmp/foo.stdout.log 2>> /tmp/foo.stderr.log

        6
  •  1
  •   mat    17 年前

    我猜他们都会执行exec*系统调用将球传给下一个,因此,无论顺序如何,都不会留下任何挂起过程。

    我认为nohup应该是最后一个,这样其他两个就不会影响信号处理器。(我肯定尼斯不会玩信号,但sudo会。)

    然后,sudo和nice,这完全取决于您想用nice改变调度优先级的方式。

    • 如果你想提高优先级(也就是说,给nice一个负值),那么在之前先做sudo。
    推荐文章