Linux用户和权限——管理用户和用户组的命令

摘要:本文主要学习了在Linux系统中管理用户和用户组的命令。

useradd命令

useradd命令可以用来创建新用户。

基本语法

 useradd [选项] 用户名

选项说明

 -u 用户UID:手工指定用户的UID,注意范围不要小于500。
-d 目录名:手工指定用户的主目录。主目录必须写绝对路径,而且如果需要手工指定主目录,则一定要注意权限。
-c 描述:手工指定/etc/passwd文件中各用户信息中第五个字段的描述性内容,可随意配置。
-g 目录名:手工指定用户的初始组。一般以和用户名相同的组作为用户的初始组,在创建用户时会默认建立初始组。一旦手动指定,则系统将不会在创建此默认的初始组目录。
-G 目录名:指定用户的附加组。我们把用户加入其他组,一般都使用附加组。
-s 脚本文件名:手工指定用户的登录脚本,默认是/bin/bash。
-e 日期:指定用户的失效日期,格式为“YYYY-MM-DD”。也就是/etc/shadow文件的第八个字段;
-o:允许创建的用户的UID相同。
-m:建立用户时强制建立用户的家目录。在建立系统用户时,该选项是默认的。
-r:创建系统用户,也就是UID在1~499之间,供系统程序使用的用户。由于系统用户主要用于运行系统所需服务的权限配置,因此系统用户的创建默认不会创建主目录。

使用举例

 [root@localhost ~]# useradd sam -G root
[root@localhost ~]# cat /etc/passwd
root:x:::root:/root:/bin/bash
bin:x:::bin:/bin:/sbin/nologin
...
sam:x::::/home/sam:/bin/bash
[root@localhost ~]# cat /etc/group
root:x::sam
bin:x::
...
sam:x::
[root@localhost ~]#

passwd命令

使用passwd命令设置密码。

基本语法

 passwd [选项] 用户名

选项说明

 -S:查询用户密码的状态,也就是/etc/shadow文件中此用户密码的内容,仅root用户可用。
-l:暂时锁定用户,该选项会在/etc/shadow文件中指定用户的加密密码串前添加“!”,使密码失效,仅root用户可用。
-u:解锁用户,和-l选项相对应,仅root用户使用。
-d:删除已命名帐号的密码,仅root用户可用。
-k:保持身份验证令牌不过期。
-f:强制执行操作。
-n 时间:设置该用户修改密码后,多长时间不能再次修改密码,对应/etc/shadow文件中各行密码的第四个字段。
-x 有效期:设置该用户的密码有效期,对应/etc/shadow文件中各行密码的第五个字段。
-w 天数:设置用户密码过期前的警告天数,对应/etc/shadow文件中各行密码的第六个字段。
-i 日期:设置用户密码失效日期,对应/etc/shadow文件中各行密码的第七个字段。

使用举例

 [root@localhost ~]# passwd sam
更改用户 sam 的密码 。
新的 密码:
无效的密码: 密码未通过字典检查 - 过于简单化/系统化
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@localhost ~]#

usermod命令

usermod命令用于修改用户信息。

基本语法

 usermod [选项] 用户名

选项说明

 -c 说明信息:修改用户的说明信息,即修改/etc/passwd文件目标用户信息的第五个字段。
-d 目录名:修改用户的主目录,即修改/etc/passwd文件中目标用户信息的第六个字段,需要注意的是,主目录必须写绝对路径。
-e 日期:修改用户的失效曰期,格式为"YYYY-MM-DD",即修改/etc/shadow文件目标用户密码信息的第八个字段。
-g 组名:修改用户的初始组,即修改/etc/passwd文件目标用户信息的第四个字段(GID)。
-u 用户UID:修改用户的UID,即修改/etc/passwd文件目标用户信息的第三个字段(UID)。
-G 组名:修改用户的附加组,其实就是把用户加入其他用户组,即修改/etc/group文件。
-l 用户名:修改用户名称。
-L:临时锁定用户(Lock)。
-U:解锁用户(Unlock),和-L对应。
-s 脚本文件名:修改用户的登录脚本,默认是/bin/bash。

使用举例

 [root@localhost ~]# usermod -G root lisa
[root@localhost ~]# cat /etc/group
root:x::lisa
bin:x::
...
[root@localhost ~]#

userdel命令

