【Linux学习笔记】Linux_02_用户权限,文件权限

时间:2022-09-11 15:32:34

Linux_02

A.用户权限

1.查看用户

[root@localhost Desktop]# id student		## 查看student的用户信息
uid=1000(student) gid=1000(student) groups=1000(student),10(wheel)
[root@localhost Desktop]# id -u student ## 查看student的id
1000
[root@localhost Desktop]# id -un student ## 查看student的用户名
student
[root@localhost Desktop]# id -g student ## 查看student的组id
1000
[root@localhost Desktop]# id -G student ## 查看student的附加组id
1000 10
[root@localhost Desktop]# id -gn student ## 查看student的组名
student
[root@localhost Desktop]# id -Gn student ## 查看student的附加组名
student wheel

2.创建删除用户

a.监控用户信息

[root@localhost Desktop]# watch -n 1 'tail -n 3 /etc/passwd /etc/group;echo =============;ls /home'
【Linux学习笔记】Linux_02_用户权限,文件权限

b.增删用户,观察a的变化

1)设置用户id和组

[root@localhost Desktop]# useradd admin			## 创建admin用户,id默认从1000开始
[root@localhost Desktop]# userdel -r admin ## 删除admin用户和组
[root@localhost Desktop]# useradd -u 9527 admin ## 创建id为9527的admin用户
[root@localhost Desktop]# userdel -r admin
[root@localhost Desktop]# groupadd -g 9527 local ## 创建组编号为9527,组名为local
[root@localhost Desktop]# useradd -g 9527 admin ## 创建admin用户为9527组
[root@localhost Desktop]# userdel -r admin
[root@localhost Desktop]# useradd -g 9527 admin -u 9527 ## 创建admin用户编号为9527,组编号为9527
2)设置用户说明和shell

[root@localhost Desktop]# useradd -c "linux user" admin	## 创建admin用户,说明为linux user
[root@localhost Desktop]# userdel -r admin
[root@localhost Desktop]# useradd -d /mnt/admin admin ## 创建admin用户,目录/mnt/admin
[root@localhost Desktop]# userdel -r admin
[root@localhost Desktop]# useradd -s /bin/tcsh admin ## 创建admin用户,shell为/bin/tcsh
3)总结


useradd
-u 指定用户uid
-g 指定用户初始组信息,这个组必须已经存在
  -G 指定用户附加组,这个组必须存在
-c 用户说明
-d
用户家目录
-s 用户所使用的shell,/etc/shells记录了用户能使用的shell

userdel     -r   用户名称                  -r表示删除用户信息以及用户的系统配置

groupadd -g                                    建立组

groupdel   组名字                            删除组

3.更改用户信息

[root@localhost Desktop]# usermod -l local admin	## 更改admin用户名为local
[root@localhost Desktop]# usermod -l admin local ## 改回
[root@localhost Desktop]# usermod -u 9527 admin ## 更改admin编号为9527
[root@localhost Desktop]# usermod -g 9527 admin ## 更改admin初始组为9527
[root@localhost Desktop]# usermod -g 1001 admin
[root@localhost Desktop]# usermod -G 9527 admin ## 更改amdin附加组为9527
[root@localhost Desktop]# usermod -ag 9527 admin ## 添加admin附加组为9527
[root@localhost Desktop]# usermod -G "" admin
[root@localhost Desktop]# usermod -c "Hello" admin ## 更改用户的说明
[root@localhost Desktop]# usermod -c "" amdin
[root@localhost Desktop]# usermod -d /home/lee admin ## 更改用户的家目录
[root@localhost Desktop]# usermod -d /home/admin admin
[root@localhost Desktop]# usermod -d /home/lee admin ## 更改用户的家目录和名称
[root@localhost Desktop]# usermod -s /sbin/nologin admin ## 更改shell
usermod
-l 更改用户名称
-u 更改uid
-g 更改gid
-G 更改附加组
-aG 添加附加组
-c 更改说明
-d 更改家目录
-md 更改家目录及名称
-s 更改shell
-L 冻结帐号
-U 解锁

4.权力下放

a.修改

[root@localhost Desktop]# visudo		## 打开文件编辑
添加如下两行

【Linux学习笔记】Linux_02_用户权限,文件权限

b.测试

[root@localhost Desktop]# visudo		## 打开文件编辑
[root@localhost Desktop]# su admin ## 切换admin用户
[admin@localhost Desktop]# sudo useradd linux ## 创建linux用户
[admin@localhost Desktop]# id linux ## 查看linux用户
uid=1005(linux) gid=1005(linux0) groups=1005(linux)
[admin@localhost Desktop]# sudo userdel -r linux ## 删除

B.文件权限

1.文件属性

【Linux学习笔记】Linux_02_用户权限,文件权限

a.文件类型

- 普通文件
d 目录
c 字符设备
s 套接字
p 管道
b 快设备
l 连接

b.文件读写权限

rw-r--r--

rw-  拥有者的权限

r--   拥有组的权限

r--   其他人的权限

c.文件所有人

