linux组的基本介绍
在linux中的没一个用户都必须属于一个组,不能独立于组外。在linux中每个文件有所有组、所在组、其他组的概念
- 所有组
- 所在组
- 其他组
- 改变用户所在组
文件/目录 所有者
查看文件的所有者,创建组命令
基本命令
ls -ahl
应用
创建一个组police,再创建一个组tom,然后使用tom创建一个文件
[root@localhost ~]# groupadd police --创建police组
[root@localhost ~]# useradd -g police tom --在police组添加tom用户
[root@localhost ~]# password tom --给tom用户 设置密码
修改文件所有者
基本命令
chown 用户名 文件名
应用
使用root用户创建一个apple.txt文件 ,再把这个文件的所有者改成tom
[root@localhost tom]# touch apple.txt
[root@localhost tom]# ll
total 0
-rw-r--r--. 1 root root 0 Sep 24 20:55 apple.txt
-rw-r--r--. 1 tom police 0 Sep 24 00:56 app.txt
[root@localhost tom]# chown tom apple.txt
[root@localhost tom]# ll
total 0
-rw-r--r--. 1 tom root 0 Sep 24 20:55 apple.txt
-rw-r--r--. 1 tom police 0 Sep 24 00:56 app.txt
修改文件所在组
当某个用户创建了一个文件后,默认这个文件的所在组就是用户的所在组,创建用户时不指定组时,会默认自动创建一个用户名一样的组
基本指令
chgrp 组名 文件名
应用实例
使用root用户创建文件orange.txt,看看当前这个文件属于哪个组,然后将这个文件所在组,修改到police组
[root@localhost tom]# touch orange.txt
[root@localhost tom]# ll
total 0
-rw-r--r--. 1 tom root 0 Sep 24 20:55 apple.txt
-rw-r--r--. 1 tom police 0 Sep 24 00:56 app.txt
-rw-r--r--. 1 root root 0 Sep 24 21:59 orange.txt
[root@localhost tom]# chgrp police orange.txt
[root@localhost tom]# ll
total 0
-rw-r--r--. 1 tom root 0 Sep 24 20:55 apple.txt
-rw-r--r--. 1 tom police 0 Sep 24 00:56 app.txt
-rw-r--r--. 1 root police 0 Sep 24 21:59 orange.txt
其他组
介绍
除文件的所有者和所在组的用户之外,系统的其他用户都是文件的其他组
改变用户所在组;
在添加用户时,可以指定将该用户添加到哪个组中,同样的用root的管理权限可以改变某个用户所在组
基本指令
usermod -g 组名 用户名 --改变用户所在组
usermod -d 目录名 用户名 --改变用户登录的初始目录
应用实例
创建一个土木组将tom这个用户从原来的police组移到,新的土木组里
[root@localhost home]# groupadd tumu
[root@localhost home]# ll
total 61804
drwx------. 2 qwe qwe 6 Aug 22 07:06 b
drwx------. 6 xm xm 219 Aug 22 07:08 blue
drwxr-xr-x. 8 root root 109 Aug 22 06:40 boot
-rw-r--r--. 1 root root 572 Aug 21 02:26 b.zip
drwxr-xr-x. 3 root root 34 Aug 21 02:18 dog
drwx------. 15 jason jason 4096 Sep 12 01:37 jason
drwxr-xr-x. 3 root root 18 Aug 21 02:30 package
-rw-r--r--. 1 root root 160 Aug 21 02:29 package.zip
-rw-r--r--. 1 root root 63273129 Aug 22 06:26 ro.zip
drwx------. 3 tat tat 78 Sep 24 22:07 tat
drwx------. 5 tom police 197 Sep 24 22:24 tom
drwx------. 3 ttt tt 78 Sep 24 22:07 ttt
drwx------. 3 zwj wudang 78 Aug 19 06:25 zwj
[root@localhost home]# usermod -g tumu tom
[root@localhost home]# ll
total 61804
drwx------. 2 qwe qwe 6 Aug 22 07:06 b
drwx------. 6 xm xm 219 Aug 22 07:08 blue
drwxr-xr-x. 8 root root 109 Aug 22 06:40 boot
-rw-r--r--. 1 root root 572 Aug 21 02:26 b.zip
drwxr-xr-x. 3 root root 34 Aug 21 02:18 dog
drwx------. 15 jason jason 4096 Sep 12 01:37 jason
drwxr-xr-x. 3 root root 18 Aug 21 02:30 package
-rw-r--r--. 1 root root 160 Aug 21 02:29 package.zip
-rw-r--r--. 1 root root 63273129 Aug 22 06:26 ro.zip
drwx------. 3 tat tat 78 Sep 24 22:07 tat
drwx------. 5 tom tumu 197 Sep 24 22:24 tom
drwx------. 3 ttt tt 78 Sep 24 22:07 ttt
drwx------. 3 zwj wudang 78 Aug 19 06:25 zwj
改变用户登录的初始目录
usermod -d /home/tat tom
权限的基本介绍
在Linux 系统中权限是区分用户的,即用户、组用户、其余用户,
第一位表示文件的类型,-表明文件,d表明目录
其余每一个用户占三个字符(每个用户如果都有全部权限就是rwx)
这里-rwxr-xr-x对应以下关系
案例
rwx权限详解
文件及目录权限实际案例
权限管理
基本说明
通过chmod指令,可以修改文件的目录和权限
权限修改方式
通过"+" “-” "="变更权限
- u:所有者
- g:所有组
- o:其他人
- a:所有人(u、g、o的总和)
基本命令
- 给所有者增加读写执行权限,所有组增加读和执行的权限,其他人增加执行的权限
chmod u=rwx,g=rx,o=x 文件目录名
- 给其他人增加写的权限
chmod o+w 文件目录名
- 给所有人去除执行的权限
chmod a-x 文件目录名
案例
给abc文件 的所有者读写执行的权限,给所在组读执行的权限,给其他组读执行的权限
[root@localhost aa]# touch abc.txt
[root@localhost aa]# ll
total 33336
-rw-r--r--. 1 root root 4 Aug 22 07:07 1.txt
-rw-r--r--. 1 root root 7 Aug 22 07:07 2.txt
-rw-r--r--. 1 root root 34127328 Aug 21 01:36 99年.pdf
-rw-r--r--. 1 root root 0 Sep 26 01:15 abc.txt
[root@localhost aa]# chmod u=rwx,g=rx,o=rx ./abc.txt
[root@localhost aa]# ll
total 33336
-rw-r--r--. 1 root root 4 Aug 22 07:07 1.txt
-rw-r--r--. 1 root root 7 Aug 22 07:07 2.txt
-rw-r--r--. 1 root root 34127328 Aug 21 01:36 99年.pdf
-rwxr-xr-x. 1 root root 0 Sep 26 01:15 abc.txt
通过数字变更权限
数字的基本介绍
r=4,w=2,x=1,-=0
例子:
chmod u=rwx,g=rx,o=x 文件目录名
chmod 751 文件目录名
案例演示
将/home/abc.txt文件的权限修改成,rwxr-xr-x
rwx=4+2+1=7
r-x=4+0+1
r-x=4+0+1
[root@localhost b]# ll
total 0
-rw-r--r--. 1 root root 0 Oct 1 02:02 abc
-rw-r--r--. 1 root root 0 Oct 1 02:03 abc.txt =================原本的权限644
[root@localhost b]# ll
total 0
-rw-r--r--. 1 root root 0 Oct 1 02:02 abc
-rwxr-x--x. 1 root root 0 Oct 1 02:03 abc.txt
[root@localhost b]# chmod 644 ./abc.txt
[root@localhost b]# ll
total 0
-rw-r--r--. 1 root root 0 Oct 1 02:02 abc
-rw-r--r--. 1 root root 0 Oct 1 02:03 abc.txt
修改文件的所有者
基本命令
chown newowner file 改变文件的所有者
chown newowner:newgroup file 改变用户的所有者和所有组
-R 如果是目录,则其下面所有的文件和目录递归生效
案例
把abc.txt的文件所有者改成tom
[root@localhost b]# ll
total 0
-rw-r--r--. 1 root root 0 Oct 1 02:02 abc
-rw-r--r--. 1 root root 0 Oct 1 02:03 abc.txt
[root@localhost b]# chown tom ./abc.txt
[root@localhost b]# ll
total 0
-rw-r--r--. 1 root root 0 Oct 1 02:02 abc
-rw-r--r--. 1 tom root 0 Oct 1 02:03 abc.txt
把/home/tat目录下的所有文件及目录的所有者都改成tom
必须使用root才有权限操作
[root@localhost tat]# pwd
/home/tat
[root@localhost tat]# ll
total 0
-rw-rw-r--. 1 tat tat 0 Oct 2 17:53 112.txt
-rw-rw-r--. 1 tat tat 0 Oct 2 17:53 11.txt
-rw-rw-r--. 1 tat tat 0 Oct 2 17:53 1.txt
drwxrwxr-x. 2 tat tat 19 Oct 2 17:53 a
[root@localhost tat]# chown tom -R ./*
[root@localhost tat]#
[root@localhost tat]# ll
total 0
-rw-rw-r--. 1 tom tat 0 Oct 2 17:53 112.txt
-rw-rw-r--. 1 tom tat 0 Oct 2 17:53 11.txt
-rw-rw-r--. 1 tom tat 0 Oct 2 17:53 1.txt
drwxrwxr-x. 2 tom tat 19 Oct 2 17:53 a
修改文件的所在目录
基本命令
chgrp newgroup file 改变文件的所在组
案例
修改单个文件的所在组
[root@localhost tat]# ll
total 0
-rw-rw-r--. 1 tom tat 0 Oct 2 17:53 112.txt
-rw-rw-r--. 1 tom tat 0 Oct 2 17:53 11.txt
-rw-rw-r--. 1 tom tat 0 Oct 2 17:53 1.txt
drwxrwxr-x. 2 tom tat 19 Oct 2 17:53 a
[root@localhost tat]# chgrp tom 112.txt
[root@localhost tat]# ll
total 0
-rw-rw-r--. 1 tom tom 0 Oct 2 17:53 112.txt
-rw-rw-r--. 1 tom tat 0 Oct 2 17:53 11.txt
-rw-rw-r--. 1 tom tat 0 Oct 2 17:53 1.txt
drwxrwxr-x. 2 tom tat 19 Oct 2 17:53 a
修改目录下所有文件的所在组
[root@localhost a]# ll
total 0
drwxr-xr-x. 2 root root 19 Oct 2 18:02 abc
-rw-rw-r--. 1 tom tat 0 Oct 2 17:53 b.txt
[root@localhost a]# chgrp -R tom ./*
[root@localhost a]# ll
total 0
drwxr-xr-x. 2 root tom 19 Oct 2 18:02 abc
-rw-rw-r--. 1 tom tom 0 Oct 2 17:53 b.txt
组管理权限实践
- 创建police组和bandit组
- 创建jack、jerry属于police组
- 创建xh、xq属于bandit组
- jack创建一个文件自己可以读写,所在组可以读其他人没有任何权限
- jack修改文件,让其他组的读,本组人可以读写
- 小红投靠警察,该怎么实现读写
[root@localhost a]# groupadd police
[root@localhost a]# groupadd bandit
[root@localhost a]# useradd -g police jack
[root@localhost a]# useradd -g police jerry
#jack创建一个文件自己可以读写,所在组可以读其他人没有任何权限
[jack@localhost ~]$ ll
total 0
-rwxrw-r--. 1 jack police 0 Oct 2 18:27 jack.txt
[jack@localhost ~]$ chmod 640 ./jack.txt
[jack@localhost ~]$ ll
total 0
-rw-r-----. 1 jack police 0 Oct 2 18:27 jack.txt
# jack修改文件,让其他组的读,本组人可以读写
[jack@localhost ~]$ chmod 664 ./jack.txt
[jack@localhost ~]$ ll
total 0
-rw-rw-r--. 1 jack police 0 Oct 2 18:27 jack.txt
# 小红投靠警察,实现读写
# 修改小红的组,然后对/home/jack目录添加组的r-x权限
[root@localhost jack]# usermod -g police xh
[root@localhost home]# ll
total 61804
drwx------. 2 qwe qwe 44 Oct 1 02:03 b
drwx------. 6 xm xm 219 Aug 22 07:08 blue
drwxr-xr-x. 8 root root 109 Aug 22 06:40 boot
-rw-r--r--. 1 root root 572 Aug 21 02:26 b.zip
drwxr-xr-x. 3 root root 34 Aug 21 02:18 dog
drwxrwx---. 5 jack police 157 Oct 2 20:05 jack
drwxr-x---. 15 jason jason 4096 Sep 12 01:37 jason
drwx------. 3 jerry police 78 Oct 2 18:13 jerry
drwxr-xr-x. 3 root root 18 Aug 21 02:30 package
-rw-r--r--. 1 root root 160 Aug 21 02:29 package.zip
-rw-r--r--. 1 root root 63273129 Aug 22 06:26 ro.zip
drwx------. 6 tat tat 179 Oct 2 17:54 tat
drwxrwxrwx. 5 tom root 197 Sep 25 06:38 tom
drwxrwxrwx. 5 ttt tt 126 Sep 25 07:42 ttt
drwx------. 5 xh police 128 Oct 2 20:01 xh
drwx------. 3 xq bandit 78 Oct 2 18:14 xq
drwx------. 3 zwj wudang 78 Aug 19 06:25 zwj
[root@localhost home]# chmod 750 ./jack/
[root@localhost home]# ll
total 61804
drwx------. 2 qwe qwe 44 Oct 1 02:03 b
drwx------. 6 xm xm 219 Aug 22 07:08 blue
drwxr-xr-x. 8 root root 109 Aug 22 06:40 boot
-rw-r--r--. 1 root root 572 Aug 21 02:26 b.zip
drwxr-xr-x. 3 root root 34 Aug 21 02:18 dog
drwxr-x---. 5 jack police 157 Oct 2 20:05 jack
drwxr-x---. 15 jason jason 4096 Sep 12 01:37 jason
drwx------. 3 jerry police 78 Oct 2 18:13 jerry
drwxr-xr-x. 3 root root 18 Aug 21 02:30 package
-rw-r--r--. 1 root root 160 Aug 21 02:29 package.zip
-rw-r--r--. 1 root root 63273129 Aug 22 06:26 ro.zip
drwx------. 6 tat tat 179 Oct 2 17:54 tat
drwxrwxrwx. 5 tom root 197 Sep 25 06:38 tom
drwxrwxrwx. 5 ttt tt 126 Sep 25 07:42 ttt
drwx------. 5 xh police 128 Oct 2 20:01 xh
drwx------. 3 xq bandit 78 Oct 2 18:14 xq
drwx------. 3 zwj wudang 78 Aug 19 06:25 zwj
#现在xh就可以查看jack下的所有文件了