搞它!!!linux账号和权限管理

时间:2022-07-24
本文章向大家介绍搞它!!!linux账号和权限管理,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

前言: Linux登陆需要用户名、密码。/etc/passwd 文件保存用户名。登录Linux时,Linux 先查找 /etc/passwd 文件中是否有这个用户名,没有则跳出,有则读取用户名的user ID 、 group ID 、用户名对应的根目录路径以及所使用的 shell ,最后在 /etc/shadow 中核对该 UID 对应的 PWD 是否正确,正确则登录到该用户的 shell。

一、用户账号和组账号概述

1.linux基于用户身份对资源访问进行控制

用户账号

超级用户(root,不可被替代) 普通用户(自己创建,取用户名) 程序用户(人无法登录,是给程序使用的,以使程序可以正常运转) 匿名用户(windows的guest,linux的nobody,普通用户中的最低权限用户) 组账号(用户权限的集合)

基本组(私有组,伴随着用户的创建而创建,与用户同名) 附加组(公有组,直接创建一个空组,可以添加已有用户,给组设置相关权限,该组中的所有用户都具备此权限) UID和GID(标签,标识号)

UID(User IDentity,用户标识号)

GID(group IDentify,组标识号)

二、用户账号和组账号管理

1、用户账号文件/etc/passwd

保存用户名称、宿主目录、登录Shell等基本信息

文件位置:/tec/passwd 每一行对应一个用户的账号记录

账号记录用冒号分隔

用户账号:用户名

密码占位符:代表有密码,不会起到密码的个数和内容的属性

用户账号 ID :UID

uid序号:

序号

用户

0

root

1-999

程序用户

1000-60000

普通用户

99

nobody用户

组账号ID:GID,GID基本上指私有组,名称与UID基本上是一致

用户说明:描述性信息

宿主目录:家目录

登录shell:是否可以登录系统,/bin/bash /sbin/bash 是可以 /sbin/nologin 无法人为登录

2、用户密码文件/etc/shadow

影子文件,shadow,密码记录对应格式解释,用冒号分开

用户名:密码被加密:从1970.1.1日诞生日起过了14374天:0代表密码最短使用期限,代表随时可以修改密码:99999代表最长密码使用期限:7代表会提前7天提醒你修改密码:还有失效时间,过了99999天之后,多少天后账号会失效

bin:*,!,!!代表无法登陆

3、添加用户账号useradd

useradd命令用来创建新的用户或更改用户的信息。
-u 指定UID

-d 指定家目录

-e 指定失效时间,可以使用年-月-日格式

-g 指定基本组(若指定基本组,则必须先存在基本组)

-G 指定附加组 (组必须要已存在)

-M 指定不创建家目录

-s 指定是否允许从shell 登录

3、 设置/更改用户口令passwd

passwd命令用于设置用户的认证信息,包括用户密码、账户锁定、密码失效等。直接运行passwd命令修改当前的用户密码,对其他用户的密码操作需要管理员权限。

-d 清除密码

-l 指锁定账号密码

-u 指解锁账号密码

-S 查看用户当前状态是否被锁定

vim /etc/passwd vim编辑查看passwd

[root@localhost ~]# vim /etc/passwd     #进入passwd查看用户信息,也可以用tail查看
[root@localhost ~]# useradd -d /opt/lisi -s /sbin/nologin lisi	
#创建lisi用户,根目录在/opt/lisi,-s /sbin/nologin 不可以登录
[root@localhost ~]# tail -2 /etc/passwd    # 查看/etc/passwd账号文件的后两行
gsy:x:1000:1000:gsy:/home/gsy:/bin/bash          
lisi:x:1001:1001::/opt/lisi:/sbin/nologin     #刚才新创建的用户
[root@localhost ~]# passwd lisi    # 设置李四密码
更改用户 lisi 的密码 。    # linux密码设置时看不到
新的 密码:
无效的密码: 密码是一个回文
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@localhost ~]# su - lisi    # 加载lisi
This account is currently not available.    # 这个账户目前不可用

