Linux 是一个多用户多任务的分是操作系统,用户是实现操作系统资源分配,同时也是安全权限模型的核

心要素之一;用户组是一个容纳很多用户的容器,可以分配权限组,进一步优化了权限分配。

一、用户管理

  用户管理主要了解用户相关的系统配置文件以及用户创建、删除等操作。用户分为三种,

系统管理员root(权限最高),系统用户(主要为系统默认运行部分进程而设定的用户),普通用户。

1、用户配置文件/etc/passwd是系统识别用户的一个文件,系统所有的用户都记录在此文件。

/etc/passwd 文件中,每一行代表一个用户的信息,分别有7个字段,使用分隔符 : 分割,每个字段各有含义,如下图所示:

标注:管理员用户root标识号默认是 0 , 系统用户标识号默认 1-499 ,普通用户标识号默认500-65535。

2、用户密码配置文件/etc/shadow是系统标识用户密码相关的一个文件,与用户配置文件/etc/passwd 相对应,

记录着用户密码等相关记录。/etc/shadow文件中,每一行代表一个用户的密码相关信息,分别9个字段,使用分隔符 :分割,每个字段各有含义,如下图所示:

标注:用户加密方式一般采用单向加密方式,以redhat linux  6.5 为例子,用户加密一般采用安全的哈希算法 512bit (SHA515)进行加密。

3、用户操作

useradd    创建用户

标注:用户必须是第一次创建用户,如果已存在的用户则部分命令参数无效

useradd  username                     #创建用户

useradd  -c  "This is test user" username            #创建用户并填写用户注释信息

useradd  -M  username                                       #创建用户但不创建家目录

useradd  -d  /home/hello t username         #创建用户并指定用户家目录

useradd  -g  509 username                  #指定用户组,替换原来的用户组,但用户组事先存在

useradd  –G  509  username           #指定用户组,不替换原来的用户组,但用户要事先存在

useradd  -s  /bin/tcsh  username                 #指定用户默认shell

useradd  -M  username                                       #创建用户,但指定用户没有家目录

passwd   设置用户认证信息,包括用户密码、密码过期时间等

passwd  username                                          #修改用户密码

passwd  -d username                                     #删除密码,仅root用户使用

passwd  -l  username                                     #锁住用户密码,功能类似usermod –L

passwd  -u  username                                    #解开已上锁的用户,功能类似 usermod –U

passwd  -S   username                                   #查看用户密码状态及创建时间,仅root用户使用

userdel   删除用户

userdel  username                                         #只删除用户,不删除其家目录

userdel  -r  username                                     #删除用户和用户家目录

usermod   修改用户基本信息

usermod -c "This is test user"  username         #修改用户注释信息

usermod - d  /home/testfile  username             #修改用户默认家目录

usermod  –f  100  username              #修改用户用户失效宽限期,即密码过期后多少天即关闭账号

usermod  –e  100  username            #修改用户失效期限

usermod  –g  usergroup  username             #修改用户所属的群组,替换原来的用户基本组

usermod  -a  –G  usergroup  username        #修改用户所属的附加群组,不替换原来的用户基本组

usermod  -l  changename  username          #修改用户账号名称

usermod  –L  username                #锁定用户,使其密码无效

usermod  –U  username               #解锁用户

usermod  –u  username                     #修改用户ID

usermod  –s  username                 #修改用户默认shell

二、用户组管理

用户组主要了解用户组相关的系统配置文件以及用户组创建、删除等操作。创建用户默认用户标识号与用户组标识号是一致的,可以通过命令进行修改。

1、用户组系统配置文件 /etc/group 是标识系统用户组的一个文件,记录了用户组相关信息。

/etc/group文件中,每一行代表一个用户组信息,分别4个字段,使用分隔符 :进行分割,每个字段各有含义,如下图所示:

2、用户组密码系统配置文件 /etc/gshadow 是标识系统用户组密码相关的一个文件,与用户组配置文件/etc/group 相对应,

记录了用户组密码相关信息。/etc/gshadow文件中,每一行代表一个用户组密码相关信息,分别4个字段,使用分隔符 :进行分割,每个字段各有含义,如下图所示:

3、用户组操作

groupadd    创建用户组

标注:用户组必须是第一次创建用户组,如果已存在的用户组则部分命令参数无效

groupadd  groupname                     #创建用户组

groupadd  -g  1000   groupname         #创建用户组并指定用户组ID

groupadd  -r   groupname                #自动创建为系统用户组ID小于于500

gpasswd    用户组配置文件/etc/group和/etc/gshadow 管理工具

gpasswd  groupname                          #设置用户组密码

gpasswd  -a  username  groupname          #添加用户组,但不改变用户基本组

gpasswd  -d  username  groupname          #删除用户组,只能删除用户的附加组

gpasswd  -A  username  groupname          #添加组管理员,/etc/gshadow可查询

gpasswd  -r  groupname                       #删除用户组密码

