本篇文章扣丁学堂Linux培训小编给读者们分享一下Linux禁止普通用户切换至root用户的实例,对Linux开发技术感兴趣的小伙伴就随小编来了解一下吧,希望对小伙伴们有所帮助。

在上正文之前,我想先将一些基础的linux用户以及用户组的相关命令:

1、添加用户

useradd [-g group] [-d user_home_directory] [-p “your password”] Username

-g 表示设置新增用户所属用户组

-d 表示设置新增用户的主目录

-p 表示设置新增用户的登录密码

还有其他的选项可用useradd –h去查看

举例:

useradd teacher1

#添加新用户teacher1,无密码,

#主目录为默认(命令执行成功后会在/home目录下生成teacher1目录作为该用户主目录),

#所属用户组为默认(以自己用户名命名的用户组teacher)

2、修改用户信息

usermod [-g group] [-d user_home_directory] [-p “your password”] Username

各选项含义与useradd中相同,其他选项详情可用usermod –h查看。

举例:

usermod –d /newHome –p test1111 –g staff teacher1

#修改teacher1的主目录为/newHome,密码为test1111,用户组为staff

其中,修改密码也可以用如下命令:

passwd [Username]

#Username为空时表示修改当前登录用户密码,不为空时表示修改指定用户密码

3、删除用户

userdel [-f] [-r] Username

-f 表示强制删除

-r 表示同时删除用户主目录

举例:

userdel –r teacher1

#删除用户teacher1并删除其主目录

4、查看用户所属用户组

groups [username]

username为空时即查询当前用户所属用户组

举例:

groups teacher1

#查询teacher1所在用户组

5、查看用户列表

vi /etc/passwd

#由于用户信息均存储在/etc/passwd文件中,因此可以直接用vi打开查看

6、查看用户组列表

vi /etc/group

与用户列表类似,用户组信息存放在/etc/group文件中

7、切换当前用户

(1)

su username

#切换用户身份为指定username用户的身份,

#但shell环境仍为原用户环境,即环境变量、用户配置等均为原用户的。

示例:

当前用户是root,使用su test1命令切换身份为test1

(2)

su – username

#将身份和shell环境全都切换至目标用户

举例:

当前用户是root,使用su - test1命令切换身份为test1

8、退出当前用户

exit

好了,铺垫内容有点长,但以上均是linux用户管理中经常用到的命令,也是在完成本文的目标——禁止普通用户切换至root用户中会用到的东西。以下是详细步骤:

(1)我们先新建一个普通用户test1

useradd test1

(2)将普通用户test1加入到wheel用户组

usermod –g wheel test1

(3)修改/etc/pam.d/su配置

#打开这个配置文件,找到如下行,并将行首”#”去掉,保存文件

#auth required pam_wheel.so use_uid

(4)修改/etc/login.defs文件

vi /etc/login.defs

#在文件末尾添加” SU_WHEEL_ONLY yes”,保存文件

(5)现在只有属于wheel用户组的用户才可以切换到root用户了,下面我们来测试一下以test1身份登录系统或者由其他用户切换至test1用户,在test1用户身份下切换至root用户,发现切换成功。

(6)将test1从wheel用户组中删除(或者说改为其他用户组成员),在test1用户身份下切换至root用户,发现切换失败,提示密码错误,但实际输入密码是正确的。

后记:

注意,进行如上所示设置后只有属于wheel用户组的用户才可以切换至root用户。

例外不得不说关于linux的命令实在太多多到难以记忆,但用的多了以后自然能够熟练掌握。至于本文为什么要讲那么多铺垫内容,主要也是为了笔者能够及时回顾,加深记忆,如有纰漏还请留言指正。

以上就是扣丁学堂Linux在线学习小编给大家分享的Linux禁止普通用户切换至root用户的实例,希望对小伙伴们有所帮助,想要了解更多内容的小伙伴可以登录扣丁学堂官网咨询。

想要学好Linux开发小编给大家推荐口碑良好的扣丁学堂,扣丁学堂有专业老师制定的Linux学习路线图辅助学员学习,此外还有与时俱进的Linux课程体系和Linux视频教程供大家学习,想要学好Linux开发技术的小伙伴快快行动吧。

Pyhon基础课程:https://ke.qq.com/course/327534?flowToken=1008607 【扫码进入Python全栈开发免费公开课】

H5基础课程:https://ke.qq.com/course/320523?flowToken=1008606【扫码进入HTML5前端开发VIP免费公开课】

有疑问加站长微信联系(非本文作者)

