linux系统--用户和用户组
一、用户和用户组的概念
- 用户:使用操作系统的人
- 用户组:具有相同系统权限的一组用户。在linux系统中可以存在多个用户组
1.1 /etc/group
这里存储当前系统中所有用户组的信息
每一行对应一个用户组,每一个用户组分成4段,每一段都用一个 冒号 来连接。
组密码占位符:用户有登录密码,用户组也有一个登录密码
组编号:每一个用户组都有一个独立的编号
组中用户名列表:当用户名与组名称是相同的时候,可以省略用户名
组号0一定是root用户,组号1-499属于系统预留的组编号,一般来说是预留给安装在操作系统中的软件或者服务的(一般是把未被使用的最小组号分配给安装的软件或者服务)。
用户手动创建的用户组编号是从500开始。把大于等于500的最小组号分配给用户手动创建爱你的用户组
组密码占位符一律用x
1.2 /etc/gshadow
存储当前系统中用户组的密码信息。
每一行都与group文件中对应
组密码为 * 或为空 或为 !的时候,都认为uzu的密码为空,即没有密码。
组管理者即是哪些用户可以管理这个用户组,若为空,则为所有用户都可以管理用户组
1.3 /etc/passwd
存储当前系统中所有用户的信息
每一行对应一个用户的信息
1.4 /etc/shadow
存储当前系统中所有用户的密码信息
二、用户和用户组命令
2.1 用户组命令
2.2.1 创建用户组——groupadd
groupadd 用户组名:创建一个用户组
可以看见,创建了一个编号为 1001 的用户组 hand
同时创建用户组和编号
groupadd -g 888 test
2.1.2 修改组名称——groupmod
groupmod -n 新组名称 原组名称
-n 表示修改用户组的名称
2.1.3 修改组编号——groupmod
groupmod -g 修改的组编号 组名称
2.1.4 删除用户组——groupdel
groupdel 用户组名
在删除用户之前,必须先删除用户组中的用户,否则处在用户组中的用户关于用户组的信息就无法跟组对应上,就变成了系统中的黑户,就会受到权限上的限制。
2.1.5 给用户组设定密码
gpasswd 用户组
2.2 用户命令
2.2.1 创建用户——useradd
先创建一个用户组:groupadd hand
创建用户:useradd -g 用户组名 用户名
创建用户的时候通过 -d 参数指定用户的个人文件夹
useradd -d /home/xxx hand4
若是没有创建用户个人文件夹,系统会在指定目录中创建个人文件夹
2.2.2 给用户添加注释——usermod
usermod -c 注释 用户名
2.2.3 修改用户名
usermod -l 新用户名 旧用户名
指定新的个人文件夹
2.2.4 修个一个用户的所属用户组
usermod -g 目标用户组名 用户名
2.2.5 删除用户——userdel
userdel 用户名
这种删除并不会删除用户的个人文件夹里面的文件夹
userdel -r 用户名
可以删除个人用户以及个人用户文件夹
2.2.6 禁止除了root账号以外的其他账户登录服务器
创建一个nologin空文件即可达到效果
touch /etc/nologin
2.2.7 锁定账户——passwd
passwd -l 用户名
2.2.8 解锁账户——passwd
passwd -u 账户名
2.2.9 使账户无密码登陆:清除账户的密码
passwd -d 用户名
三、主要组与附属组
- 用户可以同时属于多个组
- 一个主要组
- 多个附属组
3.1 将用户添加进/删除另一个组中(即添加进附属组)
gpasswd -a 用户名 其他组名
若一次添加多个用户组,可以将组名用 逗号 隔开来一次添加多个附属组。
将用户从附属组中删除:
gpasswd -d 用户名 其他组名
3.2 将身份切换到附属组
当一个用户属于多个用户组的时候,用户创建的文件默认情况下属于它的主要组。如果要以附属组组员的身份来创建一个文件,需要把身份临时切换到附属组中去。用户需要自己的用户模式下执行,不能在root权限下。
newgrp 附属组名称
3.3 创建爱你用户的时候即指定主要组,也指定附属组
useradd -g 主要组 -G 附属组
多个附属组用逗号连接
四、Linux中用户管理其他命令
4.1 切换用户
把当前用户切换到其他用户
su 切换的用户名
4.2 Whoami 显示当前登陆用户名
4.3 id 用户名
显示指定用户信息,包括用户编号、用户名
主要组编号及名称,附属组列表
4.4 groups 用户名:显示 用户 所在的所有组
4.5 chfn 用户名: 设置用户资料,依次输入用户资料
4.6 finger 用户名:显示用户详细资料
linux系统--用户和用户组的更多相关文章
- linux系统用户以及用户组管理
本系列的博客来自于:http://www.92csz.com/study/linux/ 在此,感谢原作者提供的入门知识 这个系列的博客的目的在于将比较常用的liunx命令从作者的文章中摘录下来,供自己 ...
- linux入门教程(七) linux系统用户以及用户组管理
关于这部分内容,笔者在日常的linux系统管理工作中用到的并不多,但这并不代表该内容不重要.毕竟linux系统是一个多用户的系统,每个账号都干什么用,你必须了如指掌.因为这涉及到一个安全的问题. [认 ...
- 2019/12/11学习内容摘要(Linux系统用户与用户组管理①)
一,认识/etc/passwd和/etc/shadow 1. /etc/passwd :文件中保存系统中所有的用户和用户的主要信息. 在命令行输入 cat /etc/passwd | head ( ...
- Linux系统用户及用户组管理
目录一.新增/删除用户和用户组二.创建/修改密码三.用户身份切换--su和sudo 一.新增/删除用户和用户组1.用户组 命令 : groupadd 语法 : groupadd [-g GID] gr ...
- Linux系统用户与用户组管理
一.用户和用户组的管理 1.新增组 groupadd 命令 格式:groupadd 组名 2.删除组 groupdel 格式:groupdel 组名 3.增加用用户命令 useradd 格式:us ...
- Linux系统用户和用户组介绍
1.请问如下登录环境故障的原理及解决办法? [root@server test]# useradd rr ##创建用户rr [root@server test]# id rr uid=510(rr) ...
- 2019/12/12学习内容摘要(Linux系统用户与用户组管理②)
5.命令 chfn 用于修改用户的finger (finger为 /etc/passwd 文件第五个字段中显示的信息) 三,用户密码管理 1.命令passwd 格式 passwd [username ...
- linux 系统用户与用户组管理
关于/etc/passwd和/etc/shadow /etc/passwd 第1个字段为用户名(第一行中的root就是用户名)第2个字段存放的是该账号的口令.第3个字段为一个数字,这个数字代表的用户标 ...
- Linux系统用户/用户组/文件权限相关
目录一.Linux系统用户/用户组权限相关二.Linux系统文件权限相关 一.Linux系统用户/用户组权限相关 .命令:usermod 用法:usermod [-agGus] user args ‘ ...
随机推荐
- BZOJ1419Red is good——概率DP
题目描述 桌面上有R张红牌和B张黑牌,随机打乱顺序后放在桌面上,开始一张一张地翻牌,翻到红牌得到1美元,黑牌则付 出1美元.可以随时停止翻牌,在最优策略下平均能得到多少钱. 输入 一行输入两个数R,B ...
- AC自动机-HDU3065-简单题
http://acm.hdu.edu.cn/showproblem.php?pid=3065 需要记录匹配情况的AC自动机,没有清空一些数组导致wa了几发. /*------------------- ...
- HDU-3746-KMP理解失配
这个有点意思,要理解失配数组 题意是要计算出需要构造成循环节相连的最小个数 利用失配构造函数求出单个循环节,然后计算出需要的加上的珠子个数 #include <cstdio> #inclu ...
- ueditor 使用
之前在微信上用到富文本编辑器,选用了ueditor 之后又在项目中使用到了,因此打算写下来记录一下. 1 首先去下载ueditor 2 我的是 MVC项目,贴一下:粘贴到Content下 3 然后 ...
- day8 文件操作
文件基本操作 # 打开文件 f = open("小重山","r",encoding="utf-8") # readline 方法 只查看一行 ...
- hdu5306 Gorgeous Sequence
hdu5306 Gorgeous Sequence 题目大意 给你一个序列,维护区间和,区间chkmin和区间最大值 数据范围 数据组数T,序列长度n,操作次数m $T = 100,\sum n ...
- 自学Aruba3.2-Aruba配置架构-Virtual AP配置要点
点击返回:自学Aruba之路 自学Aruba3.2-Aruba配置架构-Virtual AP配置要点 1. AP.AP-Group和Virtual-AP的关系 解析列举: AP1.AP3, ...
- 找到第一个只出现一次的字符并返回它的位置(Python)
s = 'hellobaby' def findchar(s): for i in s: if s.count(i)==1: return i, s.index(i) m,n=findchar(s) ...
- Centos6.5 防火墙开放端口
0. 说明 centos6.5处于对安全的考虑,严格控制网络进去.所以在安装mysql或者使用tomcat,需要开放端口3306或8080. 通常的解决办法有两个.一个是直接关闭防火墙(非常不推荐): ...
- 洛谷P1044 栈
之前看这题还是一头雾水,现在看:啊啊啊lydnb! 思考了一段时间,发现可以用DP. 令f[i]表示有i辆车时的方案数. 我一开始考虑的是在后面加车,可是这样搞不出状态转移方程来. 然后我考虑从前面加 ...