gpasswd  -R  groupname                     #限制用户登录组,只有组中成员才可以使用newgrp加入该组

groupdel    删除用户组

groupdel  groupname                #删除用户组

groupmod   修改用户组ID号或名称

groupmod   -g   700   groupname              #修改用户组ID号为700

groupmod   -n   newname  groupname         #修改用户组名称

Linux 用户与用户组管理的更多相关文章

  1. Linux 用户和用户组管理

    Linux 用户和用户组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统. 用户的账号一方面可以帮助 ...

  2. 八、Linux 用户和用户组管理

    Linux 用户和用户组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统. 用户的账号一方面可以帮助 ...

  3. linux用户和用户组管理详解

    Linux 用户和用户组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统. 用户的账号一方面可以帮助 ...

  4. Linux 用户和用户组管理(useradd userdel groupadd groupdel)

    Linux 用户和用户组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统. Linux系统用户账户的 ...

  5. Linux用户和用户组管理总结

    Linux下和用户和用户组管理有关的配置文件: /etc/group Group account information. /etc/gshadow Secure group account info ...

  6. Linux 笔记 - 第五章 Linux 用户与用户组管理

    博客地址:http://www.moonxy.com Linux 是一个多用户的操作系统,在日常的使用中,从安全角度考虑,应该尽量避免直接使用 root 用户登录,而使用普通用户. 1. 关于用户 u ...

  7. Linux系列教程(十五)——Linux用户和用户组管理之用户管理命令

    上篇博客我们介绍了用户管理的相关配置文件,包括用户信息文件/etc/passwd,用户密码文件/etc/shadow:然后介绍了用户组信息文件/etc/group,用户组密码文件/etc/gshado ...

  8. Linux用户及用户组管理

    Linux是个优秀的多用户多任务操作系统. 掌握Linux的用户/用户组管理是基本及必备技能之一. 简单做下总结. 无论采用图形界面的用户管理设置,还是终端的管理方式,最终目的都是对系统的用户/用户组 ...

  9. Linux系列教程(十四)——Linux用户和用户组管理之相关配置文件

    前面我们介绍了软件包管理.首先介绍了rpm包的相关命令,但是我们发现直接安装rpm包会被其依赖性折磨的不行,然后解决办法是yum在线管理,通过yum命令安装rpm包能自动帮助我们解决依赖性.最后又介绍 ...

  10. Linux用户和用户组管理

    该内容来摘自于鸟叔的Linux私房菜. Linux的每个用户包含两个ID,一个是用户ID,一个是用户组ID.系统会根据/etc/passwd和/etc/group的设定来决定用户的访问权限.下面对用户 ...

随机推荐

  1. DIOCP开源项目-定义自己要发送的数据结构(MyObject)

    印象中网络程序都是sendBuffer和recvBuffer来发送数据和接收数据,本次Demo演示如何定义定义一个自己的对象,然后我们按照OO的思想直接进行对象的发送和接收,先上个流程图. 下面是客户 ...

  2. SpringBoot热部署配置(基于Maven)

    热部署的意思是只要类中的代码被修改了,就能实时生效,而不用重启项目.spring-boot-devtools 是一个为开发者服务的一个模块,其中最重要的功能就是自动应用代码更改到最新的App上面去.原 ...

  3. vjue 点击发送邮件如何处理

    <li @click.stop="openSendMail()"> <i class="icons mail-icon" title=&quo ...

  4. Kafka vs RocketMQ—— Topic数量对单机性能的影响

    引言 上一期我们对比了三类消息产品(Kafka.RabbitMQ.RocketMQ)单纯发送小消息的性能,受到了程序猿们的广泛关注,其中大家对这种单纯的发送场景感到并不过瘾,因为没有任何一个网站的业务 ...

  5. C#学习笔记(10)——再谈委托,不同国家问候的例子

    说明(2017-6-14 09:08:38): 1. 首先是一个简单的委托 (1)命名空间下定义一个委托MyDel: public delegate void MyDel(string name); ...

  6. 安卓Activity生命周期(转)

    http://www.oschina.net/question/54100_27841 启动:onCreate()->onStart()->onResume 当从Activity界面直接按 ...

  7. [转]操作MySQL数据库报出:Parameter index out of range (1 > number of parameters, which is

    原文地址:https://blog.csdn.net/zdx_y/article/details/52072914 对MySQL进行insert操作,控制台抛出以下错误:Parameter index ...

  8. [转]PowerDesigner表结构和字段大小写转换

    原文地址:https://blog.csdn.net/u010216641/article/details/48712503 ##PowerDesigner去除双引号## 平时经常用PowerDesi ...

  9. TextBox只能输入数字

    Asp.net TextBox只能输入数字 <asp:textbox id="TextBox1" onkeyup="if(isNaN(value))execComm ...

  10. StreamingContext.getOrCreate

    /** */ object AppRealTime { def main(args: Array[String]): Unit = { ) { println("please input a ...