userdel命令功能很简单,就是删除用户的相关数据。此命令只有root用户才能使用。

基本语法

 userdel [选项] 用户名

选项说明

 -r:表示在删除用户的同时删除用户的家目录。

使用举例

 [root@localhost ~]# userdel lisa
[root@localhost ~]# cat /etc/passwd
root:x:::root:/root:/bin/bash
bin:x:::bin:/bin:/sbin/nologin
...
[root@localhost ~]#

id命令

id命令可以查询用户的UID、GID和附加组的信息。

基本语法

 id 用户名

使用举例

 [root@localhost ~]# id root
uid=(root) gid=(root) 组=(root)
[root@localhost ~]#

su命令

su命令是最简单的用户切换命令,通过该命令可以实现任何身份的切换,包括从普通用户切换为root用户、从root用户切换为普通用户以及普通用户之间的切换。

普通用户之间切换以及普通用户切换至root用户,都需要知晓对方的密码,只有正确输入密码,才能实现切换;从root用户切换至其他用户,无需知晓对方密码,直接可切换成功。

基本语法

 su [选项] 用户名

选项说明

 -:当前用户不仅切换为指定用户的身份,同时所用的工作环境也切换为此用户的环境(包括PATH变量、MAIL变量等),使用-选项可省略用户名,默认会切换为root用户。
-l:同-的使用类似,也就是在切换用户身份的同时,完整切换工作环境,但后面需要添加欲切换的使用者账号。
-p:表示切换为指定用户的身份,但不改变当前的工作环境,即不使用切换用户的配置文件。
-m:和-p一样。
-c 命令:仅切换用户执行一次命令,执行后自动切换回来,该选项后通常会带有要执行的命令。

使用举例

 [root@localhost ~]# su - sam
上一次登录:四 7月 :: CST 2019pts/ 上
[sam@localhost ~]$ su -
密码:
上一次登录:四 7月 :: CST 2019pts/ 上
[root@localhost ~]#

groupadd命令

groupadd命令用来添加用户组。

基本语法

 groupadd [选项] 组名

选项说明

 -g 组ID:指定组ID。
-r:创建系统群组。

使用举例

 [root@localhost ~]# groupadd test
[root@localhost ~]# cat /etc/group
root:x::
bin:x::
...
test:x::
[root@localhost ~]#

gpasswd命令

可以使用gpasswd命令给群组设置一个群组管理员,代替root完成将用户加入或移出群组的操作。

基本语法

 gpasswd [选项] 组名

选项说明

  :选项为空时,表示给群组设置密码,仅root用户可用。
-A user1,...:将群组的控制权交给user1,...等用户管理,也就是说,设置user1,...等用户为群组的管理员,仅root用户可用。
-M user1,...:将user1,...加入到此群组中,仅root用户可用。
-r:移除群组的密码,仅root用户可用。
-R:让群组的密码失效,仅root用户可用。
-a 用户名:将用户加入到群组中。
-d 用户名:将用户从群组中移除。

使用举例

 [root@localhost ~]# gpasswd -M sam test
[root@localhost ~]# cat /etc/group
root:x::
bin:x::
...
test:x::sam
[root@localhost ~]#

groupmod命令

groupmod命令用于修改用户组的相关信息。

基本语法

 groupmod [选项] 组名

选项说明

 -g 组ID:修改组ID。
-n 组名:修改组名。

使用举例

 [root@localhost ~]# groupmod -g  test
[root@localhost ~]# cat /etc/group
root:x::
bin:x::
...
test:x::
[root@localhost ~]#

groupdel命令

groupdel命令用于删除用户组。

基本语法

 groupdel 组名

使用举例

 [root@localhost ~]# groupdel test
[root@localhost ~]# cat /etc/group
root:x::sam
bin:x::
...
[root@localhost ~]#