用vim在passwd中修改参数,将lisi行末尾的nologin改为bash,lisi就可以登录

lisi:x:1001:1001::/opt/lisi:/sbin/nologin    #之前李四账号信息末尾为nologin
lisi:x:1001:1001::/opt/lisi:/bin/bash     
#修改为/bin/bash,然后保存(lisi不是管理员,不可以用sbin)

:wq!保存vim编辑

[root@localhost ~]# vim /etc/passwd     
[root@localhost ~]# su - lisi     #加载lisi
上一次登录:五 11月  1 11:32:10 CST 2019pts/0 上     #登陆成功

试一试passwd -l 命令

[root@localhost ~]# passwd -S lisi   #查看lisi账号密码状态 passwd -S 
lisi PS 2019-11-01 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)     #显示账号密码状态
[root@localhost ~]# passwd  -l lisi     #锁定lisi密码     passwd -l
锁定用户 lisi 的密码 。     #系统反馈密码已锁定
passwd: 操作成功
[root@localhost ~]# passwd -S lisi    # 再次查看lisi账号密码状态
lisi LK 2019-11-01 0 99999 7 -1 (密码已被锁定。)     #密码已被锁定	
[root@localhost ~]# su - lisi     #加载lisi账号
上一次登录:五 11月  1 11:36:07 CST 2019pts/0 上
su: failed to execute /sbin/bash: 没有那个文件或目录 
#这里把passwd中的lisi末尾信息改为/bin/bash即可
[root@localhost ~]# vim /etc/passwd     
[root@localhost ~]# su - lisi     #再次加载lisi
上一次登录:五 11月  1 11:42:55 CST 2019pts/0 上   
#从最高权限root登录次级用户不需要密码,登录成功
[lisi@localhost ~]$ pwd    #查看当前~的绝对路径
/opt/lisi     #~也就是用户的根目录
[lisi@localhost ~]$ exit    # 注销退出
登出
[root@localhost ~]# su - gsy     #加载gsy用户
上一次登录:三 10月 23 13:44:51 CST 2019:0 上
[gsy@localhost ~]$ su - lisi    # 同级别用户去加载lisi
密码:     输入密码
su: 鉴定故障     无法登陆

小结:

passwd -l 锁定用户密码,导致的结果是本地图形界面登录端不能登陆,但字符界面可以登录,(仅限于高权限用户切换到李四用户)

/sbin/nologin 用户无法直接登陆和被切换登录

system用户权限最大,但是无法人为登录

passwd 后面不指定用户名,就是修改当前密码,即默认用户名为当前用户

4、修改(配置)用户账号的属性usermod

usermod命令用于修改用户账号 。usermod可用来修改用户账号的各项设定,修改系统账号文件来反映通过命令行指定的变化。

-u:修改用户的UID号

-d:修改用户的家目录

-e:修改用户的账户失效时间

-s:指定用户的登录shell

-l 更改用户账号的登录名称

-L 锁定用户账户

-U 解锁用户账户
[gsy@localhost ~]$ exit   把之前的gsy用户登出,回到root		#exit
登出
[root@localhost ~]# passwd -S lisi    查看lisi当前密码状态		#passwd -S 
lisi LK 2019-11-01 0 99999 7 -1 (密码已被锁定。) 	
#系统反馈密码已被锁定,之前是用passwd -l去锁定
[root@localhost ~]# usermod -U lisi		#使用usermod -U命令去解锁lisi密码
[root@localhost ~]# passwd -S lisi		#查看lisi当前密码状态
lisi PS 2019-11-01 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)		
#此时反馈密码是可以正常使用的
[root@localhost ~]# usermod -L lisi		#用usermod -L 去锁定lisi密码
[root@localhost ~]# passwd -S lisi		#此时再用passwd -S 去查看lisi状态
lisi LK 2019-11-01 0 99999 7 -1 (密码已被锁定。)		#系统反馈lisi密码已被锁定
[root@localhost ~]# passwd -u lisi  		#用passwd -u 命令去解锁lisi的密码
解锁用户 lisi 的密码。   		#反馈成功解锁
passwd: 操作成功

