一、 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. python实现RESTful服务(基于flask)

    https://www.jianshu.com/p/6ac1cab17929 http://www.pythondoc.com/flask/quickstart.html 在java中调用python ...

  2. 20160711--C# 委托的三种调用示例(同步调用 异步调用 异步回调)【转载】

    首先,通过代码定义一个委托和下面三个示例将要调用的方法: 代码如下: public delegate int AddHandler(int a,int b); public class 加法类 { p ...

  3. axios 拦截以及 API简单配置(element)

    在某些情况下,有时候会在接口请求的API中需要拿到存在浏览器中的COOKIE,调用的方式可以为: // 获取浏览器Cookie function getCookie(cname) { var name ...

  4. Linux-档案权限概念

    第一欄代表這個檔案的類型與權限(permission): 這個地方最需要注意了!仔細看的話,你應該可以發現這一欄其實共有十個字元:(圖5.2.1及圖5.2.2內的權限並無關係) 圖5.2.2.檔案的類 ...

  5. java中java.util.Date和java.sql.Date之间的关系和使用选择

    关系: java.util.Date是java.sql.Date的父类 区别:(java.sql.Date包含年月日信息,java.util.Date包含年月日时分秒) 1:“规范化”的java.sq ...

  6. Good teachers,they inspire you, they entertain you,and you end up learning a ton even when you don't know it.

    pardon. v. 原谅.抱歉.再说一次 honourable.adj.值得钦佩的 specification.n.规格.标准 amongst.prep.在...中 gallon.n.加仑 comp ...

  7. [Python3 填坑] 018 组装类的几个例子

    目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 MetaClass 举例 2.2 type 举例 2.3 MetaClass 举例 1. print( 坑的信息 ) 挖坑时间:2019 ...

  8. python之设置windows背景图片

    #!/usr/bin/env python3 # -*- coding: utf-8 -*- __author__ = 'jiangwenwen' from PIL import Image impo ...

  9. Acwing143. 最大异或对

    在给定的N个整数A1,A2……ANA1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少? 输入格式 第一行输入一个整数N. 第二行输入N个整数A1A1-ANAN. 输出格式 输出一 ...

  10. sweetalert插件替代alert/confirm

    更多关于SweetAlert的内容请参考:https://github.com/t4t5/sweetalert.