以用户身份登录运行命令与执行 sudo -u 有什么区别

阿卜杜勒

我想知道运行$userA: command line$userB: sudo -u userA command line在 linux 终端中的区别

是否有任何特定的事情导致文件被创建。与创建 deb 文件一样,运行 dpkg-buildpackage 时不应使用 sudo 权限。

v010dya

您需要记住的是,当运行命令时,有两件事会起作用:

  1. 在这种情况下,用户的权限是什么。
  2. 命令运行的环境是什么。

当您以特定用户身份登录时,您会更改这两个方面,但是当您使用时,sudo -u您只需更改第一个方面。

考虑这一点,假设全新安装:

(以用户A身份运行):

vim /home/userA/test

(现在作为用户B):

sudo -u userA vim /home/userA/test

这两个命令都可以完美运行,直到很久以后您才可能注意到错误。因为在这两种情况下都vim需要为其配置文件创建一个目录。它以userA 的权限运行,因此它将成为目录的所有者,但在第一种情况下,目录将在正确的位置创建:/home/userA/.vim,但在后一种情况下会出现问题,环境仍然指向userB 的主目录,因此/home/userB/.vim使用错误的权限创建。

如果您尝试启动一些其他应用程序,例如文件管理器(创建缩略图、日志等),您将到处都有许多文件,这些文件的所有者和权限都错误。


您可以注意到pwd显示您的主目录并在您的计算机上尝试以下操作:

作为用户A:

pwd
sudo -u userB pwd

两者都应该给你/home/userA/,即使第二个以 userB 身份运行

但是,以 userB 身份登录,然后:

pwd

你现在会看到 /home/userB/

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用 sudo 执行命令与以 root 用户身份执行命令有什么区别?

命令“ su -s”和“ sudo -s”有什么区别?

sudo X和以root身份运行X有什么区别?

root用户和Ubuntu中的sudo命令有什么区别?何时应使用root?

root和sudo有什么区别?

gksu和sudo有什么区别?

命令“ sudo gearmand -d”和“ sudo service gearman-job-server start”之间有什么区别?

使用sudo -u以其他用户身份执行命令时出现问题

sudo 和 sudo -H 有什么区别?

“ sudo -i”和“ sudo su-”有什么区别

'sudo [command]'和'sudo sh [command]有什么区别?

从下载的 .deb 文件安装和从命令“sudo apt-get install”安装有什么区别?

组根和组sudo有什么区别?为什么默认情况下,root用户不是sudo组的成员?

sudo -u和su -c之间的区别

有没有我可以以非root用户身份运行的命令,以查看用户是否可以运行某些sudo命令

“ sudo -s”和“ su root”之间有什么区别?

sudo su和just su有什么区别?

根终端和sudo有什么区别?

sudoedit和sudo vim有什么区别?

pip install和sudo pip install有什么区别?

sudo和su -c有什么区别

“ sudo”和“ admin”组有什么区别?

“ gksudo nautilus”和“ sudo nautilus”有什么区别?

sudo -i和su有什么区别?

SUDO和更改为root之间有什么区别

sudo reboot和vs reboot有什么区别?

所有用户在sudo su /登录后执行bash命令的最佳位置?

`usize`和`u32`有什么区别?

“ sort -u”和“ sort | uniq”有什么区别?