用户管理配置文件
用户信息文件:/etc/passwd
密码文件:/etc/shadow
用户配置文件:/etc/login.defs /etc/default/useradd
新用户信息文件:/etc/skel
用户组文件:/etc/group
用户组密码文件:/etc/gshadow

用户信息文件:/etc/passwd

对应解释如下:

用户信息文件
字段 含义                    
用户名 用户登录系统时使用的用户名
密码 密码位
UID 用户标识码
GID 缺省组标识码
注释性描述 例如存放用户全名等信息
宿主目录 用户登录系统后的缺省目录
命令解释器 用户使用的Shell,默认为bash

Linux用户一般分为3种

超级用户(root UID = 0)

  一般来说UID为0的是超级用户

普通用户(UID = 500 -60000)

  普通用户安装UID=500开始递增

伪用户(UID 1-499)

  伪用户一般是linux系统和进程服务相关的,比如bin、daemon 、shutdown等,任何linux系统都有这些伪用户,比如我们进行相关操作其实就是调用了系统的伪用户的身份,在linux系统里任何进程操作都必须要有一个用户身份。伪用户一般无法登陆系统。

密码文件

/etc/shadow

用户组

每个用户至少属于一个用户组

每个用户组可包括多个用户

同一个用户组的用户享有该组的共有权限

文件/etc/group 文件格式

添加用户组:groupadd[配置项][组名]

形如:groupadd -g 1001 webs

删除用户:groupdel[组名]

形如:groupadd webs

修改用户组:groupmod -n [新组名][旧组名]

查看用户属于哪些用户组:groups u1

添加用户

添加用户useradd 设置选项 用户名 -D 查看缺省参数

  u:UID

  g:缺省所属用户组的名称或GID

  G:指定用户所属多个组

  d:宿主目录

  s:命令解释器shell

  c:描述信息

  e:指定用户失效时间

  示例:useradd -u 1002 -g webapps -G sys,root -d /web -s /bin/bash -c "is a u2" -e 2019-12-12

修改用户:usermod -l [新用户名] [旧用户名]

  示例:usermod -l u3 u2

删除用户:userdel -r u

设置用户禁用和恢复

  禁用:

  usermod -L [用户名]

  passwd -l [用户名]

  恢复

  usermod -u [用户名]

  passwd -U [用户名]

操作用户组

命令:gpasswd

  -a 添加用户到用户组中

  -d 从用户组中删除用户

  -A 设置用户组管理员

描述:管理组内成员

示例:gpasswd -a u1 webapps

用户组授权

架构师养成记--25.linux用户管理的更多相关文章

  1. 架构师养成记--24.linux常用命令

    一.Linux 文件 根据上文Linux 文件说明1.文件的rwx    d开头表示文件夹,    -开头的表示文件,    l开头表示链接文件    r:read,w:write,x:execute ...

  2. 架构师养成记--9.future模式讲解

    什么是future模式呢?解释这个概念之前我们先来了解一个场景吧,财务系统的结账功能,这个功能可能是每个月用一次,在这一个月中相关的数据量已经积累得非常大,这一个功能需要调用好几个存储过程来完成.假如 ...

  3. 架构师养成记--37.简单shell编程

    一.HelloWord.sh echo 表示打印,可以在sh文件中写诸如pwd.ls 这样的命令,使用命令的时候尽量使用全路径. #!/bin/sh #this is my first sh echo ...

  4. 架构师养成记--35.redis集群搭建

    前记:redis哨兵经验之谈.哨兵做主从切换可能要花费一两秒,这一两秒可能会丢失很多数据.解决方法之一是在java代码中做控制,try catch 到 链接断开的异常就sleep 一两秒钟再conti ...

  5. 架构师养成记--23.sigar使用实例

    作用是检测机器的硬件环境 注意在jdk的bin目录下加上sigar的lib目录中的文件 import java.net.InetAddress; import java.net.UnknownHost ...

  6. 架构师养成记--15.Disruptor并发框架

    一.概述 disruptor对于处理并发任务很擅长,曾有人测过,一个线程里1s内可以处理六百万个订单,性能相当感人. 这个框架的结构大概是:数据生产端 --> 缓存 --> 消费端 缓存中 ...

  7. 架构师养成记--14.重入锁ReentrantLock 和 读写锁 ReentrantReadWriteLock

    ReentrantLock 有嗅探锁定和多路分支等功能,其实就是synchronized,wait,notify的升级. this锁定当前对象不方便,于是就有了用new Object()来作为锁的解决 ...

  8. 架构师养成记--12.Concurrent工具类CyclicBarrier和CountDownLatch

    java.util.concurrent.CyclicBarrier 一组线程共同等待,直到达到一个公共屏障点. 举个栗子,百米赛跑中,所有运动员都要等其他运动员都准备好后才能一起跑(假如没有发令员) ...

  9. 架构师养成记--11.Executor概述

    常用方法 Executors.newFiexdPool(int nThreads);固定线程数量的线程池: Executors.newSingleThreadExecutor();单个线程的线程池: ...

随机推荐

  1. php模拟http请求

    在http简析中,我们提到了浏览器请求资源的一个流程,那么这个流程能不能用php来模拟呢?答案是肯定的. php模拟http请求需要实现以下步骤: 1.连接apache服务器 使用fsockopen: ...

  2. [Selenium] 在Grid模式下打印出当前Case是在哪台Node上运行

    AAAbstractFlow() public void getComputerNameOfNode(WebDriver driver){ String CIHub = Environment.get ...

  3. Mac之如何查看已用端口

    一.苹果自带的网络分析工具查看方法:       OS X 10.9 下面 网络实用工具 从实用工具目录里消失了,可能苹果认为这个程序用的人太少就取消了吧.但是对于做互联网的人还是有点用的. 启动方法 ...

  4. CodeForces 518B Tanya and Postcard (题意,水题)

    题意:给定两个字符串,然后从第二个中找和第一个相同的,如果大小写相同,那么就是YAY,如果大小写不同,那就是WHOOPS.YAY要尽量多,其次WHOOPS也要尽量多. 析:这个题并不难,难在读题懂题意 ...

  5. Set List Map

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  6. ADF文件在哪个地方?

    Where is ADF file on Tango Device? Ask Question up vote2down votefavorite   I have a Tango tablet de ...

  7. jmeter 使用ANT运行 设置自动停止时间

    1.直接看图

  8. VS2013的IDE开发使用便捷实用技巧----(补充)

    快捷键操作真的很高效.很酷······ 节省时间,提高开发效率 向人们展示可以惊讶到他们的功能,就像“我怎么就没发现”这种功能. 1. Peek View(本地查看程序源代码位置,便捷跳转) 可以在不 ...

  9. Java异常封装

    转载: Java异常封装 Java里面的异常在真正工作中使用还是十分普遍的.什么时候该抛出什么异常,这个是必须知道的. 当然真正工作里面主动抛出的异常都是经过分装过的,自己可以定义错误码和异常描述. ...

  10. ServiceStack.Text json中序列化日期格式问题的解决

    标记: ServiceStack.Text,json,序列化,日期 在使用ServiceStack.Text的序列化为json格式的时候,当属性为datetime的时候,返回的是一个new date( ...