root

d.文件所有组

root

e.文件内容大小

0

f.文件最后一次被修改时间

g.文件名字

[root@localhost Desktop]# mkdir -p admin/linux
[root@localhost Desktop]# touch admin/file
[root@localhost Desktop]# ls -l amdin
total 0
-rw-r--r--, 1 root root 0 Jan 2 09:28 file
drwxr-xr-x, 2 root root 6 Jan 2 09:28 linux
[root@localhost Desktop]# ls -ld admin
drwxr-xr-x, 3 root root 29 Jan 2 09:28 admin

2.改变文件信息

a.监控文件信息

[root@localhost Desktop]# watch -n 1 ls -lR admin

【Linux学习笔记】Linux_02_用户权限,文件权限

b.改变

[root@localhost Desktop]# chown admin admin/file	## 改变file的拥有者为amdin
[root@localhost Desktop]# chown admin admin/linux/ ## 改变linux的拥有者为amdin
[root@localhost Desktop]# chown -R amdin admin/linux/ ## 设置路径下所有拥有者为admin
[root@localhost Desktop]# chown -R root admin/linux/
[root@localhost Desktop]# chown root admin/file
[root@localhost Desktop]# chgrp admin admin/file ## 改变file的组为amdin
[root@localhost Desktop]# chgrp admin admin/linux/
[root@localhost Desktop]# chgrp -R admin admin/linux/
[root@localhost Desktop]# chgrp -R root admin/*

3.修改文件权限

a.用户权限

[root@localhost Desktop]# chmod u+x admin/file  ## 给file用户权限添加执行功能x
[root@localhost Desktop]# vim admin/file ## 编辑file内容为date
[root@localhost Desktop]# admin/file ## 执行file
Wed Jan 3 07:04:14 EST 2018
[root@localhost Desktop]# cat admin/file ## 查看file内容
date
[root@localhost Desktop]# chmod u-x admin/file ## 给file用户权限减去执行功能x
[root@localhost Desktop]# admin/file
bash: admin/file: Permission denied ## 执行提示没有权限
b.组权限

[root@localhost Desktop]# chmod g+w admin/file  ## 给file组添加写的权限
[root@localhost Desktop]# chmod g-r admin/file ## 给file组减去读的权限

c.同时修改权限

[root@localhost Desktop]# chmod ug+x admin/file         ## 同时给file的用户和组>添加执行权限
[root@localhost Desktop]# chomd u-w,g+r,o-r admin/file ## 给file用户减去写的权>限,组加上读的权限,其他人减去读的权限
[root@localhost Desktop]# chmod u=rw,go=r admin/file ## 修改file用户权限为读>写,组和其他*限为读

d.练习

【Linux学习笔记】Linux_02_用户权限,文件权限

[root@localhost Desktop]# groupadd shengchan
[root@localhost Desktop]# groupadd caiwu
[root@localhost Desktop]# groupadd jishu
[root@localhost Desktop]# useradd -G 1003 tom
[root@localhost Desktop]# useradd -G 1004 harry
[root@localhost Desktop]# useradd -G 1005 leo
[root@localhost Desktop]# useradd admin
[root@localhost Desktop]# mkdir /pub
[root@localhost Desktop]# chmod 777 /pub
[root@localhost Desktop]# mkdir /sc
[root@localhost Desktop]# chgrp shengchan /sc
[root@localhost Desktop]# chmod 750 /sc
[root@localhost Desktop]# mkdir /cw
[root@localhost Desktop]# chgrp caiwu /cw
[root@localhost Desktop]# chmod 750 /cw

e.权限的表示

r-->4   w-->2   x-->1

7=rwx

6=rw-

5=r-x

4=r--

3=-wx

2=-w-

1=--x

0=---

f.永久设定文件的权限

[root@localhost Desktop]# vim /etc/bashrc	## 按图示编辑文件
[root@localhost Desktop]# vim /etc/profile ## 按图示编辑文件
[root@localhost Desktop]# source /etc/bashrc ## 重新运行
[root@localhost Desktop]# source /etc/profile
【Linux学习笔记】Linux_02_用户权限,文件权限
按图示修改else中的umask值,修改后所创建的文件权限为777-umask

4.用户的文件访问权限

a.建立一个文件,查看属性

[root@localhost Desktop]# mkdir admin		
[root@localhost Desktop]# ls -ld admin/
drwxr-xr-x. 2 root root 6 Jan 3 07:56 admin/
[root@localhost Desktop]# getfacl admin/ ## 查看文件的信息
# file: admin/
# owner: root ## 拥有者
# group: root ## 组
user::rwx ## 拥有者权限
group::r-x ## 组权限
other::r-x ## 其他*限

b.给用户设置文件的权限

[root@localhost Desktop]# setfacl -m u:admin:rx  admin/	## 设置用户admin对目录admin的权限为读写
[root@localhost Desktop]# getfacl admin/
# file: admin/
# owner: root
# group: root
user::rwx
user:admin:r-x
group::r-x
mask::r-x
other::r-x