小结:usermod的密码锁定解锁权限和passwd的密码锁定解锁权限一样高,可以相互使用

6、删除用户账号userdel

userdel命令用于删除指定的用户及与该用户相关的文件,英文全称即“user delete”。其实userdel命令实际上是修改了系统的用户账号文件 /etc/passwd、/etc/shadow以及/etc/group文件。这与Linux系统”一切操作皆文件”的思想正好吻合。

值得注意的是,但是如果有该要删除用户相关的进程正在运行,userdel命令通常不会删除一个用户账号。如果确实必须要删除,可以先终止用户进程,然后再执行userdel命令进行删除。但是userdel命令也提供了一个面对该种情况的参数,即”-f”选项。

ls -l 详细信息 ls -d本目录路径

root@localhost ~]# useradd wangwu		#创建wangwu用户	useradd 
[root@localhost ~]# passwd wangwu 		#创建wangwu密码	passwd
更改用户 wangwu 的密码 。
新的 密码:
无效的密码: 密码是一个回文		#强制执行,回车键
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@localhost ~]# ls /home		
#查看/home目录下   创建用户时没有指定根目录,就会自动设置到/home下
gsy  wangwu 		#显示/home 中有两个目录,即两个普通用户的根目录
[root@localhost ~]# id wangwu		#查看wangwu的id,即UID和GID
uid=1002(wangwu) gid=1002(wangwu) 组=1002(wangwu)
[root@localhost ~]# id lisi			#查看lisi的UID和GID
uid=1001(lisi) gid=1001(lisi) 组=1001(lisi)
[root@localhost ~]# useradd wangwu		
useradd:用户“wangwu”已存在
[root@localhost ~]# userdel wangwu			#删除wangwu用户	userdel 
[root@localhost ~]# ls /home			#查看被删除wangwu的根目录
gsy  wangwu			#	依旧存在
[root@localhost ~]# userdel -r gsy		#用附加选项-r
[root@localhost ~]# ls /home
wangwu				#被删除的gsy的根目录已被删除
[root@localhost ~]# 

7、用户账号的初始配置文件

文件来源 新建账户时,从/etc/skel/目录复制而来你 主要的用户初始配置文件以隐藏文件存在

~/.bash_profile 指定环境变量,在每次登陆shell时,就会加载其中的参数

~/.bashrc 在用户登录时就会被加载

~/.bash_logout 指注销时会起作用

[root@localhost ~]# id wangwu		#这是wangwu用户已被删除,id查看其信息
id: wangwu: no such user		#显示没有这个用户
[root@localhost ~]# ls -a /home/wangwu	#但是他的根目录还在,ls -a 查看/home/wangwu
.  ..  .bash_logout  .bash_profile  .bashrc  .mozilla		#显示隐藏文件
#没啥用了,可以直接rm -rf 删掉wangwu目录

8 、组账号文件

与/etc/passwd类似
/etc/group:保存组帐号基本信息
/etc/group:保存组帐号基本信息
[root@localhost ~]# groupadd -g 1000 market
[root@localhost ~]# tail -1 /etc/group
market:x:1000:

-g 指定组GID 人可用的组也是从1000开始排序

9、 添加删除组成员gpasswd

-M 多用户添加

–stdin 标准性输入,免交互

