Linux是一个可以实现多用户登录的操作系统,允许多个用户同时登陆到系统上使用资源。系统根据账户来区分每个用户的文件、进程、任务、给每个用户提供特定的工作环境。
一、用户组基本概念
系统并不认识你的用户名,但是他认识你的ID(UID GID)号。
1、UID
管理员:0
普通用户:1-65535
系统用户:1-499(centos6),1-199(centos7)
登录用户:500-6000(centos6),1000-6000(centos7)
名称解析:username(UID)
根据名称解析库: /etc/passwd
2、GID
管理员组:0
普通用户组:1-65535
系统用户组:1-499(centos6),1-999(centos7)
登录用户组:500-6000(centos6),1000-6000(centos7)
名称解析:username(UID)
根据名称解析库: /etc/passwd
组类别:用户基本组 用户附加组
二、用户和组的管理
1、组
groupadd:添加组
用法:groupadd +[选项] +组名
-g GID | 指定GID |
-r | 创建系统组 |
groupmod:修改组
-g GID | 修改组id |
-n name | 修改组名 |
groupdel:删除组
2、用户
useradd:创建用户
-u UID | 指定UID |
-g GID | 指定基本组ID 组要事先存在 |
-G groupname | 指定附加组 |
-c | 指定注释信息 |
-d | 指定家目录 |
-s | 指定shell,可用的shell列表存储在/etc/shells |
-r | 创建系统用户 |
-D | 显示创建用户的默认配置 |
实例:创建一个 tom用户,指定uid为5000,jerry(500),并指明附加组jerry,指定默认shell /bin/sh,再添加注释信息“helloworld”
usermod:修改用户属性
-u UID | 指定UID |
---|---|
-g GID | 指定基本组ID,此组得事先存在 |
-G | 指明附加组 |
-a | 追加新的附加组 |
-c | 添加注释信息 |
-d | 指定家目录,复制/etc/skel并重命名实现 |
-m | 与-d一起使用,把原来的家目录移动为新的家目录 |
-l | 修改用户名 |
-s | 指定默认shell |
-L | 锁定用户 |
-U | 解锁用户 |
实例:修改gentoo用户的家目录为/var/tmp/gentoo;要求其原有文件仍能被用户访问
userdel:删除用户
-r | 和家目录一并删除 |
---|