sudo原理:运行命令时,系统检查/etc/sudoers 配置文件,看这个用户是否有执行sudo的权限,如果有权限,系统要求输入用户自己的密码,如果密码输入正确,系统会以root身份运行 passwd xx命令。

一,直接修改配置文件(不推荐)

1. 先cd到/etc/sudoers目录下

2. 由于sudoers文件为只读权限,所以需要添加写入权限,chmod u+w sudoers

3. vim sudoers

4. 找到root ALL = (ALL) ALL这一行,在下一行加入username ALL = (ALL) ALL。username指代你想加入sudo组的用户名。

5. 把sudoers文件的权限修改回来。chmod u-w sudoers

6. 这样普通用户可以执行sudo命令了。

考虑到配置文件很重要,linux提供了visudo命令来修改文件,并且在保存时会自动检测语法,防止配置错误导致没办法使用sudo命令。

二,visudo命令修改配置文件

 [root@wc1 Desktop]# visudo
.............省略..................
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
mysql ALL=(ALL) ALL #把上面root的行复制粘贴,把root改成mysql

含义是:

(1)用户mysql(第1列),可以从任何地方登录后(第2列),执行任何人的(第3列),任何命令(第4列)。

(2)还可以这么写:%mysql   ALL=(ALL)     ALL,就是让属于mysql用户组的用户,从任何地方登录,执行任何人的任何命令。

(3)如果不想输入密码,可以这么配置:%mysql   ALL=(ALL)    NOPASSWD: ALL,不过这样不太安全。

(4)最好不要把最后一列设置为ALL,因为这样相当于有了root的所有权限,可以按照需求来设置,比如mysql用户需要关闭、重启服务器的权限:

  %mysql   ALL=(ALL)     NOPASSWD:/sbin/shutdown,  /usr/bin/reboot

首先,新建用户 user1:

[root@wc1 Desktop]# useradd user1  

然后,mysql用户用sudo来修改用户user1的密码,如果连续3次输入mysql用户的密码都不对,那么sudo命令就不会执行:

     [mysql@wc1 ~]$ sudo passwd user1  

    We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things: #) Respect the privacy of others.
#) Think before you type.
#) With great power comes great responsibility. [sudo] password for mysql:
Sorry, try again.
[sudo] password for mysql:
Sorry, try again.
[sudo] password for mysql:
Sorry, try again.
sudo: 次错误密码尝试 [mysql@wc1 ~]$ sudo passwd user1
[sudo] password for mysql:
更改用户 user1 的密码 。
新的 密码:
无效的密码: 它基于字典单词
无效的密码: 过于简单
重新输入新的 密码:
passwd: 所有的身份验证令牌已经成功更新。

linux如何把普通用户添加到sudo组的更多相关文章

  1. linux把普通用户添加到sudo组

    一.linux下把普通用户添加到sudo组的方式: 1. root权限下, 先cd到/etc目录下 2. 由于sudoers文件为只读权限,所以需要添加写入权限,chmod u+w sudoers 3 ...

  2. 将普通用户添加到sudo

    将普通用户添加到sudo组 可以编辑/etc/sudoers文件将普通用户加入sudo组.要注意的是修改该文件只能使用visudo命令:1.首先切换到root #su - (注意有 “-” ,这和su ...

  3. 添加用户username到sudo组

    添加用户username到sudo组: usermod -aG sudo username USERMOD(8) 系统管理命令 USERMOD(8) 名 usermod - 修改一个用户账户 大 us ...

  4. Ubuntu新建用户并加入SUDO组

    Ubuntu新建用户并加入SUDO组 新建用户: adduser xxxx 加入用户组: usermod -aG sudo username

  5. Linux中给普通用户添加sudo权限

    使用Linux系统时,经常会被要求使用超级权限,但是root的权限太过大了,一般慎用!!!因此可以通过给普通用户添加sudo权限,平常用普通用户进行操作,当需要root权限的时候进行sudo操作.以下 ...

  6. 在Linux中怎么把用户添加到组中

    (1)添加用户test,初始密码123456,该用户的主目录为/home/share,用户的基本组为root,用户的shell为/bin/tcsh,要求将该用户加到mail和new组中.请问该怎么做啊 ...

  7. Linux系统中将普通用户添加到sudoers

    我们经常会在普通用户下用到sudo命令,为了不用频繁切换root用户,我们可以将普通用户添加到sudoers里面.Linux默认是没有将用户添加到sudoers列表中的,需要root手动将账户添加到s ...

  8. Linux 中将用户添加到指定组的指令

    将一个已有用户 testuser 增加到一个已有用户组 root 中,使此用户组成为该用户的附加用户组,可以使用带 -a 参数的 usermod  指令.-a 代表 append, 也就是将用户添加到 ...

  9. [数据库中间件]将用户添加到DB2组授权

    1.将用户oracle添加到db2的用户组中,命令如下: usermod -a -G db2iam #将用户添加到组中并不改变当前所属组 注:以下与主题无关,只是列举一些关于用户的命令 id user ...