linux禁止普通用户切换,扣丁学堂Linux培训简述Linux禁止普通用户切换至root用户的实例...相关推荐

  1. php 读取文件的所有图片格式,扣丁学堂PHP培训简述PHP如何读取文件夹下所有图片、文件-php文件...

    本篇文章扣丁学堂PHP培训小编给读者们分享一下PHP读取文件夹下所有图片.文件的实例,文中有代码列出供小伙伴们参考,希望对小伙伴们有帮助. 如下所示:$hostdir=dirname(__FILE__ ...

  2. java for 字母金字塔_扣丁学堂Java培训简述如何用C#随机数生成字母金字塔

    本篇文章扣丁学堂Java培训小编给读者们简单分享一下如何用C#随机数生成字母金字塔,具有一定的参考价值,感文中有详细的代码列出供感兴趣的小伙伴参考,想要了解的小伙伴就随小编来看一下具体内容吧. 1.代 ...

  3. python 匿名函数示例_扣丁学堂Python3开发之匿名函数用法示例详解

    扣丁学堂Python3开发之匿名函数用法示例详解 2018-07-26 14:01:11 1324浏览 今天扣丁学堂Python培训给大家分享关于Python3匿名函数用法,结合实例形式分析了Pyth ...

  4. python3 urlopen_扣丁学堂解析Python3中urlopen()使用详解

    扣丁学堂解析Python3中urlopen()使用详解 2018-07-23 13:31:14 1318浏览 在现如今,2018年Python一直属于IT行业中比较热门技术,那么今天扣丁学堂Pytho ...

  5. python的excell库_扣丁学堂Python基础教程之Excel处理库openpyxl详解

    扣丁学堂Python基础教程之Excel处理库openpyxl详解 2018-05-04 09:49:49 3197浏览 openpyxl是一个第三方库,可以处理xlsx格式的Excel文件.pipi ...

  6. python socket编程之双方相互通信简单实例_扣丁学堂Python开发socket实现简单通信功能实例...

    扣丁学堂Python开发socket实现简单通信功能实例 2018-08-21 14:12:38 747浏览 今天扣丁学堂Python培训老师给大家结合实例介绍一下关于socket实现的简单通信功能, ...

  7. h5的fetch方法_扣丁学堂HTML5分享h5中的fetch方法解读

    扣丁学堂HTML5分享h5中的fetch方法解读 2018-07-06 14:43:10 725浏览 本篇文章扣丁学堂 Fetch概念: fetch身为H5中的一个新对象,他的诞生,是为了取代ajax ...

  8. python程序调用写好的代码_扣丁学堂浅谈Python编程中NotImplementedError的使用方法...

    扣丁学堂浅谈Python编程中NotImplementedError的使用方法 2018-07-04 14:08:02 2559浏览 本篇文章扣丁学堂 Python编程中raise可以实现报出错误的功 ...

  9. python如何读取csv文件某几行某几列_扣丁学堂简述如何实现pandas读取csv文件指定的前几行...

    扣丁学堂简述如何实现pandas读取csv文件指定的前几行 2018-08-01 14:16:55 1620浏览 今天扣丁学堂 用于存储数据的csv文件有时候数据量是十分庞大的,然而我们有时候并不需要 ...

最新文章

  1. 遍历datatable的方法
  2. STM32 基础系列教程 25 - USB_HID_mouse
  3. mongodb 查看数据库和空间大小
  4. 查看springboot中tomcat版本
  5. asp.net MVC的EF与easyui DataGrid数据绑定
  6. HtmlAgilityPack 之 HtmlNode类
  7. matlab散点光滑连线,科研画图:散点连接并平滑(基于Matlab和Python)
  8. 神经网络中的反向传播算法
  9. Spring:自动接线或不自动接线
  10. linearregression_机器学习-TensorFlow建模过程 Linear Regression线性拟合应用
  11. 关于fd和fp(fd:file descirptor fp:file pointor)
  12. 641. Design Circular Deque
  13. 曲线 神经网络_神经网络的数学基础-8(完结)
  14. CSS Margin 边距详解、CSS 实现水平垂直居中、overflow 兼容 Safari 浏览器
  15. 数字图像处理篇(1)数字图像基础
  16. GPU 编程与CG 语言之阳春白雪下里巴人——CG学习读书笔记之数学函数(之二)。
  17. TheDAO悲剧重演,SpankChain重入漏洞分析
  18. 用Cadence Virtuoso绘制反相器教程
  19. 2019年上半年云桌面排名前五企业
  20. Combo通用类型封装

热门文章

  1. 《白帽子讲web安全》读书笔记以及读后感
  2. 怎么解决局域网设置固定IP上不了网?
  3. 3.2 网络节点架构
  4. Python 简单数据提取
  5. mysql创建test_MySQL中,创建数据库test正确的SQL语句是( )
  6. html文字冒险游戏,AI文字冒险游戏《AI Dungeon》正式上架
  7. 中国物联网行业有发展前途吗
  8. 乱世浮生犹若梦——黑色,黑色,致无尽的黑色(《黑帮×××》影评)
  9. 游戏开发中的数学、向量的应用
  10. quartz mysql 操作_Quartz 定时任务使用 —— 数据库各表字段的含义(十五)