我们试图在 Ubuntu 机器上安装我们的软件。为此,我们需要root
特权。基本上,所有我们需要做的是运行一个可运行的jar,如:sudo java -jar runnableJar.jar
。
所有这些命令都会返回:Unable to resolve host xxxxx
.
该/etc/hosts
文件hostname
针对导致此错误的环回接口列出了不正确的列表。所有不需要的命令都sudo
运行良好。
我一直在阅读环回接口,我的理解是它设置了本地主机并且是一个虚拟网络接口。但是,为什么sudo
需要它呢?
我正在尝试在 CentOS 机器上复制一些文件和文件夹。
我这样做: sudo cp source destination &
在后台运行它。
我cp
现在运行时看到有三个进程ps aux | grep cp
:其中一个是grep
命令本身,但另外两个是上述cp
命令的副本:一个包含上面列出的整个命令,另一个没有sudo
前面的命令。两个进程的PID也相差一。两者的所有者都被列为 root。
为什么有两个进程?
我有一个用户,比如说userX
在 Centos7 机器上。我已经从这个用户中删除了所有的组,这个用户现在只分配给了组userX
。但是,我仍然可以使用sudo su
并成为root
.
命令序列:
1.SSH
作为普通用户sriram
。
2.sudo
对userX
:sudo su - userX
。
3.成为根:sudo su
。这在没有密码等的情况下是允许的。理想的行为userX
是不允许成为 root。
运行sudo -lU userX
::
[sudo] password for sriram:
Matching Defaults entries for userX on this host:
requiretty, !visiblepw, always_set_home, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS",
env_keep+="MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT
LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE", …
Run Code Online (Sandbox Code Playgroud)