1.组的基本介绍:在linux中每个用户必须属于一个组,不能独立于组外;Linux中每个文件有所有者、所在组、其它组的概念。
1.1文件/目录的所有者:创建者;
1.1.1查看文件的所有者:ls -ahl
eg: 创建一个组 police,再创建一个用户 tom,将 tom 放在 police 组 ,然后使用 tom 来创建一个文件 ok.txt,看看情况如何
groupadd police -----创建一个组
useradd -g police tom---------创建用户tom,将tom放在组police
passwd tom
pwd ------查看当前是否是tom用户
touch ok.txt ----------- 创建ok.txt文件
ls -ahl -------查看文件的同时展现所有者信息
1.1.2 修改文件所有者
指令:chown 用户名 文件名
eg: 使用 root 创建一个文件 apple.txt ,然后将其所有者修改成 tom
chown tom apple.txt
1.2组的创建
指令:groupadd 组名
eg:创建一个组:monster,创建一个用户fox并放到组里
groupadd monster
useradd -g monster fox
1.3文件/目录 所在组
当用户创建一个文件后,默认这个文件的所在组就是该用户的所在组
1.3.1 查看文件/目录的所在组
指令:ls -ahl
1.3.2修改文件所在组
chgrp 组名 文件名
eg: 使用 root 用户创建文件 orange.txt ,看看当前这个文件属于哪个组,然后将这个文件所在组,修改到 police 组
chgrp police orange.txt
1.4其它组
除了文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组
1.5改变用户的所在组
在添加用户时,可以指定将该用户添加到哪个组中,同样的用 root 的管理权限可以改变某个用户所在的组。
1.5.1 改变用户所在组
1)usermod -g 组名 用户名
2)usermod -d 目录名 用户名 改变用户登录的初始目录
eg:建一个土匪组(bandit)将 tom 这个用户从原来所在的 police 组,修改到 bandit(土匪) 组
groupadd bandit
id tom
usermod -g bandit tom
id tom
1.6 权限的基本介绍
第0位确定文件类型:
-:普通文件;d: 目录;l:链接
(r:可读,查看;w:可写,但对于文件不代表可以删除,删除一个文件的前提是对该文件所在的目录有写权限,才能删除,对于目录而言,可以修改目录,目录内创建+删除+重命名目录;x:可执行)
第1-3位:
所有者权限
第4-6位
和所有者在同一组的用户的权限,所属组的权限
第7-9位
其他用户权限
1.7修改权限 chmod
1.7.1 修改文件或目录的权限,使用+、-、=变更权限
u:所有者;g:所有组;o:其他人;a:所有人
eg1: 给 abc 文件 的所有者读写执行的权限,给所在组读执行权限,给其它组读执行权限
chmod u=rwx,g=rx,o=x abc
eg2:给 abc 文件的所有者除去执行的权限,增加组写的权限
chmod u-x,g+w abc
eg3:给 abc 文件的所有用户添加读的权限
chmod a+r abc
1.8修改文件所有者权限
改变文件的所有者:chown newowner file
改变用户所有者和所有组:chown newowner:newgroup file
-R:如果是目录,则使其下所有子文件或目录递归生效
eg1:请将 /home/abc .txt 文件的所有者修改成 tom
chown tom abc.txt
eg2:请将 /home/kkk 目录下所有的文件和目录的所有者都修改成 tom
chown -R tom kkk/(目录最后要加/)
1.9 修改文件所在组权限 chgrp
改变文件所在组:chgrp newgroup file
eg1:请将 /home/abc .txt 文件的所在组修改成 bandit (土匪)
chgrp bandit abc.txt
eg2:请将 /home/kkk 目录下所有的文件和目录的所在组都修改成 bandit(土匪)
chgrp -R bandit kkk/