一、 linux系统用户分类

1、分类

①超级用户:root,UID为0

②普通用户:UID是500-65535的用户

③虚拟用户:UID在1-499,一般不能登录,满足文件或服务启动的需要,/sbin/nologin

2、与用户相关的配置文件

[root@svn /]# ll /etc/passwd /etc/shadow /etc/group /etc/gshadow
-rw-r--r-- root root Jul : /etc/group #——>用户组的信息
---------- root root Jul : /etc/gshadow #——>用户组的密码文件信息
-rw-r--r-- root root Jul : /etc/passwd #——>用户的信息

passwd每列所代表的含义

3、与用户相关的目录和文件

[root@svn /]# ll -a /etc/skel/ #——>创建新用户家目录的模板
drwxr-xr-x. root root Apr : .
drwxr-xr-x. root root Jul : ..
-rw-r--r--. root root Mar : .bash_logout
-rw-r--r--. root root Mar : .bash_profile
-rw-r--r--. root root Mar : .bashrc

*****企业小案例:请问登录oldboy用户出现如何情况,该如何处理

[root@svn ~]# su - oldboy
-bash-4.1$
-bash-4.1$
解答:原因是这个oldboy用户家目录下的环境变量文件被删除了,只需到/etc/skell/目录下,复制
.bash_profile
.bashrc到当前用户下,然后重新登录oldboy用户即可

二、用户管理命令

1、userad:添加用户

-g 指定用户属于的组
-u 指定用户的UID
-s 指定用户使用的shell解释器,系统默认为/bin/bash,虚拟用户为/sbin/nologin
-M 表示不创建用户家目录

2、userdel:删除用户

        工作中一般不用的用户最好在/etc/passwd中注释掉,默认不删除用户的家目录和邮箱,加上-r参数删除与用户有关的所有信息

3、usermod:修改用户信息

-s 修改用户使用的shell
-g 修改用于属于的组

4、passwd为用户设置密码

--stdin 非交互式设置密码
[root@svn /]# echo |passwd --stdin oldboy
Changing password for user oldboy.
passwd: all authentication tokens updated successfully.

5、groupadd 创建用户组

-g 指定用户组的GID

******企业面试题:批量添加10个用户stu01,stu02……stu10,设置8位随机密码(禁止使用for,while等循环)

方法一:
echo stu{..}|xargs -n1|sed 's#.*#useradd &;pass=$(date +%N|md5sum |cut -c-8);echo $pass|passwd --stdin &;echo & $pass >>/tmp/pass.log#g'
方法二:

seq -w |sed 's#.*#useradd &;pass=$(date +%N|md5sum |cut -c-8);echo $pass|passwd --stdin &;echo & $pass >>/tmp/pass.log#g'

三、用户查询命令

1、id查看用户的信息

2、w显示系统中已经远程登录的用户,以及系统的负载信息

3、last哪个用户在什么时候从哪里远程登录你的系统用户登录的信息

四、sudo临时让用户获得root权限

1、sudo –l查看当前用户的sudo权限

2、visudo给用户授予权限(相当于尚方宝剑)