[root@localhost ~]# tail -5 /etc/passwd		#查看/etc/passwd末尾五行
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
lisi:x:1001:1001::/opt/lisi:/bin/bash			#现在和只有一个普通用户lisi
[root@localhost ~]# useradd zhangsan		#另外创建zhangsan用户
[root@localhost ~]# tail -5 /etc/passwd		#查看/etc/passwd是否更新
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
lisi:x:1001:1001::/opt/lisi:/bin/bash		#lisi账号信息
zhangsan:x:1002:1002::/home/zhangsan:/bin/bash		#zhangsan账号信息
[root@localhost ~]# echo "111111" |passwd --stdin zhangsan		#免交互设置张三账号
密码为111111
更改用户 zhangsan 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@localhost ~]# useradd wangwu		#再创建一个wangwu账号
正在创建信箱文件: 文件已存在
[root@localhost ~]# tail -5 /etc/passwd		#查看/etc/passwd是否更新
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
lisi:x:1001:1001::/opt/lisi:/bin/bash			#lisi账号信息
zhangsan:x:1002:1002::/home/zhangsan:/bin/bash		#zhangsan账号信息
wangwu:x:1003:1003::/home/wangwu:/bin/bash			#zhangwu账号信息
[root@localhost ~]# groupadd caiwu			#创建组,名字叫caiwu	groupadd
[root@localhost ~]# tail -5 /etc/group		#查看/etc/group 组文件
tcpdump:x:72:	
lisi:x:1001:			#lisi的基本组
zhangsan:x:1002:		#zhangsan的基本组
wangwu:x:1003:		#wangwu的基本组
caiwu:x:1004:			#新建的公有组
[root@localhost ~]# gpasswd -a zhangsan caiwu	#把一个zhangsan用户添加到caiwu组中
正在将用户“zhangsan”加入到“caiwu”组中
[root@localhost ~]# id zhangsan		#id 查看zhangsanUID,GID信息
uid=1002(zhangsan) gid=1002(zhangsan) 组=1002(zhangsan),1004(caiwu)		
#这里显示组内多了一个1004(caiwu)
[root@localhost ~]# tail -5 /etc/group	#相应的,也去查看一下/etc/group组文件的状态
tcpdump:x:72:
lisi:x:1001:
zhangsan:x:1002:
wangwu:x:1003:
caiwu:x:1004:zhangsan		#后面多了一个用户,就是刚才添加的zhangsan
[root@localhost ~]# gpasswd -M lisi,wangwu caiwu		#用gpasswd -M 命令添加多个
用户(用户之间用,隔开)到caiwu组中
[root@localhost ~]# id lisi		#查看lisi的id信息
uid=1001(lisi) gid=1001(lisi) 组=1001(lisi),1004(caiwu)		#多了一个caiwu组
[root@localhost ~]# id wangwu		#查看wangwuid信息
uid=1003(wangwu) gid=1003(wangwu) 组=1003(wangwu),1004(caiwu)		#多了一个caiwu组
[root@localhost ~]# id zhangsan	#此时去查看zhangsan,zhangsan之前就已经被添加到caiwu组中
uid=1002(zhangsan) gid=1002(zhangsan) 组=1002(zhangsan)			#发现消失了
[root@localhost ~]# tail -5 /etc/group		#此时查看/etc/group组文件信息,后五行
tcpdump:x:72:
lisi:x:1001:
zhangsan:x:1002:
wangwu:x:1003:
caiwu:x:1004:lisi,wangwu	
#caiwu组后面的成员变成用M命令添加的lisi和wangwu,之前添加的lisi不见了
[root@localhost ~]# gpasswd -M lisi caiwu		#用gpasswd -M去添加lisi到caiwu组
[root@localhost ~]# tail -5 /etc/group		#查看/etc/group组文件信息
tcpdump:x:72:
lisi:x:1001:
zhangsan:x:1002:
wangwu:x:1003:
caiwu:x:1004:lisi		#此时之前的zhangsan,wangwu不见,只有最新添加的lisi
[root@localhost ~]# gpasswd -a wangwu caiwu		
#用gpasswd -a 一个一个添加用户到caiwu组,此时添加wangwu
正在将用户“wangwu”加入到“caiwu”组中
[root@localhost ~]# gpasswd -a zhangsan caiwu  #用gpasswd -a 添加zhangsan到caiwu组
正在将用户“zhangsan”加入到“caiwu”组中
[root@localhost ~]# tail -5 /etc/group		#查看/etc/group组文件信息
tcpdump:x:72:
lisi:x:1001:
zhangsan:x:1002:
wangwu:x:1003:
caiwu:x:1004:lisi,wangwu,zhangsan		#没有把之前的lisi覆盖掉
[root@localhost ~]# gpasswd -d lisi caiwu	#gpasswd -d 把lisi用户从caiwu组中三处
正在将用户“lisi”从“caiwu”组中删除
[root@localhost ~]# tail -5 /etc/group			#查看组文件信息是否更新
tcpdump:x:72:
lisi:x:1001:
zhangsan:x:1002:
wangwu:x:1003:
caiwu:x:1004:wangwu,zhangsan		#lisi已经被删除掉

