Questions tagged «su»

su是一个实用程序,用于以另一个用户(默认情况下为root)运行shell或其他命令。

7
“车轮”组在哪里获得名称?
的wheel在* nix计算机组通常是指基团与某种根状接入。我听说在某些* nixes上是有权运行的一组用户su,但是在Linux上似乎是任何人(尽管您自然需要root密码)。在Linux发行版中,我用过的似乎是默认情况下有权使用的组sudo; 他们有一个条目sudoers: %wheel ALL=(ALL) ALL 但这一切都是切线的。我的实际问题是:为什么叫这个小组wheel?我以前听过各种各样的解释,但是不知道它们是否正确。有人知道该词的实际历史吗?
220 sudo  history  group  su 


8
获得root特权的最安全方法是:sudo,su或login?
即使我的非特权用户受到威胁,我也希望安全地拥有root帐户。 在Ubuntu上,默认情况下只能出于“安全原因”使用sudo。但是,我不确定它是否比在文本模式控制台上使用登录名更安全。如果攻击者可以以我的普通用户身份运行代码,则可能会出错。例如,添加别名,向我的PATH添加内容,设置LD_PRELOAD和X11键盘记录器,仅举几例。我唯一看到的好处是超时,因此我永远不会忘记注销。 我对su也有同样的疑问,但是它甚至没有时间限制。某些操作(尤其是IO重定向)对su更为方便,但是从安全角度而言,这似乎更糟。 在文本模式控制台上登录似乎是最安全的。由于它是由init启动的,因此如果攻击者可以控制PATH或LD_PRELOAD,则他已经是root。X上运行的程序无法拦截按键事件。我不知道X上运行的程序是否可以拦截[ctrl] + [alt] + [f1](并打开一个看起来像控制台的全屏窗口)或就像Windows上的[ctrl] + [alt] + [del]一样安全。除此之外,我看到的唯一问题是缺少超时。 那我想念什么吗?为什么Ubuntu家伙决定只允许sudo?如何提高任何一种方法的安全性? SSH呢?传统上,root用户无法通过SSH登录。但是使用上述逻辑并不是最安全的做法: 通过SSH允许root 切换到文字模式 以root身份登录 SSH到另一台机器 以root身份登录?
120 security  sudo  login  su  privileges 

8
在Linux中需要`fakeroot`命令是什么
为什么我们完全需要fakeroot命令?我们不能简单地使用sudoor su命令吗? 手册页显示: fakeroot-在具有root特权的环境中运行命令以进行文件操作 About.com说: 提供伪造的根环境。该软件包旨在实现以下功能:dpkg-buildpackage -rfakeroot即,消除成为软件包构建根的必要性。这是通过设置LD_PRELOAD到libfakeroot.so,围绕提供包装getuid,chown,chmod,mknod,stat,...,从而创建一个虚拟根环境。如果您不了解其中任何一项,则不需要fakeroot! 我的问题是,解决简单问题su或sudo不解决问题有什么特殊目的?例如,要重新打包ubuntu中所有已安装的软件包,我们给出以下命令: $ fakeroot -u dpkg-repack `dpkg --get-selections | grep install | cut -f1` 我们可以用sudo或su而不是fakeroot来执行上述命令吗? $ sudo dpkg-repack `dpkg --get-selections | grep install | cut -f1` 编辑: 运行: $ sudo dpkg-repack `dpkg --get-selections | grep install | cut -f1` 给我这个错误: 控制目录具有错误的权限700(必须为> = 0755和<= 0775) …
92 sudo  su 

3
su vs sudo -s vs sudo -i vs sudo bash
以下命令之间有什么区别: su sudo -s sudo -i sudo bash 我知道,因为su我需要知道root密码,并且sudo必须在sudoers文件中,但是一旦执行,有什么区别? 我知道su和之间有区别,sudo -s因为我的主目录/root在执行之后su,但是我的主目录仍然/home/myname在执行之后sudo -s。但是我怀疑这只是我所缺少的根本差异的征兆。
89 sudo  su 

2
是否有充分的理由运行sudo su?
要在禁用了root帐户的计算机上启动root shell,可以运行以下命令之一: sudo -i:运行交互式登录外壳(读取/root/.bashrc和/root/.profile) sudo -s:运行非登录交互式外壳程序(读取/root/.bashrc) 在Ubuntu世界中,我经常看到sudo su建议将其作为获取root shell的一种方法。为什么要在执行一个命令的同时运行两个单独的命令?据我所知,sudo -i等于sudo su -和sudo -s相同sudo su。 唯一的区别似乎是(sudo -i在左侧和sudo su -右侧比较): 并比较sudo -s(左)和sudo su(右): 主要的区别(忽略SUDO_foo变量和LS_COLORS)似乎是版本中的XDG_foo系统变量sudo su。 在任何情况下,是否有必要使用不太雅致的差异sudo su?我能安全地告诉人们(就像我经常遇到的那样)跑步sudo su毫无意义,还是我错过了什么?

