我注意到,当我从 Maverick 的更新管理器中按下“检查”按钮时,它开始直接下载有关软件包的信息,而不会像 10.04 及之前那样询问我的密码(sudo 验证)。
我想知道为什么会这样,因为在终端中,您仍然需要 sudo 才能执行“apt-get update”。
我想shutdown
在 Ubuntu Server 安装上禁用所有用户的命令,甚至是 root。
我想这样做的原因是为了确保我不会养成以这种方式关闭机器的习惯,因为我与这台机器同时 SSH 进入很多生产机器,而我没有想通过在错误的窗口中键入命令来意外关闭其他机器之一。
我想要禁用关闭的服务器仅在我的 Windows 桌面上的 VirtualBox 内运行,而且我只将它用于本地测试,因此如果我无法从命令行关闭它也不是问题。
我已经通过确保在 VirtualBox 映像上使用不同的密码稍微缓解了这个问题,但很明显,如果我sudo
在其中一台生产机器上的“窗口”内,我仍然可能不小心将其关闭。
我的问题是:
有关信息,我只是使用这个 VirtualBox 图像来尝试 shell 脚本、运行 Tomcat 和 Java 等等。
我希望软件中心、更新管理器和其他一些系统管理应用程序在不要求密码的情况下工作(就像 sudo 如果配置了 NOPASSWD 那样),但只要求确认,甚至不需要任何确认。同时,我根本不想使用任何用户密码。这是可达的吗?
昨晚,在我的服务器上,我做了:
sudo su - mysql
Run Code Online (Sandbox Code Playgroud)
更改为 mysql 用户,以便我可以运行 mysql 客户端,该客户端已设置为仅从 mysql 帐户进行身份验证。我成功运行了 mysql 客户端并对数据库进行了更改。一夜之间服务器上没有任何变化。
今天,我尝试的任何方法都不允许我更改为 mysql 用户。鉴于没有主目录的消息,它似乎成功了,但whoami
仍然报告我的用户 ID 并且尝试运行 mysql 仍然失败。
wade@snoopy:~$ sudo su - mysql
[sudo] password for wade:
No directory, logging in with HOME=/
wade@snoopy:~$ whoami
wade
wade@snoopy:~$ sudo su mysql
wade@snoopy:~$ whoami
wade
wwilliam@snoopy:~$ sudo -s
root@snoopy:/home/wade#
root@snoopy:/home/wade# su mysql
root@snoopy:/home/wade# whoami
root
Run Code Online (Sandbox Code Playgroud)
mysql 的 /etc/passwd:
mysql:x:110:119:MySQL Server,,,:/nonexistent:/bin/false
Run Code Online (Sandbox Code Playgroud)
有没有人见过这样的行为?
是否可以从 GUI 以 root 身份打开文件或应用程序?
我的理想是右键单击文件或应用程序,然后在上下文菜单中看到“以 Root 身份打开”选项,然后要求我输入 root 密码。
与此有些相关的是允许,例如,在您最初未以 root 身份打开应用程序的地方进行保存(例如,修改 /etc 中的 .conf 文件)
我是管理游戏服务器的少数人之一。服务器当前运行 Ubuntu 14.04,它是在 3 周前安装的。
直到几天前一切都运行良好,我们遇到了一些问题。我怀疑有人黑进了我们的 SSH 服务器并设法把某些事情搞砸了。
当我尝试执行命令时sudo
,出现以下错误:
sudo: unable to stat /etc/sudoers: No such file or directory
所以首先想到的是文件被删除了,只需要重新创建,但是ls /etc/
显示sudoers文件已经存在。此外,当使用 nano(我的首选编辑器)进行编辑时,很明显该文件完全完好且格式正确。
ls -l
还表明 sudoers 文件具有-r--r----
用户 root 和组 root的权限,从研究来看,这应该完全足以让 sudo 能够读取文件,以确保我暂时将文件提供-rwxrwx---
给 root root(正在使用 tmux 进行会话control 并且我们已经以 root 身份启动了一个会话),但仍然失败。
所以文件存在,里面的内容是正确的,它有适当的权限。还能是什么。我在 askubuntu.com 上看了一些遇到类似问题的人,我发现一个听起来很有希望的解决方案是备份 sudoers 文件,然后使用:
apt-get purge sudo
apt-get install sudo
然后用旧的替换新的 sudo 文件。不幸的是,这不起作用。为了进一步排除 sudoers 文件没有错误,我再次尝试解决方案,并尝试仅sudo
使用新创建的 sudoers 文件执行,并得到相同的错误。
- - - - 编辑 - - - -
对于任何对所谓的不存在的 sudoers 文件包含的内容感兴趣的人,这里是一个过滤版本(过滤用户名):http …
今天我犯了一个大错误,我运行了命令
mv /etc/sudoers{,.bak}
Run Code Online (Sandbox Code Playgroud)
在我的 ubuntu 机器上,现在缺少 sudoers 文件
这是在我使用 sudo 的任何地方在终端中给出的消息
sudo: unable to stat /etc/sudoers: No such file or directory
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
Run Code Online (Sandbox Code Playgroud)
如何使该备份文件再次恢复正常并恢复sudo
?
我该如何解决这个问题?
mona@pascal:~$ sudo apt-get update
Ign file: InRelease
Get:1 file: Release.gpg [181 B]
Get:2 file: Release [196 B]
Ign file: Translation-en_US
Ign file: Translation-en
Hit http://storage.googleapis.com stable InRelease
Hit http://storage.googleapis.com stable/jdk1.8 amd64 Packages
Ign http://us.archive.ubuntu.com trusty InRelease
Get:3 http://us.archive.ubuntu.com trusty-updates InRelease [65.9 kB]
Hit http://ppa.launchpad.net trusty InRelease
Get:4 http://security.ubuntu.com trusty-security InRelease [65.9 kB]
Hit http://ppa.launchpad.net trusty/main amd64 Packages
Get:5 http://us.archive.ubuntu.com trusty-backports InRelease [65.9 kB]
Ign http://developer.download.nvidia.com InRelease
Get:6 http://developer.download.nvidia.com Release.gpg [819 B]
Hit http://developer.download.nvidia.com Release
Ign http://developer.download.nvidia.com Release
Hit http://us.archive.ubuntu.com …
Run Code Online (Sandbox Code Playgroud) 所以我只是做了一个sudo apt-get upgrade
并回答Y
了它问我的一个问题,现在我不再是一个 sudoer。甚至我们的根也不再是 sudoer。解决办法是什么?
Configuration file '/etc/sudoers'
==> Modified (by you or by a script) since installation.
==> Package distributor has shipped an updated version.
What would you like to do about it ? Your options are:
Y or I : install the package maintainer's version
N or O : keep your currently-installed version
D : show the differences between the versions
Z : start a shell to examine the situation
The default action is …
Run Code Online (Sandbox Code Playgroud) 我非常不耐烦,无法忍受(对我来说主观上很长)在登录屏幕中输入错误密码或密码后大约 2 秒的延迟sudo
,然后我才能重新尝试正确输入。
有没有办法修改延迟并将其减少到大约半秒或将其完全关闭,无论sudo
是登录屏幕还是登录屏幕?
最佳解决方案将包括在 3 或 5 个错误密码后更长的延迟,以防止暴力破解。
PS:我目前正在使用带有 Unity Desktop 和 lightdm 的 vanilla Ubuntu 16.04。