Linux用户和权限——管理用户和用户组的命令的更多相关文章

  1. 【linux相识相知】用户及权限管理

    linux系统是多用户(Multi-users)和多任务(Multi-tasks)的,这样的目的是为了一台linux主机可以给很多用户提供服务同时运行多种服务,但是我们是怎么区分每个用户呢?作为一个管 ...

  2. linux用户及权限管理

    [文件管理.管道.用户及组管理.用户及权限管理]\用户及组管理 用户与组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这 ...

  3. Linux用户和权限管理看了你就会用啦

    前言 只有光头才能变强 回顾前面: 看完这篇Linux基本的操作就会了 没想到上一篇能在知乎获得千赞呀,Linux也快期末考试了,也有半个月没有写文章了.这篇主要将Linux下的用户和权限知识点再整理 ...

  4. Linux用户和权限——管理文件权限的命令

    Linux用户和权限——管理文件权限的命令 摘要:本文主要学习了Linux中修改文件权限的命令. chown命令 chown命令,主要用于修改文件(或目录)的所有者,除此之外,这个命令也可以修改文件( ...

  5. linux的用户扩充权限管理acl和用户使用系统资源的限制

    用户扩充权限管理 acl 1.扩充权限的方式 文件扩充权限 ACL 磁盘配额 2.文件扩充权限 1.安全位 安全位   ---set位    SUID  SGID   set仅可以加给 u.g, 如: ...

  6. 理解OpenShift(4):用户及权限管理

    理解OpenShift(1):网络之 Router 和 Route 理解OpenShift(2):网络之 DNS(域名服务) 理解OpenShift(3):网络之 SDN 理解OpenShift(4) ...

  7. Jenkins2.32用户和权限管理策略

    前言 在使用jenkins的过程中,需要为不同的角色分配相应的权限,如果jenkins的用户数据能和公司现在的帐号系统结合起来那会更好. 关于如何为用户分组,我推荐使用 role based auth ...

  8. PostgreSQL 用户和权限管理

    PostgreSQL 用户和权限管理 创建 CREATE ROLE rolename;CREATE USER username;CREATE USER和CREATE ROLE的区别在于,CREATE ...

  9. MongoDB系列---用户及权限管理02

    MongoDB-——Privilege 学习大纲: 1.用户权限管理 2.用户操作 知识回顾:  本系列上一篇博文我们讲述了如何搭建环境以及配置我们的MongoDB,通过搭建环境后我们又学习了如何通过 ...

随机推荐

  1. cmdb全总结

    1.什么是cmdb ,做什么的? 配置管理数据库 ,就是存储基础设施的信息配置使用的 简单说就是CMDB这个系统可以自动发现网络上的IT设备 ,并自动存储相关信息 ,像一台服务器有型号 厂商 系统 c ...

  2. 【LeetCode】53.最大子序和

    最大子序和 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4], 输出: 6 解释: ...

  3. 论文学习-混沌系统以及机器学习模型-11-29-wlg

    混沌系统以及机器学习模型 概述: 必要条件下: negative values of the sub-Lyapunov exponents. 通过rc方法, 可以在参数不匹配的情况下,实现输入信号,混 ...

  4. layui js 常用语句语法

    烂笔头: layui组件使用 注意layui的版本. 在head里需要引入css/js文件. 出现 form.verify,form.val is not a function的错误信息时,注意版本, ...

  5. Linux 解决Deepin深度系统无法在root用户启动Google Chrome浏览器的问题

    解决Deepin无法在root用户启动Google Chrome浏览器的问题,步骤如下. 前提:如何用root用户登录系统?编辑 vim /etc/lightdm/lightdm.conf , 找到并 ...

  6. Shell命令-用户用户组管理之visudo、sudo

    文件及内容处理 - visudo.sudo 1. visudo:编辑/etc/sudoers文件的专属命令 visudo命令的功能说明 visudo命令专门用来编辑/etc/sudoers这个文件的. ...

  7. 02-Django项目创建

    第一.Django项目创建 django-admin startproject 项目名 # 注意如果使用虚拟环境,创建应用必须先进入虚拟环境 进入项目目录,tree看项目结构(此时提示tree com ...

  8. web-神盾局的秘密

    题目地址 http://web.jarvisoj.com:32768/ 首页是一张图片 查看源码,看到了一些猫腻,showing.php     c2hpZWxkLmpwZw==是base64编码   ...

  9. Aug.2019_Memory

    转眼间这半个月的时光已经过去了,现在就像妈说的,生活又要回归正常了.尽管我一直不愿意去承认说前半个月的时光是一种不正常的生活,但有一点是我无法否认的,那就是那些人和那些事所带给我的…… 想想最初自己也 ...

  10. win10 + 3ds Max 2014 问题记录

    3ds Max 下载: https://zixue.3d66.com/popsoft_201.html VRay 下载: https://zixue.3d66.com/softhtml/showsof ...