Linux用户身份(命令详解与补正)
基于Red Hat Enterprise Linux 7.5
Linux中的root就是存在于所有类UNIX系统中的超级用户,持有最高管理权限,能添加/删除用户、开关机、关闭或开启硬件或者系统服务等,并且root的操作无法被阻挡。
Linux中root为什么叫root,不是因为名字叫root,而是UID为0(在Linux中每一个用户的UID都是唯一的)
UID为0:系统最高管理员用户root。
UID为1~999:系统用户,Linux为了避免某个服务被入侵以至于被提权到整个server,默认服务程序会有独立的系统用户负责运行,将入侵破坏的范围降到最低。
UID为1000~:普通用户,所有UID大于1000的用户都是普通用户,管理员创建的用户UID都是从1000开始。
为了方便管理,Linux增加了GID的概念,即将一个区域或者职权的用户加入到一个用户组中,在企业生产环境中能有效管控员工的安全风险问题,避免员工接触到非自身职权内的数据。
Linux创建用户的时候会自动创建一个同名用户组,称为基本用户组;如果以后该用户加入其他用户组,称之为拓展用户组;一个用户只有一个基本用户组,但可以拥有多个拓展用户组。
常用命令
useradd
用于创建新的用户,useradd [参数] username
参数
-u:后面接的是UID,即“useradd -u 987 username”(意为创建一个UID为987,名字叫username的用户)
-e:后见接的是日期,格式为YYYY-MM-DD,即账号的失效时间,这会写入shadow的第八个栏位
-g:指定一个初始的基本用户组(该用户组必须事先在系统中创建并存在),该组的GID会被放置到/etc/passwd的第四个栏位
-G:指定一个或者多个拓展用户组(该用户组必须事先在系统中创建并存在),这个会修改/etc/group内的相关资料
-U:创建一个和用户同名的组,并将用户添加到组里面
-N:不创建与改用户同名的基本用户组,而是将用户添加到-g指定的用户组里面
-r:创建一个系统用户,这个用户的UID有限制(参考/etc/login.defs)
-s:指定该用户的默认shell解释器
-f:后面接shadow的第七栏位项目,密码过期后,该账户被彻底禁用之前的天数,0表示立即禁用,-1表示永不禁用(密码只会过期但登陆时强制重新设定密码)
-M:强制不要建立该用户家目录(系统账号预设值)
-m:强制建立改用户用户家目录(一般账号预设值)
-d:(不使用系统预设值)指定某个目录成为家目录,必须为绝对路径
groupadd
用于创建用户组,groupadd [参数] groupname
参数:
-g:创建的同时给这个group指定GID
-r:创建系统group
chage
用于修改账号和密码有效期限,chage [参数] username
参数
-l(小写L):列出该账号的详细密码参数
-d:后面接日期,上一次修改密码的时间,格式为YYYY-MM-DD
-m:后面接天数,两次密码之间间隔的最小天数,即除了root操作的情况下,用户修改自己的密码必须间隔的最短时间(如果设定为3,那么3天内用户无法自行修改密码),如果为0表示任何时间都可以修改
-M:后面接天数,两次密码之间间隔的最大天数
-W:用户密码到期前会接到天数警告
-I(大写i):后面接天数,密码失效日期
-E:后面接日期,账号失效时间,格式为YYYY-MM-DD
passwd
用于修改用户密码,过期时间、认证信息等,passwd [参数] username
参数:
-l(小写L):锁定该用户密码,禁止其登陆(root使用su切换到该用户除外)
-u:解除该用户密码锁定,允许登陆
-S:显示改用户密码是否被锁定以及密码的加密算法
-d:删除该用户的密码,即可以用空密码登陆
-e:强制该用户下次登陆时修改密码
-n:接天数,多少天内不可修改密码
-x:接天数,多少天内必须修改密码
-w:警告密码过期时间
-i:接天数,密码失效天数
usermod
用户修改用户的属性,usermod [参数] username
参数
-c:填写账户的备注信息
-d、-m:-d和-m参数必须连用,指定用户新的家目录并将原有家目录数据转移至新目录(-d是指定目录,-m是移动文件)
-g:变更所属用户组(该用户组必须事先在系统中创建并存在)
-G:变更拓展用户组(多个组之间用逗号隔开,没有空格)注意:如果该用户本身在一个组里面(假定为group9),但-G后接参数group1,group2,group3......内没有该组,那么该用户就会从该组(group9)里面删除,可以使用-a参数避免这个问题(-a参数是添加,如果不加-a那么就是设定)
-a:将用户添加到拓展用户组中,该参数必须和-G连用,但不是-G的必要参数
-f:密码过期之后,账户被彻底禁用前的天数
-e:后接日期,账户被彻底禁用的时间,格式为YYYY-MM-DD
-L:锁定用户禁止其登陆
-U:解锁用户并允许其登陆
-s:变更默认shell,如果为空即为系统默认登陆shell
-l(小写L):修改用户名
-u:修改该用户的UID
-o:-u的可选参数,-o可以使得-u修改的UID可以是非唯一值(非负值)
userdel
用于删除用户,userdel [参数] username
参数
-f:强制删除用户账户,即使该账户目前仍处于登陆状态,将强制删除用户邮箱以及家目录,即使其他用户也在浏览使用该用户的邮箱和家目录;如果/etc/login.defs中的USERGROUP_ENAB为yes,那么如果有与该用户同名的组也一并删除,即使是其他用户的基本组。该参数危险性极高,甚至可能将破坏系统稳定性。
-r:用户家目录中的文件将随着用户家目录和用户邮箱一起删除,其他位置的文件需要手动搜索并删除,该账户的邮箱在login.defs中的MAIL_DIR中有定义。
Linux用户身份(命令详解与补正)的更多相关文章
- 4-1 Linux用户管理命令详解
1. /etc/passwd 格式 用户名:密码:UID:GID:注释:家目录:默认shell useradd [options ] USERNAME -u: UID 要大于等于500, - ...
- linux下tar命令详解
linux下tar命令详解 tar是Linux环境下最常用的备份工具之一.tar(tap archive)原意为操作磁带文件,但基于Linux的文件操作机制,同样也可适用于普通的磁盘文件.ta ...
- Linux主要shell命令详解(上)
[摘自网络] kill -9 -1即实现用kill命令退出系统 Linux主要shell命令详解 [上篇] shell是用户和Linux操作系统之间的接口.Linux中有多种shell,其中缺省使用的 ...
- Linux下ps命令详解 Linux下ps命令的详细使用方法
http://www.jb51.net/LINUXjishu/56578.html Linux下的ps命令比较常用 Linux下ps命令详解Linux上进程有5种状态:1. 运行(正在运行或在运行队列 ...
- linux之find命令详解
linux之find命令详解 查找文件find ./ -type f查找目录find ./ -type d查找名字为test的文件或目录find ./ -name test查找名字符合正则表达式的文件 ...
- Linux下rar命令详解
Linux下rar命令详解 用法: rar <命令> -<选项1> ….-<选项N> < 操作文档> <文件…> <@文件列表…> ...
- Linux下chkconfig命令详解(转)
Linux下chkconfig命令详解 chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. ...
- Linux知识积累(4) Linux下chkconfig命令详解
Linux下chkconfig命令详解 chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. ...
- Linux下top命令详解
Linux下top命令详解 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.top是一个动态显示过程,即可以通过用户按键来不断刷 ...
随机推荐
- 原来TextBox打开了MultiLine之后就不能使用AutoComplete了
private void Form1_Load(object sender, EventArgs e) { // Create the list to use as the custom source ...
- web项目数据存入mysql数据库中文乱码问题
刚开始怀疑是项目中编码设置问题,发现在web.xml中已经有过设置:后来dubug显示数据在传输的过程中一切正常,怀疑是数据库编码问题,然后查看mysql编码: show variables like ...
- PostgreSQL-13-缺失值处理
-- 1.查看缺失值CREATE TABLE dnull AS SELECT * FROM data; -- 复制数据SELECT * FROM dnull WHERE 房屋编码 IS NULL OR ...
- Codeforces Round #542(Div. 2) B.Two Cakes
链接:https://codeforces.com/contest/1130/problem/B 题意: 给定n和 2 * n个数,表示i位置卖ai层蛋糕, 有两个人在1号,必须严格按照1-n的顺序买 ...
- bzoj 4695: 最假女选手 && Gorgeous Sequence HDU - 5306 && (bzoj5312 冒险 || 小B的序列) && bzoj4355: Play with sequence
算导: 核算法 给每种操作一个摊还代价(是手工定义的),给数据结构中某些东西一个“信用”值(不是手动定义的,是被动产生的),摊还代价等于实际代价+信用变化量. 当实际代价小于摊还代价时,增加等于差额的 ...
- getAnnotation为null的坑
在写一个基于SpringAOP的权限控制的. 自己定义了一个注解,然后逻辑代码需要通过获取自定义注解的一个属性来进行权限控制. 下面简单上一下关键代码: 自定义注解: @Documented //有关 ...
- 记录一下filter
filter是什么,如它的字面意思,就是拦截器.它可以在request到达相关资源之前,比如servlet之前先处理requeset,也可以拦截或处理从某个资源比如servlet发出的response ...
- 539 Minimum Time Difference 最小时间差
给定一个 24 小时制(小时:分钟)的时间列表,找出列表中任意两个时间的最小时间差并已分钟数表示.示例 1:输入: ["23:59","00:00"]输出: 1 ...
- 排序算法(C语言+Python版)宝宝再也不怕面试官写排序算法了
直接插入排序 过程: 1. 数据可分看成两个部分,前面的数据是有序的 2. 从后面的数据取出一个元素,插到前面有序数据的合适位置 从右端开始查找,到找到比此元素大的时候,则此元素向后移动,以空出多余的 ...
- EDAS提交论文字体未嵌入
一.深夜更一波,刚刚在EDAS提交论文,提示格式不通过,说我有字体未嵌入.但是之前一直都没有问题,这次只是在LaTeX中嵌图的时候把eps换成PDF了.所以问题应该是出在我的PDF图里,里面有字体未被 ...