visudo=====vim /etc/sudoers
①授权某一个命令:
oldboy ALL=(ALL) /bin/ls
②授权多个命令
oldboy ALL=(ALL) /bin/ls, /bin/rm, /usr/sbin/useradd
③授权某个目录下面的所有命令,排除某一个
oldboy ALL=(ALL) /sbin/*, ! /sbin/init
④授权所有命令且不用密码
⑤oldboy ALL=(ALL) NOPASSWD:ALL
一般运维人员自己使用的用户

五、记录用户的操作、行为/日志审计

六、CDN概念

linux运维、架构之路-linux用户管理的更多相关文章

  1. linux运维架构师职业规划

    1.假如你从来未接触过Linux的话,首先要做的就找一本指导书来学习.现在公认的Linux的入门书籍是“鸟哥的私房菜”,讲的很全面,鸟哥的私房菜一共分为两部,一部是基础篇,一部是服务器篇.“鸟哥的私房 ...

  2. 教老婆学Linux运维(二)Linux常用命令指南【上】

    目录 教老婆学Linux(二)Linux常用命令指南[上] 一.概述 二.常用命令 教老婆学Linux(二)Linux常用命令指南[上] 作者:姚毛毛的博客 tips:文章太长,分两篇发出,本篇发前三 ...

  3. 教老婆学Linux运维(二)Linux常用命令指南【下】

    目录 tips:紧接上一篇,Linux常用命令指南[上] 2.4 文件解压缩 2.4.1 官宣的linux压缩工具:tar tar的基本命令格式为 tar [参数选项] [文件或目录] 我们前面学的命 ...

  4. 最适合初学者的Linux运维学习教程2018版

    Linux运维工程师是一个新颖岗位,现在非常吃香,目前从行业的角度分析,随着国内软件行业不断发展壮大,越来越多复杂系统应运而生,为了保证系统稳定运行,必须要有足够多的Linux运维工程师.维护是软件生 ...

  5. Linux运维入门到高级全套常用要点

    Linux运维入门到高级全套常用要点 目 录 1. Linux 入门篇................................................................. ...

  6. [ Linux运维学习 ] 路径及实战项目合集

    我们知道运维工程师(Operations)最基本的职责就是负责服务的稳定性并确保整个服务的高可用性,同时不断优化系统架构.提升部署效率.优化资源利用率,确保服务可以7*24H不间断地为用户提供服务. ...

  7. 运维是做什么的?史上最全互联网Linux工作规划!十分钟找到linux运维工程师职业方向!

    首先祝贺你选择学习Linux,你可能即将踏上Linux的工作之旅,出发之前,让我带你来看一看关于Linux和Linux运维的一切. Linux因其高效率.易于裁剪.应用广等优势,成为了当今中高端服务器 ...

  8. 其它综合-运维老鸟分享linux运维发展路线规划

    运维老鸟分享linux运维发展路线规划 linux 运维发展路线常见的就是下面两条路线: 第一条:运维应用-->系统架构-->运维开发-->系统开发 第二条:运维应用-->应用 ...

  9. Linux运维工程师学习大纲

    linux运维课程大纲: Linux运维: Linux系统管理: Linux服务及安全管理: httpd,lamp,lnmp cache:memcached,varnish DB:mysql(mari ...

  10. Linux运维的第一周总结

    这个阶段主要学习 Linux 运维技术,包括 Linux 基本操作.Bash 编程.应用服务部署.数据库服务部署.日志管理.系统监控等. 第1周: Linux基础本周学习 Linux 基本操作.用户与 ...

随机推荐

  1. Chrome谷歌页面翻译增强插件开发

    最近想做一个Chrome的插件(看别的博客说其实叫插件不准确,应该叫拓展,大家叫习惯了就按习惯的来吧).一开始咱先直接看了Chrome开发(360翻译)和chrome extensions(这个官方的 ...

  2. protel封装总结(新手必看)

    零件封装是指实际零件焊接到电路板时所指示的外观和焊点的位置.是纯粹的空间概念.因此不同的元件可共用同一零件封装,同种元件也可有不同的零件封装.像电阻,有传统的针插式,这种元件体积较大,电路板必须钻孔才 ...

  3. 浅谈Java反射机制 之 获取类的字节码文件 Class.forName("全路径名") 、getClass()、class

    另一个篇:获取 类 的 方法 和 属性(包括构造函数) 先贴上Java反射机制的概念: AVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法: 对于任意一个对象,都能够调用它 ...

  4. 002/Node.js(Mooc)--Http知识

    1.什么是Http 菜鸟教程:http://www.runoob.com/http/http-tutorial.html 视频地址:https://www.imooc.com/video/6713 h ...

  5. (4.31)quotename函数

    操作sql server尤其是写存储过程时,要用到各种各样的函数,今天就总结一个quotename()的用法. 1.语法: quotename(‘character_string’[,‘quote_c ...

  6. Sentinel之熔断降级

    除了流量控制以外,对调用链路中不稳定的资源进行熔断降级也是保障高可用的重要措施之一.由于调用关系的复杂性,如果调用链路中的某个资源不稳定,最终会导致请求发生堆积.Sentinel 熔断降级会在调用链路 ...

  7. Gradle -- 初体验

    Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具.它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置. ​ ...

  8. CSS浏览器兼容性

    答题技巧:因为这个问题主要是看你经验,一般有了开发经验的都会遇到这样的坑,你只要说出几个来大致就可以了. 1.对齐文本和文本输入框 问题: 当input元素在设置了高时,在IE7.IE8.IE9下会出 ...

  9. Acwing.835. Trie字符串统计(模板)

    维护一个字符串集合,支持两种操作: “I x”向集合中插入一个字符串x: “Q x”询问一个字符串在集合中出现了多少次. 共有N个操作,输入的字符串总长度不超过 105105,字符串仅包含小写英文字母 ...

  10. 不定参数(rest 参数 ...)

    不定参数 如何实现不定参数 使用过 underscore.js 的人,肯定都使用过以下几个方法: _.without(array, *values) //返回一个删除所有values值后的array副 ...