用户与用户组

用户与组常见命令与用法

一    用户与用户组

Linux下所有的东西都是文件、不管是具体文件还是目录。那么当多人同机操作的时候、考虑到每个人的隐式权和个人喜好,文件拥有者就相当重要了,比如A有一个存放情书的文件夹,那A估计不会喜欢谁都能看这些情书,那么A就可以用密码箱锁起来,别人就不能随意翻动了。A就是这个密码箱(可看成文件夹)的拥有者。

   用户(user)和用户组(group)概念

我们知道,Linux是一个多用户多任务的分时操作系统,如果要使用系统资源,就必须向系统管理员申请一个账户,然后通过这个账户进入系统。这个账户和用户是一个概念,通过建立不同属性的用户,一方面,可以合理的利用和控制系统资源,另一方面也可以帮助用户组织文件,提供对用户文件的安全性保护。每个用户都用一个唯一的用户名和用户口令,在登录系统时,只有正确输入了用户名和密码,才能进入系统和自己的主目录。用户组是具有相同特征用户的逻辑集合,有时我们需要让多个用户具有相同的权限,比如查看、修改某一个文件的权限,一种方法是分别对多个用户进行文件访问授权,如果有10个用户的话,就需要授权10次,显然这种方法不太合理;另一种方法是建立一个组,让这个组具有查看、修改此文件的权限,然后将所有需要访问此文件的用户放入这个组中,那么所有用户就具有了和组一样的权限。这就是用户组,将用户分组是Linux 系统中对用户进行管理及控制访问权限的一种手段,通过定义用户组,在很大程度上简化了管理工作。

用户和用户组的对应关系是:一对一、多对一、一对多或多对多;

一对一:某个用户可以是某个组的唯一成员;
多对一:多个用户可以是某个唯一的组的成员,不归属其它用户组;比如beinan和linuxsir两个用户只归属于beinan用户组;
一对多:某个用户可以是多个用户组的成员;比如beinan可以是root组成员,也可以是linuxsir用户组成员,还可以是adm用户组成员;
多对多:多个用户对应多个用户组,并且几个用户可以是归属相同的组;其实多对多的关系是前面三条的扩展;理解了上面的三条,这条也能理解;

 

 

二   用户和用户组相关的配置文件、命令或目录

用户和用户组相关的配置文件

 

/etc/passwd:用户及其属性信息(名称、UID、主组ID等)

/etc/group:组及其属性信息

/etc/shadow:用户密码及其相关属性

/etc/gshadow:组密码及其相关属性

/etc/skel目录一般是存放用户启动文件的目录

/etc/login.defs: 创建用户时的一些规划

管配置文件理用户和用户组的相关工具或命令

管理用户的工具或命令

useradd    注:添加用户

-u UID
-o 配合-u 选项,不检查UID的唯一性
-g GID:指明用户所属基本组,可为组名,也可以GID
-c “COMMENT”:用户的注释信息
-d HOME_DIR:以指定的路径(不存在)为家目录
-s SHELL: 指明用户的默认shell程序
可用列表在/etc/shells文件中
-G GROUP1[,GROUP2,…]:为用户指明附加组,组须事先存在
-N 不创建私用组做主组,使用users组做主组
-r: 创建系统用户CentOS 6: ID<500,CentOS 7: ID<1000
-m 创建家目录,用于系统用户
-M 不创建家目录,用于非系统用户

passwd     注:为用户设置密码

-l:锁定指定用户
-u:解锁指定用户
-e:强制用户下次登录修改密码
-n mindays: 指定最短使用期限
-x maxdays:最大使用期限
-w warndays:提前多少天开始警告
-iinactivedays:非活动期限
–stdin:从标准输入接收用户密码
echo “PASSWORD” | passwd–stdinUSERNAME

usermod  注:修改用户命令,可以通过usermod 来修改登录名、用户的家目录等等;

-u UID: 新UID
-g GID: 新主组
-G GROUP1[,GROUP2,…[,GROUPN]]]:新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使用-a选项
-s SHELL:新的默认SHELL
-c ‘COMMENT’:新的注释信息
-d HOME: 新家目录不会自动创建;若要创建新家目录并移动原家数据,同时使用-m选项
-l login_name: 新的名字;
-L: lock指定用户,在/etc/shadow 密码栏的增加!
-U: unlock指定用户,将/etc/shadow 密码栏的! 拿掉
-e YYYY-MM-DD: 指明用户账号过期日期
-f INACTIVE: 设定非活动期限

userdel    注:删除用户
-r: 删除用户家目录

