一、用户和组账号概述
Linux基于用户身份对资源访问进行控制
用户帐号
超级用户
普通用户
程序用户
组帐号
基本组(私有组)
附加组(公共组)
UID和GID
UID(User IDentity,用户标识号)
GID(Group IDentify,组标识号)
/etc/passwd
保存用户名称、宿主目录、登录Shell等基本信息
文件位置:/etc/passwd
每一行对应一个用户的帐号记录
/etc/shadow
获得有密码的用户
grep '\$6\$' /etc/shadow
useradd命令
useradd [选项]... 用户名
常用命令选项
-u、 -d、
用户ID 指定用户主目录
useradd -d /tmp/userdir/a04 a04
-e、
-g、 -G、
组配置文件cat /etc/group
-g 新建用户时属于主要组
-G 新建用户指定多个附加组
useradd a09 -G iamyou,tcpdump,upload
useradd -g iamyou a06
-M不创建用户主目录(大写)
-s指定用户所使用的SHELL
[root@localhost ~]# useradd -d /ftphome/mike -g mike -G ftpuser -s /sbin/nologin mike
passwd命令
passwd [选项]... 用户名
常用命令选项
-d指定空密码
-l锁定用户
-S查询用户信息(大写)
-u解除锁定
不指定用户名时,修改当前账号的密码
usermod命令
修改用户属性
usermod [选项]... 用户名
常用命令选项
-l更换用户名
usermod -l a100 a10
-L、-U锁定与解除(大写)
以下选项与useradd命令中的含义相同
-u(改用户ID)、-d(改用户目录)、-e(改用户过期时间)、-g(改用户主要组)、-G(改用户附加组)、-s(改用户shell)
userdel命令
userdel [-r] 用户名
添加 -r 选项时,表示连用户的宿主目录一并删除
[root@localhost ~]# useradd stu01
[root@localhost ~]# ls -ld /home/stu01/
drwx------ 2 stu01 stu01 4096 09-09 12:38 /home/stu01/
[root@localhost ~]# userdel -r stu01
[root@localhost ~]# ls -ld /home/stu01/
ls: /home/stu01/: 没有那个文件或目录
作业:
1、新建目录/tmp/userdir,新建三个用户:分别指定主目录/tmp/userdir,用户ID,用户shell。
2、思考一下能否在添加的时候同时设置密码,如何实现。
———————第二天————————
文件来源
新建用户帐号时,从 /etc/skel 目录中复制而来
主要的用户初始配置文件
~/.bash_profile
~/.bashrc
~/.bash_logout
组帐号操作
与用户帐号文件相类似
/etc/group:保存组帐号基本信息
/etc/gshadow:保存组帐号的密码信息
[root@localhost ~]# grep "adm" /etc/group
sys:x:3:root,bin,adm
adm:x:4:root,adm,daemon
groupadd命令
groupadd [-g GID] 组账号名
[root@localhost ~]# groupadd -g 1000 market
[root@localhost ~]# tail -1 /etc/group
market:x:1000:
gpasswd命令
设置组帐号密码(极少用)、添加/删除组成员
gpasswd [选项]... 组帐号名
usermod -G caiwubu c02
gpasswd -a b001 caiwubu
以上两个命令都可以实现将用户加到组中。
常用命令选项
-a:向组内添加一个用户
-d:从组内删除一个用户成员
-M:定义组成员列表,以逗号分隔
groupdel命令
groupdel 组帐号名
[root@localhost ~]# groupdel market
[root@localhost ~]# grep "market" /etc/group
查询账号信息
id命令
查询用户身份标识
id [用户名]
groups命令
查询用户所属的组
groups [用户名]
finger命令
查询用户帐号的详细信息
finger [用户名]
users、w 、who命令
查询已登录到主机的用户信息
访问权限
读取 r:允许查看文件内容、显示目录列表
写入 w:允许修改文件内容,允许在目录中新建、移动、删除文件或子目录
可执行 x:允许运行程序、切换目录
归属(所有权)
属主:拥有该文件或目录的用户帐号
属组:拥有该文件或目录的组帐号
查看文件/目录的权限和归属
权限操作:
有2种方法:字母表示权限法和数字表示权限法。
常用命令选项
-R:递归修改指定目录下所有子项的权限
设置文件和目录属主
chown命令
chown 属主 文件或目录
chown c01 abc.txt
chown :属组 文件或目录
chown :caiwubu abc.txt
chown 属主:属组 文件或目录
chown cai2:caiwubu bbb.txt
常用命令选项
-R(大写):递归修改指定目录下所有文件、子目录的归属
chattr权限扩展
作业:
1.执行“useradd -d /admin -e 2020-12-31 -g wheel -G root admin”命令的作用是什么?
2.在shadow文件中teacher用户对应的密码字符串前有“!!”的标志表示什么含义?
3.执行“chmod 764 test”命令的作用是什么?
4.执行“chown -R :ftp /var/ftp/pub”命令的作用是什么?