visudo 编辑sudoers文件

1.命令功能

bisudo命令是专门用来编辑/etc/sudoers文件,同时提供语法检查等功能。/etc/sudoes文件是sudo命令的配置文件。

2.语法格式

visudo  option

选项说明

visudo –c  手动执行语法检查

3.使用范例

范例1 执行sudo 对普通用户cxf和joe授权。

范例1 执行sudo 对普通用户cxf和joe授权。
[root@cxf home]# visudo #编辑配置文件 相当于vim /etc/sudoers文件
....
joe ALL=(ALL) #将joe提权为root身份
cxf ALL=(ALL) /usr/sbin/useradd,/usr/sbin/userdel #授权cxf可以以root身份添加或删除用户权限

分别对joe和cxf做不同的授权。

sudo  以另一个用户身份执行命令

1.命令功能

通过sudo命令,可以让普通用户执行指定的命令或程序,拥有超级用户的权限。细化不能命令授权的指定权限。

2.语法格式

sudo  option

选项说明

选项

选项说明

-l

列出当前用户可以执行的命令。只有在sudoers文件中才能使用该选项

-h

列出使用方法,并退出

-u

已指定用户的身份执行命令,后面跟除了root以外的其他用户,可以是用户名,也可以是uid。

-b

在后台执行指定的命令

3.使用范例

查看哪些用户可以配置了sudo

[root@cxf ~]# tail -l /etc/sudoers
chu ALL=(ALL) /usr/sbin/useradd,/usr/sbin/userdel

范例1  chu账号通过sudo命令,添加删除账号

添加账号test1账号

[chu@cxf ~]$ sudo passwd test1
更改用户 test1 的密码 。
新的 密码:
无效的密码: 过于简单化/系统化
无效的密码: 过于简单
重新输入新的 密码:
passwd: 所有的身份验证令牌已经成功更新。
[chu@cxf ~]$ ls -l /home
......
drwx------ 3 test1 test1 4096 5月 21 02:15 test1

删除test1账号

[chu@cxf ~]$ userdel -r test1
bash: /usr/sbin/userdel: 权限不够
[chu@cxf ~]$ sudo userdel -r test1

注:对于linux系统bash的内置命令,一般无法进行sudo授权,例如cd、echo

bash内置命令如下:

[, alias, bg, bind, break, builtin, caller, cd, command, compgen, complete, com-popt, continue, declare, dirs, disown, echo, enable, eval, exec, exit, export, false,  fc,  fg, getopts,  hash,  help,  history,  jobs, kill, let, local, logout, mapfile, popd, printf, pushd, pwd, read, readonly, return, set, shift, shopt, source, suspend, test, times, trap, true, type,typeset, ulimit, umask, unalias, unset, wait - bash built-in commands, see bash(1)

sudo 及visudo用法的更多相关文章

  1. sudo权限集中管理用法

    #定义一组命令集合,名称DBA_CMD,禁止使用的命令前加!即可Cmnd_Alias DBA_CMD =  /bin/touch,/bin/mkdir,/sbin/service,/sbin/chkc ...

  2. sudo,visudo

    visudo修改/etc/sudoers文件 用户名/%组名 主机名/主机别名/网段=(身份)命令 若(ALL)为空则为所有身份,即包含root身份 user1 ALL=/sbin/shutdown ...

  3. /etc/sudoers文件的分析以及sudo的高级用法

    高级用法总结: sudo命令是普通用户的提权操作指令.在权限控制中,我们可以使用/etc/sudoers文件中来进行设置.基本的用法比较熟悉.比如设置一个普通用户可拥有root用户的运行权限,那么设置 ...

  4. sudo及visudo

    sudo是一种权限管理机制,管理员可以授权普通用户去执行root的操作,而不需要知道root的密码,它依赖于/etc/sudoers这个文件,可以授权给哪个用户在哪个主机上能够以管理员的身份执行什么样 ...

  5. Linux用户配置sudo权限(visudo)

    sudo的工作过程如下: 1,当用户执行sudo时,系统会主动寻找/etc/sudoers文件,判断该用户是否有执行sudo的权限 2,确认用户具有可执行sudo的权限后,让用户输入用户自己的密码确认 ...

  6. su和sudo命令的用法

    为了安全起见,尽量不要用root用户去做所有事情,因为一旦执行了错误的命令,可能会直接导致系统崩溃. 一.su命令 su 命令可以解决切换用户身份的需求,使得当前用户在不退出登录的情况下,切换到其他用 ...

  7. sudo的简单用法

    su: Switch User, 以管理员身份运行某些命令: su -l root -c 'COMMAND' 但是想要限制某个用户只拥有一部分管理员权限,而不是拥有全部权限,这就需要用到sudo su ...

  8. Shell命令-用户用户组管理之visudo、sudo

    文件及内容处理 - visudo.sudo 1. visudo:编辑/etc/sudoers文件的专属命令 visudo命令的功能说明 visudo命令专门用来编辑/etc/sudoers这个文件的. ...

  9. Linux sudo

    200 ? "200px" : this.width)!important;} --> 介绍 本篇文章主要介绍sudo配置和用法,为了给某个用户控制权限比如执行某个命令或者关 ...

随机推荐

  1. 全面解读PHP-数据库缓存

    一.什么是数据库缓存? 1.定义 mysql等一些常见的关系型数据库的数据都存储在磁盘当中,在高并发场景下,业务应用对mysql产生的增删改查的操作会造成巨大的IO开销和查询压力,这无疑对数据库和服务 ...

  2. CondenseNet: An Efficient DenseNet using Learned Group Convolutions

    1. 摘要 作者提出了一个前所未有高效的新奇网络结构,称之为 CondenseNet,该结构结合了密集连接性和可学习的分组卷积模块. 密集连接性有利于网络中的特征复用,而可学习的分组卷积模块则可以移除 ...

  3. Android6.0运行时权限的处理Demo

    MainActivity.java package com.loaderman.permissionsdemo; import android.Manifest; import android.con ...

  4. InputNumber计数器

    InputNumber 计数器 仅允许输入标准的数字值,可定义范围 要使用它,只需要在el-input-number元素中使用v-model绑定变量即可,变量的初始值即为默认值. <templa ...

  5. 第七章 SpringCloud之非声明式RestClient:Feign

    study-url:https://cloud.spring.io/spring-cloud-static/spring-cloud-netflix/1.4.6.RELEASE/multi/multi ...

  6. LoadRunner参数化使用mysql数据源

    因为默认是没有mysql驱动的,因此需要在网上下载一个mysql驱动 1. 在网上下载一个是MYSQL数据库的ODBC驱动程序:mysql-connector-odbc-3.51.20-win32.e ...

  7. C++ lower_bound

    代码 #include<iostream> #include<algorithm> using namespace std; int main(void) { ] = { 0. ...

  8. Python学习之UDP版socket&SocketServer

    7.6 基于UDP的socket 无连接的,不必与对方建立连接,而是直接把数据发送给对方: 适用于一次传输销量数据结构,可靠性不高的应用环境,因为其传输速率快 # 服务端 import socket ...

  9. nginx配置laravel项目

    在/etc/nginx/conf.d下新建一个laravel.conf文件,并编辑 写入如下文件即可 server { listen 80; server_name xxx; root "/ ...

  10. java中String中的endsWith()方法

    解释:endsWith() ——此方法测试字符串是否以指定的后缀 suffix 结束. 此方法的定义:public boolean endsWith(String suffix) 我这里判断的是路径是 ...