sudo权限配置 以及自己一些使用

下面是在中标麒麟5.0中所作更改。

我在给普通用户赋予了root权限后,不想输入密码,在/etc/sudoers中做了如下修改才有效果:

 

另外,我想用有管理员权限的用户,在脚本中启动应用程序,但是脚本中有自己编译的库路径,这时,脚本中不能存在sudo。所以,用了两个脚本来执行,有点绕。看下面截图。

start.sh:

 

1.sh:

 

 

 

双击start.sh ,会启动 myTest 应用程序。

当然,首先要给 start.sh和1.sh执行权限。(chmod u+x start.sh)。

为什么要给普通用户root权限呢?为什么不直接root登录呢?小老弟,你的问题有点多啊。

好吧,因为甲方爸爸让这么做的。

也不知道有没更好办法来实现上述功能。

 

以下来自:https://www.cnblogs.com/zhangan/p/10912464.html

首先要禁止root的用户登录ssh  在ssh配置文件里面把root用户no掉,一般公司不允许用第三方软件直接root登陆。

 

 

一、linux给用户添加sudo权限: 
有时候,linux下面运行sudo命令,会提示类似: 

 

 


xxxis not in the sudoers file.  This incident will be reported. 
这里,xxx是用户名称,然后导致无法执行sudo命令,这时候,如下解决:

进入超级用户模式。也就是输入"su -",系统会让你输入超级用户密码,输入密码后就进入了超级用户模式。(当然,你也可以直接用root用)

添加文件的写权限。也就是输入命令"chmod u+w /etc/sudoers"。 

编辑/etc/sudoers文件。也就是输入命令"vim /etc/sudoers",进入编辑模式,找到这一 行:"root ALL=(ALL) ALL"在起下面添加"xxx ALL=(ALL) ALL"(这里的xxx是你的用户名),然后保存退出。

撤销文件的写权限。也就是输入命令"chmod u-w /etc/sudoers"。 
然后就行了。

 

二、设置sudo为不需要密码

 有时候我们只需要执行一条root权限的命令也要su到root,是不是有些不方便?这时可以用sudo代替。默认新建的用户不在sudo组,需要编辑/etc/sudoers文件将用户加入,该文件只能使用visudo命令,

1) 首先需要切换到root, su - (注意有- ,这和su是不同的,在用命令"su"的时候只是切换到root,但没有把root的环境变量传过去,还是当前用乎的环境变量,用"su -"命令将环境变量也一起带过去,就象和root登录一样)

2) 然后visudo 或者 vi /etc/sudoers, visudo 这个和vi的用法一样

找到一行root ALL=(ALL)   ALL,进入append模式,输入

xxx ALL=(ALL)   ALL

然后按Esc,再输入:w保存文件,再:q退出

这样就把自己加入了sudo组,可以使用sudo命令了。

3) 默认5分钟后刚才输入的sodo密码过期,下次sudo需要重新输入密码,如果觉得在sudo的时候输入密码麻烦,把刚才的输入换成如下内容即可:

xxx ALL=(ALL) NOPASSWD: ALL

至于安全问题,对于一般个人用户,我觉得这样也可以的。

4)如果你想设置只有某些命令可以sudo的话,

xxx   ALL= (root) NOPASSWD: /sbin/mount, (root) NOPASSWD: /bin/umount, (root) NOPASSWD: /mnt/mount, (root) NOPASSWD: /bin/rm, (root) NOPASSWD: /usr/bin/make, (root) NOPASSWD: /bin/ln, (root) NOPASSWD: /bin/sh, (root) NOPASSWD: /bin/mv, (root) NOPASSWD: /bin/chown, (root) NOPASSWD: /bin/chgrp, (root) NOPASSWD: /bin/cp, (root) NOPASSWD: /bin/chmod

 

 一般用下面得得这个格式就行:

qwer ALL=(root) NOPASSWD: /usr/sbin/lsof,/usr/sbin/dmidecode,/bin/kill,/usr/bin/killall,/usr/bin/rsync,ALL

 

posted @   阳光下的小土豆  阅读(822)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2020-08-26 QSplitter setStretchFactor()无效的问题
点击右上角即可分享
微信分享提示