小结:

如果用M添加成员,就会对这个组进行覆盖,把之前所在用户全部覆盖 -a 不会覆盖,相当于追加含义 删除用户只能一个一个删

10、删除组账号groupdel

groupdel命令
groupdel组帐号名
■示例
[root@localhost ~ ]# groupdel market
[root@localhost ~]# grep " market" /etc/group

三、查询账号信息

1、groups命令

查询用户所属的组

groups 【用户名】

2、id命令

查询用户身份标识

id 【用户名】

3、finger

查询用户账户的详细信息

finger 【用户名】

4、w、who、users命令

查询已登录到主机的用户信息

w who users

5、lastb

查询历史用户登录记录

lastb

[root@localhost dev]# who	#查询已登录主机的历史用户登录时间
root     pts/0        2019-11-01 19:24 (192.168.139.1)
root     :0           2019-11-01 22:03 (:0)
root     pts/1        2019-11-01 22:04 (192.168.139.1)
[root@localhost dev]# w	#查询用户登录信息
 00:08:51 up  3:05,  3 users,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.139.1    19:24    3:49m  0.08s  0.08s -bash
root     :0       :0               22:03   ?xdm?  46.63s  0.09s /usr/libexec/gnome-sess
root     pts/1    192.168.139.1    22:04    3.00s  0.33s  0.02s w
[root@localhost dev]# users	#查询登录用户
root root root
[root@localhost dev]# lastb	#查询尝试登陆用户信息
gsy      :0           :0               Fri Nov  1 22:03 - 22:03  (00:00)    
gsy      :0           :0               Fri Nov  1 22:03 - 22:03  (00:00)    

btmp begins Fri Nov  1 22:03:10 2019

四、查看目录或文件的属性

1、文件/目录的权限和归属

文件类型文件下,自己也包含一个子文件,大小,日期,类型

-rw-r--r--.	   1     root	 root		513		11月		5	2016  updatedb.conf

1.- 文件类型(数据文件),除了-还有d 目录,l链接文件,c负责输入输出的设备(字符)文件,b负责存储的块设备文件 2.rw- r-- r-- 三个一组,分别代表各个权限 rw- 属主权限,可读可写,r代表读,w代表写,后面的x代表执行,没有相应的权限就在相应的位置用-代替 r-- 属组权限,代表可读,不可写,不可执行 r-- 其他用户(other)权限,代表只读,即可读,不可写,不可执行 第一个root代表属主 第二个root代表属组 513代表容量大小,默认单位为字节 11月 5 2016 代表创建时间 即: 首字符表示文件类型(-数据文件)d 目录 l链接文件 c 字符设备文件(控制输入输出) b块设备文件(控制存储)

权限,三个一组,分为三块,分别是属主,属组,所有人

头一块代表属主权限 最多的是rwx

第二块是属组权限 rw- 能读能写不能执行 r-x 能都能写不能执行

第三块r-- 所有人权限, other 其他 r-- 只读权限

1 子文件,自己

root 属主

root 属组

513 大小 单位:字节

11yue 5 2016 创建时间

这一条目整体叫做元信息

五、查看目录或文件的权限

数据文件最高权限666

目录最高权限777

默认创建755或者644或者700.600.

1 设置文件和目录的权限chmod

六、查看目录或文件的归属

1、 设置文件和目录的归属chown

■chown命令 chown属主文件或目录 chown :属组文件或目录 chown属主:属组文件或目录 ■常用选项 ●-R:递归修改指定目录下所有文件、子目录的归属

