用户管理配置文件
用户信息文件:/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. Redhat 启动mysql失败及重置密码

    cd usr/local/mysql/mysql5.6/bin [root@iZ2ze6yx6b47rdx0vccs5iZ bin]# service mysql-libs-5.1.73-8.el6_ ...

  2. (转)Java 中关于String的空对象(null) ,空值(empty),空格

    原文出处:Java 中关于String的空对象(null) ,空值(empty),空格 定义 空对象: String s = null; 空对象是指定义一个对象s,但是没有给该对象分配空间,即没有实例 ...

  3. ASP.NET MVC与ASP.NET Web API的区别(转)

    出处:http://blog.csdn.net/wangzl1163/article/details/72676616 MVC主要用来构建网站,既关心数据也关心页面展示,而Web API只关注数据 W ...

  4. 服务器上创建git仓库

    1. 在服务器上 su - git ,切换用户 2. 创建一个目录    mkdir test.git ,请注意带上 .git 扩展 3. 切换进入此目录,git init --bare  ,初始化裸 ...

  5. 一条java开发工程师的升级路线,从初级到无语言障碍

    看了一篇文章,讲述的是如何进行后端开发升级,现在分享下,我的总结,感谢写文章的作者大大,觉得他很会坚持,虽然一直在骂人,但是,我觉得人最大的敌人就是懒惰,所以骂得好 现在写下我的总结,希望对有志者有帮 ...

  6. IO 之 InputStream 和 Reader

    package java.io; // Representing an input stream of bytes. public abstract class InputStream impleme ...

  7. Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用的基本命令分享给大家一下,希望可以帮助你们。

    Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用的基本命令分享给大家一下,希望可以帮助你们. 这个是我将鸟哥书上的进行了一下整理的,希望不要涉及到版权问题. 1.显示日期的 ...

  8. cenos 安装nginx并添加到service

    系统平台:CentOS release 6.6 (Final) 64位. 一.安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c++ libtoo ...

  9. Buffer Pool--锁定内存页

    锁定内存页在数据库中的优点和缺点: SQL Server 使用VirtualAlloc来分配内存,无内存压力时,SQL Server会尽可能地申请内存来缓存数据,当内存出现压力时,会出现缓存数据频繁地 ...

  10. nginx 托管.net core的service文件

    在 /etc/systemd/system/ 中新建一个服务文件site1.service vim /etc/systemd/system/site1.service [Unit] Descripti ...