pwcov       注:同步用户从/etc/passwd 到/etc/shadow
pwck         注:pwck是校验用户配置文件/etc/passwd 和/etc/shadow 文件内容是否合法或完整;
pwunconv  注:是pwcov 的立逆向操作,是从/etc/shadow和 /etc/passwd 创建/etc/passwd ,然后会删除 /etc/shadow 文件;
finger        注:查看用户信息工具
id              注:查看用户的UID、GID及所归属的用户组

-u: 显示UID
-g: 显示GID
-G: 显示用户所属的组的ID
-n: 显示名称,需配合ugG使用

chsh    注:指定shell
chfn          注:更改用户信息工具

chage[OPTION]… LOGIN
-d LAST_DAY
-E –expiredateEXPIRE_DATE
-I –inactive INACTIVE
-m –mindaysMIN_DAYS
-M –maxdaysMAX_DAYS
-W –warndaysWARN_DAYS
–l 显示密码策略
示例:
chage-d 0 tom 下一次登录强制重设密码
chage-m 0 –M 42 –W 14 –I 7 tom
chage-E 2016-09-10 tom
su             注:用户切换工具

cat /etc/passwd = getent passwd 查看用户信息

authconfig–passalgo=sha256 –update 更改加密算法

openssl rand -base64 30 随机生成30位口令

suUserName:非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录
su-UserName:登录式切换,会读取目标用户的配置文件,切换至家目录,完全切换
root su至其他用户无须密码;非root用户切换时需要密码

 

管理用户组的工具或命令

groupadd  注:添加用户组;
-g GID: 指明GID号;[GID_MIN, GID_MAX]
-r: 创建系统组
CentOS 6: ID<500
CentOS 7: ID<1000

groupdel         注:删除用户组;
groupmod        注:修改用户组信息

-n group_name: 新名字
-g GID: 新的GID

gpasswd   注 :组密码
gpasswd[OPTION] GROUP
-a user 将user添加至指定组中
-d user 从指定组中移除用户user
-A user1,user2,… 设置有管理权限的用户列表

gpasswd[OPTION] GROUP
-a user 将user添加至指定组中
-d user 从指定组中移除用户user
-A user1,user2,… 设置有管理权限的用户列表

newgrp命令:临时切换主组
如果用户本不属于此组,则需要组密码

groupmems
-g, –group groupname更改为指定组(只有root)
Actions:
-a, –add username 指定用户加入组
-d, –delete username 从组中删除用户
-p, –purge 从组中清除所有成员
-l, –list 显示组成员列表

groups     注:显示用户所属的用户组

grpconv   注:通过/etc/group和/etc/gshadow 的文件内容来同步或创建/etc/gshadow ,如果/etc/gshadow 不存在则创建;

grpunconv   注:通过/etc/group 和/etc/gshadow 文件内容来同步或创建/etc/group ,然后删除gshadow文件;

chown   注:修改文件的属主

-R: 递归

chgrp      注:修改文件的属组

-R: 递归

批量创建用户

newusers user.txt
cat pass.txt |chpasswd

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/88515

(2)
张雷张雷
上一篇 2017-11-17 23:32
下一篇 2017-11-18 11:50

相关推荐

  • 磁盘管理

    1、创建一个10G分区,并格式为ext4文件系统。 (1)虚拟机添加21G硬盘 Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1&nbsp…

    Linux干货 2016-12-18
  • 15 权限管理及作业

    15 权限管理及作业(作业单独一篇) 一、杂项知识整理 1、访问控制列表:ACL:Access Control List,实现灵活的权限管理。     除了文件的所有者,所属组和其它人,可以对更多的用户设置权限。     centos7.0之后默认创建的ext4文件系统有ACL功…

    Linux干货 2016-08-04
  • N25 第三周作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [jizo@jizo ~]$ who | cut -d" " -f1 | uniq jizo  2、取出最后登录到当前系统的用户的相关信息。 [root@jizo ~]# who | tail -l jizo     …

    Linux干货 2016-12-18
  • find命令详解

    find命令详解 基本介绍 find命令用来从目录系统中查找文本不同于locate,find不从数据库中查找文件,所以find速度略逊于locate,但find是实时且准确的,而且不需要占用系统资源进行遍历文件。 其标准格式如下 find [-H] [-L] [-P] [-D debugopts] [-O level] [path…] [expressi…

    Linux干货 2017-04-09
  • N25- linux主机名

    N 由于我是零基础学习linux,学完1-2课时,用心消化中,   先分享我的一个小经验,我用xshell登录系统后一般会打开日志记录功能(文件—-日志——启动),日志功能启动后,会以txt的形式记录下你与系统所有的交互(只会记录系统打印到幕的内容和你输入的命令,并不会记录你与你与运行程序交互时输入的内容)日志功…

    Linux干货 2016-12-03
  • linux 基础3

    linux 基础3

    Linux干货 2018-03-25