为什么需要 sudo bash?

Dav*_*542 4 unix bash shell

我正在阅读以下代码:

$ sudo bash
# cd /home/
# ./gitpull.sh
Run Code Online (Sandbox Code Playgroud)

为什么我需要第一行,它到底是做什么的?如果我只是做了$ sudo而不是$ sudo bash

hvg*_*des 7

它以root级别用户身份启动 bash shell 。您需要它,因为通常普通用户无法访问/home/

你正在做的事情的危险是你在一个 root shell 中——你很容易弄乱你的机器。


Wil*_*ell 6

你最好这样做:

$ sudo sh -c 'cd /home; ./gitpull.sh'
Run Code Online (Sandbox Code Playgroud)

因为以 root 身份调用的命令将被记录。直接通过 sudo 调用 shell 会避免 sudo 的所有安全优势,因此应该避免。