一、组管理
1.Linux组的介绍
在linux中每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者,所有组,其他组的概念
①所有者
②所在组
③其他组
④改变用户所在组
2.文件/目录 所有者
哪个用户创建了文件,就自然是该文件的所有者
查看文件的所有者
①指令:ls -ahl (all human list)
②应用:创建一个组 police,再创建一个用户 tom,将 tom 放在police 组,然后使用tom来创建一个文件ok.txt
创建组police groupadd police
创建用户tom放在police组 useradd -g police tom
设置tom的密码 passwd tom
用tom用户登录
创建文件ok.txt touch ok.txt
3.修改文件所有者 Change Owner-文件所在组没变化
①指令:chown 用户名 文件名
②应用:使用 root 创建一个文件 apple.txt ,然后将其所有者修改成tom
创建文件: touch ok.txt
改变文件的所有者: chown tom apple.txt
查看文件所有者: ls -ahl
4.组的创建
①指令
groupadd 组名
②应用
创建一个组monster并创建一个用户fox,并放入到 monster组中
groupadd monster
useradd -g monster fox
5.修改文件所在的组-不改变所有者
①指令:
chgrp 组名 文件名
②应用
使用 root 用户创建文件 orange.txt ,看看当前这个文件属于哪个组,然后将这个文件,修改到police组。
创建文件:touch orange.txt
修改到police组:chgrp police orange.txt
6.修改用户所在组
①指令:
usermod -g 组名 用户名
②案例:
创建一个土匪组(bandit)将tom这个用户从原来所在的police组,修改到bandit(土匪)组
创建组: groupadd bandit
修改组: usermod -g bandit tom
二、权限管理
1.权限的基本介绍
指令ll信息的含义
①文件类型:
-普通文件 d目录 1软链接 c字符设备 b块文件
②权限 3个一组
r可读
w可写,可以修改。不一定能删除文件,删除文件前提是对该目录有写权限
x可执行
2.修改权限
指令
chmod指令,修改文件或目录权限
方式一:+,-,=变更权限
u所有者 g所有组 o其他人 a所有人
①chmod u=rwx,g=rx,o=x 文件目录名
②chmod o+w 文件目录名
③chmod a-x 文件目录名
案例:
1) 给 abc 文件 的所有者读写执行的权限,给所在组读执行权限,给其它组读执行权限
chmod u=rwx,g=rx,o=rx abc
2) 给 abc 文件的所有者除去执行的权限,增加组写的权限
chmod u-x,g+w abc
3) 给 abc 文件的所有用户添加读的权限
chmod a+r abc
方式二:通过数字变更权限
r=4
w=2
x=1
rwx=7
rx=5
案例:
将 /home/abc.txt 文件的权限修改成 rwxr-xr-x, 使用给数字的方式实现:
rwx=4+2+1=7
r-x=4+1=5
chmod 755 /home/abc.txt
3.修改文件所有者chown
指令
chown newowner file 改变文件的所有者
chown newowner:newgroup file 改变用户的所有者和所有组
-R 递归对所有目录生效
案例
1) 请将 /home/abc .txt 文件的所有者修改成 tom
chown tom /home/abc.txt
2) 请将 /home/kkk 目录下所有的文件和目录的所有者都修改成 tom
chown -R tom /home/kkk
4.修改文件所在的组
指令
chgrp 新组名 文件
案例
1) 请将 /home/abc.txt 文件的所在组修改成 bandit (土匪)
chgrp bandit /home/abc.txt
2) 请将 /home/kkk 目录下所有的文件和目录的所在组都修改成 bandit(土匪)
chgrp -R bandit /home/kkk
5.实践
创建组:police,bandit
创建police组的用户:jack,jerry
创建bandit组的用户:xh,xq
①创建组
groupadd police
groupadd bandit
②创建用户
警察组
useradd -g police jack
useradd -g police jerry
土匪组
useradd -g bandit xh
useradd -g bandit xq
③jack创建一个文件jack01.txt,自己可以读写,本组人可以读,其他组没任何权限
创建文件
touch jack01.txt
修改权限
chmod 640 jack01.txt
④jack修改该文件,让其他组可以读,本组人可以读写。
chmod g=rw,o=r jack01.txt
⑤xh 投靠警察,看看是否可以读写
root修改组
usermod -g police xh
jack给/home/jack所在组读写权限
chmod g=rx /home/jack/
xh注销登录后可以读jack01.txt文件了
cat /home/jack/jack01.txt