[root@localhost dev]# cd /opt	'切换到/opt'
[root@localhost opt]# ls
rh
[root@localhost opt]# touch demo01.txt	'创建一个空白文件demo01.txt'
[root@localhost opt]# ls -l
总用量 0
-rw-r--r--. 1 root root 0 11月  2 00:13 demo01.txt	'权限是644'
drwxr-xr-x. 2 root root 6 3月  26 2015 rh	'权限是755'
[root@localhost opt]# mkdir test	'创建一个test目录'
[root@localhost opt]# ls -l
总用量 0
-rw-r--r--. 1 root root 0 11月  2 00:13 demo01.txt
drwxr-xr-x. 2 root root 6 3月  26 2015 rh
drwxr-xr-x. 2 root root 6 11月  2 00:14 test	'权限是755'
[root@localhost opt]# vim demo01.txt	'vim新建并编辑demo01内容为this is test'
[root@localhost opt]# cat demo01.txt 	'查看'
this is test:
[root@localhost opt]# ls -l		'详细显示'
总用量 8
-rw-r--r--.  1 root root    14 11月  5 19:48 demo01.txt		'权限为644'
drwxr-xr-x. 12  501 games 4096 11月  5 13:27 httpd-2.4.2
drwxr-xr-x.  2 root root     6 3月  26 2015 rh
[root@localhost opt]# chmod 600 demo01.txt 		'把demo01.txt权限设为600'
[root@localhost opt]# ls -l		'查看详细信息'
总用量 8
-rw-------.  1 root root    14 11月  5 19:48 demo01.txt		'已修改'
drwxr-xr-x. 12  501 games 4096 11月  5 13:27 httpd-2.4.2
drwxr-xr-x.  2 root root     6 3月  26 2015 rh
[root@localhost opt]# su gsy		'切换到gsy普通用户'
[gsy@localhost opt]$ id gsy		'查看gsy所属组'
uid=1000(gsy) gid=1000(gsy) 组=1000(gsy)
[gsy@localhost opt]$ cat demo01.txt 	'以gsy身份去查看demo01.txt'
cat: demo01.txt: 权限不够	'显示权限不够'
[gsy@localhost opt]$ mkdir test		'以gsy身份创建目录'
mkdir: 无法创建目录"test": 权限不够	'权限不够'
[gsy@localhost opt]$ su root		'切换为超管root'
密码:
[root@localhost opt]# mkdir test		'创建test目录'
[root@localhost opt]# ls
demo01.txt  httpd-2.4.2  rh  test
[root@localhost opt]# mv demo01.txt  test		'把demo01.txt移动到test'
[root@localhost opt]# ls
httpd-2.4.2  rh  test
[root@localhost opt]# ls -l test
总用量 4
-rw-------. 1 root root 14 11月  5 19:48 demo01.txt		'权限为600'
[root@localhost opt]# ls -l
总用量 4
drwxr-xr-x. 12  501 games 4096 11月  5 13:27 httpd-2.4.2
drwxr-xr-x.  2 root root     6 3月  26 2015 rh
drwxr-xr-x.  2 root root    24 11月  5 19:56 test	'test权限为755'
[root@localhost opt]# chmod 744 test/	'将test目录权限设为744'
[root@localhost opt]# ls -l
总用量 4
drwxr-xr-x. 12  501 games 4096 11月  5 13:27 httpd-2.4.2
drwxr-xr-x.  2 root root     6 3月  26 2015 rh
drwxr--r--.  2 root root    24 11月  5 19:56 test	'修改成功'
[root@localhost opt]# su gsy	'切换到gsy普通用户'
[gsy@localhost opt]$ cd /opt/test/	'切换到/opt/test目录'
bash: cd: /opt/test/: 权限不够		'反馈权限不够'
[gsy@localhost opt]$ ls -l /opt/test/	'查看/opt/test/下信息'
ls: 无法访问/opt/test/demo01.txt: 权限不够
总用量 0
-????????? ? ? ? ?            ? demo01.txt	'虽然权限不够,但是还是可以看到名字'
[gsy@localhost opt]$ cat /opt/test/demo01.txt 	'可以tab补全'
cat: /opt/test/demo01.txt: 权限不够	'看不到deomo01.txt内容'
[gsy@localhost opt]$ su root	'切换到root'
密码:
[root@localhost opt]# touch /opt/test/demo02.txt	'重新创建一个测试文件demo02.txt'
[root@localhost opt]# ls /opt/test/
demo01.txt  demo02.txt
[root@localhost opt]# su gsy	'切换到gsy普通用户'
[gsy@localhost opt]$ ls /opt/test/
ls: 无法访问/opt/test/demo01.txt: 权限不够
ls: 无法访问/opt/test/demo02.txt: 权限不够	'权限依旧不够,但是仍然可以查看到文件名'
demo01.txt  demo02.txt
[gsy@localhost opt]$ su root	'切换到root'
密码:
[root@localhost opt]# chown gsy test	'将test目录的主属改为gsy'
[root@localhost opt]# ls -l
总用量 4
drwxr-xr-x. 12  501 games 4096 11月  5 13:27 httpd-2.4.2
drwxr-xr-x.  2 root root     6 3月  26 2015 rh
drwxr--r--.  2 gsy  root    42 11月  5 20:02 test	'已修改'
[root@localhost opt]# chown :gsy test	'将组属也改为gsy'
[root@localhost opt]# ls
httpd-2.4.2  rh  test
[root@localhost opt]# ls -l
总用量 4
drwxr-xr-x. 12  501 games 4096 11月  5 13:27 httpd-2.4.2
drwxr-xr-x.  2 root root     6 3月  26 2015 rh
drwxr--r--.  2 gsy  gsy     42 11月  5 20:02 test	'奏效'
[root@localhost test]# ls
demo01.txt  demo02.txt
[root@localhost test]# chown gsy dem*	'给测试文件demo也修改主组属'
[root@localhost test]# ls
demo01.txt  demo02.txt
[root@localhost test]# ls -l
总用量 4
-rw-------. 1 gsy root 14 11月  5 19:48 demo01.txt
-rw-r--r--. 1 gsy root  0 11月  5 20:02 demo02.txt
[root@localhost test]# chown :gsy dem*
[root@localhost test]# ls -l
总用量 4
-rw-------. 1 gsy gsy 14 11月  5 19:48 demo01.txt
-rw-r--r--. 1 gsy gsy  0 11月  5 20:02 demo02.txt	'修改完毕'
[root@localhost test]# cd .
[root@localhost test]# ls -l
总用量 4
-rw-------. 1 gsy gsy 14 11月  5 19:48 demo01.txt
-rw-r--r--. 1 gsy gsy  0 11月  5 20:02 demo02.txt	'验证'
[root@localhost test]# cd ..
[root@localhost opt]# ls -l
总用量 4
drwxr-xr-x. 12  501 games 4096 11月  5 13:27 httpd-2.4.2
drwxr-xr-x.  2 root root     6 3月  26 2015 rh
drwxr--r--.  2 gsy  gsy     42 11月  5 20:02 test	'验证'
[root@localhost opt]# su gsy	'切换到gsy'
[gsy@localhost opt]$ cat /opt/test/demo01.txt
this is test:	'可以查看内容'

改属主属组用.分隔也可以

2 、权限掩码umask

■umask作用 ●控制新建的文件或者目录的权限 ●默认权限去除umask的权限就为新建的文件或者目录的权限 ■umask设置: umask 022 ■umask查看: umask

●-R:递归修改指定目录下所有文件、子目录的归属

重点理解

■用户账号管理(useradd. passwd. usermod. userdel) ■组账号管理(groupadd、 gpasswd、groupdel) ■组账号管理(groupadd、 gpasswd、groupdel) ■查询账号相关信息的命令(groups、 id、 finger. w) ■设置目录与文件权限(chmod) ■设置目录与文件归属(chown)