在Linux中每个用户必须属于一个组,不能独立于组外。在Linux中每个文件有所有者、所在组、其他组的概念
user属于group群组。user创建文件,user即文件的所有者,group即为文件所在组,其他所有用户other属于其他组。

1.目录/文件 所有者
一般谁创建了文件,谁就是文件的所有者
1.1 查看文件的所有者
指令:ls -ahl
应用实例:

1.2 修改文件的所有者
指令:
chown 用户名 文件名(目录) 改变文件的所有者
chown 用户名:群组 文件(目录) 改变文件的所有者和所在组
注:-R chown如果是改变目录,则使其其下所有子文件或目录递归生效
应用实例:
eg1:使用root创建一个文件apple.txt,然后将所有者修改成Tom

eg2:将/home/jack目录下的所有文件和目录的所有者都修改成Tom


2.文件/目录 所在组
当一个用户创建一个文件后,用户所在的组就是该文件的所在组
2.1查看文件/目录所在组

2.2 修改文件所在组
基本指令:
chgrp 组名 文件名
应用实例
eg1:使用root创建文件orange.txt,查看当前文件的所在组;然后将所在组修改到fruit组


eg2:将/home/jack下所有文件及目录的所在组改为mojiao

3.组的创建
基本指令:groupadd 组名
应用实例:
eg1:创建一个monster组


注:查看group信息-》/etc/group
eg2:创建一个用户fox,放入monster组中

4.目录/文件 其他组
除文件的所有者和所在组的用户外,系统其他用户都属于该文件的其他组
5.权限
5.1基本概念
ls -l执行结果如下

①-rw-r--r-- -》

②1-》 for 文件:硬链接数 for目录:子目录数
③Tom root-》所有者和所属组
④0-》文件大小;若为目录,显示4096
⑤May 13 23:31-》最后修改时间
rwx作用到文件
r-》代表可读:可以查看、读取文件内容
w-》代表可写:可以修改,但不代表能删除;能否删除一个文件取决于对文件所在目录是否有写权限(跳转eg2)
x-》代表可执行:可以被执行
rwx作用到目录
r-》代表可读:可以读取,ls查看目录内容
w-》代表可写:可以修改,对目录内创建、删除、重命名目录
x-》代表可执行:可以进入该目录
应用实例:
eg1:/dev下
字符设备文件

块文件

eg2:cyh属于root组,将对/root目录权限为r-x,尝试删除其中文件
5.2 修改权限
通过chmod指令,可以修改文件/目录权限
方法一:+ - =变更权限
u:所有者 g:所有组 o:其他人 a:所有人

(1)chmod u=rwx,g=rx,o=x 文件/目录
(2) chmod o+w 文件/目录
(3) chmod a-x 文件/目录
应用实例:
1)给hello.txt文件的所有者rwx权限、给所有组rx权限、其他组rx权限

2)给hello.txt所有者删除执行权限,增加zu写的权限
3)给hello.txt所有用户添加读权限

方法2:通过数字变更权限
r=4,w=2,x=1 rwx=7(rwx分别对应二进制的000每一位)
chmod 751 文件名
=》等同chmod u=rwx,g=rx,o=x 文件名
应用实例:
eg:将/home/hello.txt文件权限改为rwxr-xr-x,以数字方式实现

6.改变用户所在组
在添加用户时,可以指定将用户添加到哪个组中;同样也可使用root权限改变某个用户的所在组
基本语法:
1.usermod -g 组名 用户名 功能描述:改变用户所在组
2.usermod -d 目录名 用户名 功能描述:改变用户登录的初始目录(注:用户对于新目录需要有执行权限)
应用实例:
eg1:将zwj用户从原来所在组,修改到wudang

eg2:更改jack用户的登录初始目录为/

实践1:警察土匪游戏
背景:
group:police、bandit
jack、jerry-》police
xh、xq-》bandit
1、创建组

2、创建用户


3、jack创建一个文件,自己可以读写,本组人可以读,其他人没有任何权限

4、jack修改该文件,让其他人可以读,本组人可以读写

5、xh投靠警察,看看是否可以读写该文件

实践2:唐僧师徒阵营调整
1.建立两个组 神仙(sx)妖怪(yg)
groupadd sx
2.创立四个用户 唐僧(ts),悟空(wk),八戒(bj),沙僧(ss)
useradd ts
3.设置密码
passwd ts
4.把bj,wk放入妖怪组;ts,ss放入神仙组
usermod -g yg bj
5.用悟空建立一个文件monkey.java
su - wk
touch monkey.java
6.给八戒rw权限
chmod g+w monkey.java
7.八戒修改monkey.java 加入(i am pig)
vim monkey.java
8.把沙僧放到妖怪组
usermod -g yg ss
9.让沙僧修改文件,加入(我是沙僧,我是妖怪)
vim monkey.java
rwx对于目录的作用
r:可以显示目录内容,执行ls
w:能否修改目录内容(属性/内容),eg:在目录中创建删除文件
x:能否进入目录
实践3:mycentos小练习
1.用root登录,创建mycentos,自己设置密码

2.用mycentos登录,在主目录下创建目录test/t11/t1

3.在t1钟建立一个文本文件aa,用vim编辑其内容ls -al

4.改变aa的权限为可执行文件,运行该文件

5.删除新建立的目录test/t11/t1