随机推荐

  1. 【Leetcode 做题学算法周刊】第八期

    首发于微信公众号<前端成长记>,写于 2020.05.07 背景 本文记录刷题过程中的整个思考过程,以供参考.主要内容涵盖: 题目分析设想 编写代码验证 查阅他人解法 思考总结 目录 15 ...

  2. 【java】java获取JVM启动参数 System.getProperty

    java获取JVM启动参数 System.getProperty取 -D后的key即可 public class Test { public static void main(String[] arg ...

  3. Javascript模块化编程(一):模块的写法 (转)

    Javascript模块化编程(一):模块的写法 原文作者: 阮一峰 日期: 2012年10月26日 随着网站逐渐变成"互联网应用程序",嵌入网页的Javascript代码越来越庞 ...

  4. Linux kernel 模块 hello 测试

    原文链接:https://www.cnblogs.com/nerohwang/p/3621316.html hello.c 文件: #include <linux/kernel.h> /* ...

  5. Solon详解(六)- 定制业务级别的验证注解

    在业务的实现过程中,尤其是对外接口开发,我们需要对请求进行大量的验证并返回错误状态码和描述.lombok 框架有很多很赞的注解,但是人家是throw一个异常,这与有些需求不一定能匹配. 该文将基于So ...

  6. Java程序员值得拥有的TreeMap指南

    先看再点赞,给自己一点思考的时间,微信搜索[沉默王二]关注这个有颜值却假装靠才华苟且的程序员.本文 GitHub github.com/itwanger 已收录,里面还有我精心为你准备的一线大厂面试题 ...

  7. 解决SpringBoot jar包中的文件读取问题

    前言 SpringBoot微服务已成为业界主流,从开发到部署都非常省时省力,但是最近小明开发时遇到一个问题:在代码中读取资源文件(比如word文档.导出模版等),本地开发时可以正常读取 ,但是,当我们 ...

  8. openssh一键升级脚本(测试成功)

    1 ssh版本检查 本文档针对于ssh版本低于7.0的系统,升级为openssh7.5 p1. ssh –V [root@kuajing-db3 ~]# ssh -V OpenSSH_5.3p1, O ...

  9. CF1203D2 Remove the Substring (hard version) 题解

    这题初赛让我白给了6分,于是我决定回来解决一下它. 说实话,看原题题面和看CCF代码真是两种完全不同的感受…… ------------思路分析: 把$s$串删去一部分之后,会把$s$串分成两部分,当 ...

  10. 借助FRP反向代理实现内网穿透

    一.frp 是什么? frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP.UDP.HTTP.HTTPS 等多种协议.可以将内网服务以安全.便捷的方式通过具有公网 IP 节点的中转暴露到公 ...