标签: sudo

更改了 sudoers 文件,无法再打开它;无法使用root打开任何文件

我使用以下方法更改了 sudoers 文件中的设置

须藤 

把它搞砸了。现在,当我尝试再次执行此操作或使用 sudo 打开任何文件时,我无法再打开它并收到以下错误消息:

>>> sudoers 文件:语法错误,第 7 行 

现在怎么办?

有什么办法可以解决这个问题(恢复设置),还是我需要安装一个全新的 linux 副本?

我得到这一切的原因是当它告诉我有一些错误时我按下了“Q”,这对我来说非常愚蠢。

谢谢。

编辑

我的 sudoers 文件与普通的 sudoers 文件没有什么不同。我刚刚在该文件中添加了 timestamp_timeout = 0 行,所有这些问题都出现了。我按照 James 的建议做了,甚至删除了该行(timestamp_timeout = 0)。我将文件权限更改为它请求的 0440,然后正常启动。然后,我收到相同的错误消息

sudoers file: syntax error, line 7 
sudo: parse error in /etc/sudoers near line 7
Run Code Online (Sandbox Code Playgroud) 如上。

我现在该怎么办 ??

编辑 2 解决

这就是我所做的:

  1. 使用 livecd 启动
  2. 删除旧的 sudoers 文件
  3. 制作新的 sudoers 文件并将所有内容复制到该文件,即最低配置设置,我幸运地将其保存在另一个文件中
  4. 将文件权限更改为 0440
  5. 从硬盘驱动器再次正常重新启动

万岁!!

linux sudo command-line ubuntu

7
推荐指数
2
解决办法
6295
查看次数

Xforwarding 不允许切换用户

我通过 ssh 连接到远程计算机并且 xforwarding 工作正常......但是一旦我“sudo su -”或“sudo su user2”它不再Xforwards任何给我错误的东西:

X11 connection rejected because of wrong authentication.
xterm Xt error: Can't open display: localhost:10.0
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

谢谢

ssh sudo x-windows x11-forwarding ubuntu

7
推荐指数
2
解决办法
8942
查看次数

如何以管理员权限执行命令并访问登录用户的文件?

我在理解上有一些问题sudo。我以非管理员/非 root 用户身份登录终端。这个“普通”用户不在 sudoers 文件中(我认为不应该)。

现在我尝试执行一个需要 admin/root 权限以及访问我的普通用户目录的命令——因此我不能简单地su进入一个 admin 或 root 用户。

在我的理解中sudo -u root应该可以解决问题 - 但是它不接受root(或 admin 如果我尝试使用我的普通管理员用户)的密码。它只接受“普通”用户的密码,这似乎表明该-u username选项无法按照我期望的方式工作。

我的期望是它 以 root 的权限sudo -u root some_command执行some_command,因此它也要求提供 root 的密码。显然不是。

TL;DR:如何在不将普通用户添加到 sudoers 文件的情况下执行任何需要管理员权限并有权访问“登录(普通)用户”文件的命令?

我在 Mac OS X 10.7 下启用了 root 用户。

sudo privileges macos

7
推荐指数
2
解决办法
10万
查看次数

是否可以在 OS X Mountain Lion 下以不同用户身份运行软件?

我一直在尝试以不同的用户身份运行应用程序。

尝试 1
sudo -u otheruser open /Applications/TextEdit.app启动应用程序,但它使用当前用户,而不是otheruser

尝试2
login usernamesu - otheruser成功登录为otheruser,不同的用户活动监控器弹出,但类似open /Applications/TextEdit.app回报的错误LSOpenURLsWithRole() failed with error -10810 for the file /Applications/TextEdit.app.

尝试 3
sudo su - otheruser -c /Applications/TextEdit.app/Contents/MacOS/TextEdit似乎启动了该应用程序(它出现在由otheruser启动的 Activity Monitor 下)但是当停靠图标无限期地弹跳时会出现此错误:_RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL.

问题
那么……我如何以不同的用户身份运行应用程序?

terminal sudo bash osx-mountain-lion macos

7
推荐指数
1
解决办法
2万
查看次数

不使用 sudo 运行 ifconfig

我有一个在 imx6 平台上运行的嵌入式 Linux。这是一个飞思卡尔嵌入式linux。问题是该 linux 没有可用的 sudo,但我需要由用户激活和停用 wlan0 设备。我试图将用户添加到组 root 没有任何成功。我还尝试将整个命令添加到 /etc/busybox.conf 文件中,但这也没有效果。

如何在没有 sudo 的情况下以用户身份运行此命令?

user@touch:~$ /sbin/ifconfig eth0 down
SIOCSIFFLAGS: Permission denied
Run Code Online (Sandbox Code Playgroud)

linux sudo embedded ifconfig busybox

7
推荐指数
2
解决办法
2万
查看次数

ZFS在Linux上通过ssh发送/接收而不允许root登录

我要复制文件系统storage/photossourcedestination不启用ssh登录为root用户。我尝试了许多不同的组合,例如:

