300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Linux下普通用户执行关机 重启指令

Linux下普通用户执行关机 重启指令

时间:2023-05-27 07:31:19

相关推荐

Linux下普通用户执行关机 重启指令

方法1(推荐)

在root用户下用visudo命令添加以下代码到/etc/sudoers文件的末端。替换其中的user为你的用户名,hostname为你的主机名(可以使用hostname命令查询)。

user hostname=NOPASSWD: /sbin/shutdown -h nowuser hostname=NOPASSWD: /sbin/reboot

或者合并为一行表示

user hostname=NOPASSWD: /sbin/shutdown -h now,/sbin/reboot

修改完之后ctrl+o写入,ctrl+x退出编辑。

现在你的用户可以用sudo shutdown -h now命令关机,reboot命令重启了。

注意:修改完仔细检查,写错了会导致无法进入root权限,如果出现了错误可以参照文章最后进行修复

方法2(不安全)

root@localhost ~]#whereis reboot #查找reboot的位置reboot: /sbin/reboot /usr/share/man/man8/reboot.8.gz[root@localhost ~]#su user#切换到user[user@localhost root]$ reboot #执行重启测试reboot: Need to be root #提示需要root[user@localhost root]$ exit #退回到root用户exit[root@localhost ~]# ll /sbin/reboot #查看默认/sbin/reboot的详细信息-rwxr-xr-x. 1 root root 13932 Jul 19 /sbin/reboot #注意看前三个为rwx[root@localhost ~]# chmod u+s /sbin/reboot #增加suid权限[root@localhost ~]# ll /sbin/reboot #重新查看修改后的/sbin/reboot详细信息-rwsr-xr-x. 1 root root 13932 Jul 19 /sbin/reboot #这时候已经变更为rws[root@localhost ~]# su user #重新切换到user用户[user@localhost root]$ reboot #执行reboot指令

方法3(xfce桌面下,gnome等桌面并不可行)

在Xfce下,如果你希望用户利用Halt关机,需要安装sudo。然后用visudo -f命令添加以下内容到/etc/sudoers中

对所有用户:

%users hostname=NOPASSWD:/usr/lib/xfce4/xfsm-shutdown-helper

对单一用户:

user hostname=NOPASSWD:/usr/lib/xfce4/xfsm-shutdown-helper

替换其中的user为你的用户名,hostname为你的主机名。

这样你定义了的用户的“关机”和“重启”选项就激活了。

意外情况

因为修改了/etc/sudoers以及相关权限,导致sudo无法使用,错误如下:

sudo: >>> /etc/sudoers:syntax error 在行 32 附近<<< sudo: /etc/sudoer中第 32 行附近有解析错误 sudo: 没有找到有效的 sudoers 资源,退出 sudo: 无法初始化策略插件

解决方法:

1、重启ubuntu,启动时按Esc或Shift键,可以看到引导选项;

2、在引导选项中选择Recovery模式的那一项来引导;

3、进入Recovery Menu页面,选择root,也就是进入试用root用户进行系统恢复,在这里可以执行超级用户的权限的操作,回车后可以看到熟悉的 root@user ~# 命令提示符;

4、设置或者撤销/etc/sudoers文件的权限,也可以将该文件改回到发生错误之前的状态。

chmod 666 /dev/nullmount -o remount rw /vi /etc/sudoers 恢复本文件内容并存盘(:wq!)

5、退出Recovery模式,重新启动ubuntu。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。