2
su options-以其他用户身份运行命令
我想知道如何从脚本中以另一个用户的身份运行命令。 我将脚本的所有者设置为root。我还在脚本中运行以下命令以以hudson用户身份运行该命令: su -c command hudson 这是正确的语法吗?
75 bash  scripting  su  sudo 

3
-bash:sudo:找不到命令
我正在尝试部署Django应用。当我打印时, apt-get update 我看到 W: Unable to read /etc/apt/apt.conf.d/ - DirectoryExists (13: Permission denied) W: Unable to read /etc/apt/sources.list.d/ - DirectoryExists (13: Permission denied) W: Unable to read /etc/apt/sources.list - RealFileExists (13: Permission denied) E: List directory /var/lib/apt/lists/partial is missing. - Acquire (13: Permission denied) E: Unable to read /var/cache/apt/ …
63 debian  apt  sudo  su 

4
su不会更改用户,但也不会响应错误
在登录时,root我想登录su到特定的普通用户。我运行su username并立即收到提示,仍然是root。没有给出错误。我知道旧的“您要尝试使用的用户不具有您当前所在文件夹的权限”问题,在这种情况下并非如此。此外,没有显示任何错误,就我所知,在遇到特定权限问题时,通常就是这种情况。 我尝试su - username了相同的效果。该命令已处理,没有看到错误,我立即收到提示。 是什么导致这种现象?我该如何解决?
56 bash  su 

6
“ su”错误,“由于身份验证错误而拒绝了X11连接”
以root用户身份,我连接到远程主机以执行命令。只有“ standarduser”具有适当的ID文件和正确的.ssh / config,因此我首先切换用户: su standarduser -c 'ssh -x remotehost ./remotecommand' 该命令运行正常,但是尽管我使用了“ -x”(禁用X11-Forwarding)并在中禁用了X11Forwards /etc/ssh/ssh_config,但仍然收到错误消息: X11 connection rejected because of wrong authentication. 当我以“ standarduser”身份登录时,未收到错误消息。 这很烦人,因为我想将命令集成到cron作业文件中。我知道该错误消息是指对根.XAuth文件的错误身份验证,但是我什至没有尝试通过X11连接。 为什么“ ssh -x”不禁用X11连接并抛出错误消息? 更新:该消息仅在我登录屏幕时显示,在本地计算机本身(不带屏幕)上使用上述命令时显示,我不会收到错误消息,因此使用cron也应该没问题。 我还使用了相同的命令-v,甚至在SSH发出状态信息之前,都意外收到了错误消息FIRST: root@localhost:~# su standarduser -c 'ssh -x remotehost ./remotecommand' X11 connection rejected because of wrong authentication. OpenSSH_6.2p2 Ubuntu-6ubuntu0.1, OpenSSL 1.0.1e 11 Feb …
52 bash  gnu-screen  su  xauth 

3
.bash_profile在运行su时未获得
例如,我有一个用户user1对其进行了修改.bash_profile,其中之一更改了PATH,例如:export PATH=/some/place:$PATH。如果我以user1或身份登录,则此更改效果很好su - user1。 但是,如果我尝试通过suas 运行命令root,例如: su -c test.sh oracle (测试包含echo $PATH) 它似乎没有修改PATH(或root的修改PATH)。我也尝试过复制.bash_profile到.profile,但无济于事。 为什么会这样呢?


7
如何抑制dd输出?
我有一个bash脚本,可使用创建一些文件dd。问题是dd抛出了大量的输出,这将使我的脚本的输出混乱。经过搜索,我找到了解决方案: dd if=boot1h of="/dev/r$temp1" >& /dev/null 是否有替代方法,或者重定向到/dev/null唯一方法?
35 bash  sudo  su  dd 

7
以另一个(非root)用户身份运行GUI应用程序
假设我有2个用户帐户user1和user2。当我以身份登录user1,然后切换为user2使用时su,我可以执行命令行程序,但是GUI程序失败。 例: user1@laptop:~$ su - user2 user2@laptop:~$ leafpad ~/somefile.txt No protocol specified leafpad: Cannot open display: 那么如何运行GUI应用程序?
34 shell  x11  xorg  su 


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.