我在我的电脑上安装了 Ubuntu。要登录,我使用我在安装过程中创建的用户名和密码。这是否意味着我是 root 用户?如果是,那么我如何成为非root用户?看起来非 root 用户比管理员用户更安全。
我收到此错误:
sudo: parse error in /etc/sudoers near line 23
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
Run Code Online (Sandbox Code Playgroud)
我试图禁用密码身份验证,因此每次我想安装某些东西时都不必输入密码,但我可能以不太好的方式对其进行了更改。我是 Ubuntu 的新手,我厌倦了 Windows :)
到目前为止,我发现有些人建议以单用户模式启动,但我害怕把事情搞砸。
我该如何解决这个错误?
因此,我一直在研究使用su
和之间的差异sudo
,并且每个人似乎都同意这种sudo
方法比允许访问 root 帐户本身更安全。他们说,使用 root 帐户,您只需一个命令就可以破坏整个系统。这个我明白。但是在系统上创建的初始用户也可以使用 sudo 访问所有命令。这我可以通过运行找到su -l
。如果是这种情况,那么我可以简单地运行sudo <game-ending command>
以破坏我的系统。那么,与允许我直接访问超级用户帐户相比,这种方法如何更好或更安全?我可以运行所有相同的命令...
是不是因为sudo
在命令行上使用我明确地告诉计算机我认为我知道我在做什么?他们是否认为人们会忘记他们在超级用户帐户下,除非他们明确说明?
人们还表示,如果系统被外国人入侵并进入,在 root 帐户下将允许他们对我的系统做可怕的事情。但在我看来,如果他们已经可以访问我的帐户并知道我的密码,他们可以通过使用 sudo 并输入我的密码来做同样可怕的事情,因为他们甚至不需要知道超级用户的密码。我没有得到什么?
...但仍然需要需要管理员权限的应用程序?
为了允许以下内容:
$ apache2ctl restart
httpd not running, trying to start
(13)Permission denied: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
$ sudo !!
sudo apache2ctl restart #no password asked
$ #works!
Run Code Online (Sandbox Code Playgroud)
作为参考,我在亚马逊的 e3 实例上看到了这个设置
任何的想法?
我是 Linux/Ubuntu 的新手 - 我想知道我看到的行为是否符合设计。我已经安装了 vsftpd:
sudo apt-get install vsftpd
Run Code Online (Sandbox Code Playgroud)
然后我删除:
sudo apt-get remove vsftpd
Run Code Online (Sandbox Code Playgroud)
但是,查看 /etc 我可以看到 vsftpd.conf 仍然存在。有人可以解释为什么会发生这种情况(我假设删除会删除与 vsftpd 相关的所有文件)?
可能的重复:
脚本如何检查它是否以 root 身份运行?
这是我一直很好奇的事情。我制作了很多小的 bash 脚本(.sh 文件)来完成我经常做的任务。其中一些任务需要以超级用户身份运行所有内容。我一直很好奇:是否有可能在运行所有内容之前在 BASH 脚本中检查脚本是否以超级用户身份运行,如果不是,则打印一条消息说You must be superuser to use this script
,然后终止脚本本身。另一方面是我希望在用户是超级用户时运行脚本,而不是生成错误。
关于如何执行上述代码(if 语句等)的任何想法?
我输入我的第一个sudo
命令。我输入我的密码。有一段时间,我不必为后续的 sudo 命令输入密码。
现在的问题。我是一个打开很多终端的人。如果我sudo
在第一次 sudo 后打开的终端中使用时不必输入密码,那将非常方便,因为在短时间内我不必在使用 sudo 的终端中输入 sudo 的密码第一次。(对不起,长句!)
是否可以?如果不是,为什么?如果是,如何?
能否请您指导我查看 /etc/sudoers.d/ 上的一些示例和更详细的说明
我想授予某些组权限以 sudo 某些命令,但以适当的方式不要在多用户计算机上的 Ubuntu 安全模型中创建不必要的漏洞。
在古代我做了一些简单的 sudoers 定制,但显然现在 /etc/sudoers.d/ 是一种更合适的方式,我想更好地理解它。
当我要在终端中安装程序时,它需要密码:
[sudo] password for xxx:
Run Code Online (Sandbox Code Playgroud)
但是当我开始输入密码时,什么也没有发生。我该怎么办?
我有一个很小的脚本,我希望它在启动时运行,但它需要 sudo 权限,所以我使用 gksudo 来完成这项工作。但它失败了。(使用 sudo 可以正常工作。)除了接口之外,sudo 和 gksudo 之间有什么区别吗?
顺便说一句:这是我提到的小脚本:
#!/bin/bash
cat /sys/devices/platform/sony-laptop/kbd_backlight|if read state; then \
echo $((1-$state)) | sudo tee /sys/devices/platform/sony-laptop/kbd_backlight; fi;
Run Code Online (Sandbox Code Playgroud) sudo ×10
command-line ×3
bash ×2
security ×2
users ×2
gksu ×1
password ×1
permissions ×1
privileges ×1
productivity ×1
root ×1
scripts ×1
uninstall ×1