sudo zfs send -R storage/photos@frequent_2015-02-12_18:15 | ssh example.com sudo zfs recieve storage/photos
sudo zfs send -R storage/photos@frequent_2015-02-12_18:15 | ssh example.com su -c zfs recieve storage/photos
sudo zfs send -R storage/photos@frequent_2015-02-12_18:15 | ssh example.com 'sudo -S zfs recieve storage/photos <~/topsecret'
Run Code Online (Sandbox Code Playgroud)

我不能使用 sudo -S 传递密码,因为 zfs 流已经连接到标准输入。上面的两个示例需要交互式终端而不是标准输入。

也许不想在服务器上启用 root 登录是愚蠢的。但是,对于蛮力攻击者来说,还有一件事可以猜测哪个好。

linux ssh sudo zfs

7
推荐指数
3
解决办法
5982
查看次数

Jenkins Docker 镜像没有 make 或 sudo

我正在尝试使用来自 Docker 中心的 Jenkins 映像在 AWS 上设置 CI。我已经在这个过程中花费了几个小时(为 Node 项目进行配置),现在我意识到我的一些 npm 依赖项需要make构建。Docker 映像没有make,也没有sudo,所以看起来我不能apt-get install make。是否有另一种方法make无需使用授予 root 访问权限的 Dockerfile 重新创建映像?

sudo make jenkins docker

7
推荐指数
1
解决办法
1万
查看次数

我如何能够在没有 sudo 的情况下删除根拥有的文件

我有以下输出ls -lFh

-rw-r--r-- 1 hjpotter92 hjpotter92  926 Aug  2 18:40 static.yaml
drwxr-xr-x 5 hjpotter92 hjpotter92 4.0K Sep 12 19:40 templates/
-rw-r--r-- 1 root       root       1.5K Sep 12 20:09 xyz
Run Code Online (Sandbox Code Playgroud)

我以hjpotter92. 我的用户NOPASSWDsudoers列表中没有条目。有人可以解释我尝试以下操作时的行为:

$ which rm
rm: aliased to rm -i
$ rm xyz
rm: remove write-protected regular file 'xyz'? y
$ sudo rm xyz
rm: cannot remove 'xyz': No such file or directory
$ ls -lFh
total 176K
<a lot of other files> …
Run Code Online (Sandbox Code Playgroud)

linux sudo permissions rm

7
推荐指数
1
解决办法
6654
查看次数

Sudoers NOPASSWD 用于单个可执行文件但允许其他可执行文件

操作系统: Arch Linux

Linux版本: 4.16.11

须藤版本: 1.8.23

我需要什么

  • 能够执行any executablesudo使用密码提示
  • 能够在/home/username/script.sh没有密码提示的情况下执行一个可执行文件。

当我这样配置时

username ALL=(ALL) NOPASSWD: /home/username/script.sh
Run Code Online (Sandbox Code Playgroud)

我对 有想要的效果script.sh,但我不能executablesudo.

例子

$ sudo ./script.sh # runs fine!
Run Code Online (Sandbox Code Playgroud)

尝试别的

$ sudo nano /etc/sudoers
[sudo] password for username: 
Sorry, user username is not allowed to execute '/usr/bin/nano 
/etc/sudoers' as root on hostname.
Run Code Online (Sandbox Code Playgroud)

看来这是替换的结果ALLNOPASSWD,看来我需要两者。如果sudoers文件已ALL供用户使用,我可以使用密码提示执行任何我想要的操作

username ALL=(ALL) ALL
Run Code Online (Sandbox Code Playgroud)

我试图结合 ALL 和 NOPASSWD 但没有结果

username ALL=(ALL) …
Run Code Online (Sandbox Code Playgroud)

linux sudo gnu permissions sudoers

7
推荐指数
1
解决办法
7990
查看次数

不小心在 Mac 上的 sudo 文件中的注释之外添加了一个字符,sudo 不再起作用

我在终端中犯了一个错误,现在每次使用 sudo 时,都会收到错误消息: sudo: unable to initialize PAM: Invalid argument

我知道我搞砸了什么,即在以下文件中的注释之外添加一个字符:/etc/pam.d/sudo

内容如下:

x# sudo: auth account password session
auth       sufficient     pam_tid.so
auth       sufficient     pam_smartcard.so
auth       required       pam_opendirectory.so
account    required       pam_permit.so
password   required       pam_deny.so
session    required       pam_permit.so
Run Code Online (Sandbox Code Playgroud)

发生的事情是我正在使用 nano 编辑此文件以添加pam_tid.so到此文件,以便我可以使用 touch id 绕过 sudo。然后我按 Ctr+x 退出,但错过了 Ctr 并且没有看到评论之外的 x。因此,当我尝试使用 sudo 时,出现错误。最糟糕的是,要编辑此文件,我需要 sudo。任何帮助将不胜感激。

谢谢

terminal sudo nano macos

7
推荐指数
1
解决办法
1238
查看次数