linux系统权限(基本权限)linux的系统权限:
r--  100 4
-w- 010 2
--x  001 1
[root@localhost ~]# ll -d dir
drwxrwxrwx 2 root root 18 Nov 512:21dir
[root@localhost ~]# ll -d dir/file
-rw-r--r-- 1 root root 0 Nov 512:21dir/file
1).权限描述
/root/dir的权限是所属⽤户root读写执⾏,所属组root读执⾏,其他⽤户读执⾏
/root/dir/file的权限是所属⽤户root读写,所属组root读,其他⽤户读
2)判断使⽤者的所属
chown [user].[group] [-R] filename
[root@localhost ~]# chown oldboy dir/
[root@localhost ~]# ll -d dir/
drw-r----- 2 oldboy root 51 Nov 521:01dir/
[root@localhost ~]# chown .dba dir/
[root@localhost ~]# ll -d dir/
drw-r----- 2 oldboy dba 51 Nov 521:01dir/
[root@localhost ~]# dir/
[root@localhost ~]# ll -d dir/
drw-r----- 2 root root 51 Nov 521:01dir/
[root@localhost ~]# chown oldboy:dba dir/
[root@localhost ~]# ll -d dir/
drw-r----- 2 oldboy dba 51 Nov 521:01dir/
3)修改权限
第⼀种⽅式:
chmod [ugoa] [+-=] [rwx] [-R] filename
[root@localhost ~]# chmod777dir/
[root@localhost ~]# ll -d dir/
drwxrwxrwx 2 root root 18 Nov 512:21dir/
[root@localhost ~]# chmod go-w dir/
[root@localhost ~]# ll -d dir/
drwxr-xr-x 2 root root 18 Nov 512:21dir/
[root@localhost ~]# chmod g=rwx,o= dir/
[root@localhost ~]# ll -d dir/
drwxrwx--- 2 root root 18 Nov 512:21dir/
[root@localhost ~]# chmod a=rwx dir/
[root@localhost ~]# ll -d dir/
drwxrwxrwx 2 root root 18 Nov 512:21dir/
[root@localhost ~]# chmod -R 444dir/
[root@localhost ~]# ll -d dir/ dir/file
dr--r--r-- 2 root root 18 Nov 512:21dir/
-r--r--r-- 1 root root 0 Nov 512:21dir/file
[root@localhost ~]# chmod -R =wx dir/
[root@localhost ~]# ll -d dir/
d-wx--x--x 2 root root 18 Nov 512:21dir/
[root@localhost ~]# ll -d dir/file
--wx--x--x 1 root root 0 Nov 512:21dir/file
第⼆种⽅式:
chmod nnn filename
第⼀个n:U
第⼆个n:G
第三个n:O
所属⽤户rw,属组⽤户只读,其他⽤户⽆权限
6                      4                              0
[root@localhost ~]# ll -d dir/
drw-r----- 2 root root 51 Nov 5 21:01 dir/
常⽤⼏种组合
默认⽬录:755
默认⽂件:644
⽬录:755 750 700
⽂件:644 640 600
linux系统基本权限
autorun
linux系统特殊权限
linux系统ACL
linux中的⽂件或⽬录和⽤户及⽤户组关联很⼤,linux这种每个⽂件或⽬录都有⼀组共9个基础权限位,每三个字符被分为⼀组,他们分别是属主权限位(占三个字符)、属组权限位(占三个字符)、其他⽤户权限位(占三个字符)。
⽐如rwxr-xr-x linux中正是这9个权限位来控制⽂件数字(User)、属组(Group)、其他⽤户(Other)基础权限
⽤户对资源说,有三种⾓⾊
User(u):属主⽤户(⽂件所有者)
Group(g):属组⽤户(包含组成员)
Other(o):匿名⽤户(其他⼈)
判断⽤户是否为⽂件的所有者,如果是,按所有者的权限进⾏访问
判断是否为⽂件的所有组成员,如果是,就按组的权限去访问
不满⾜上⾯条件的⽤户就是⽂件的其他的⼈,按其他的⼈的权限去访问
rwx,rwx ,r-x
User Group Other
权限与属主属组,如图1
图1  权限与属主属组
⽂件权限对应表
字母含义对应权限
r(read)        读写权限          4
w(write)      写⼊权限          2
x(execute)  执⾏权限          1
-(⽆权限) 没有权限 0
如果权限位不可读、不可写、不可执⾏,则⽤-来表⽰
权限与属主属组作⽤⽰例图
漫画
chown:linux中⽤来改变某个⽂件属主的命令,如漫画中所⽰,将某个"资源"的访问权限给予别⼈。(卖房)
chmod:linux中⽤来改变某个⽂件的访问模式的命令,如漫画中所⽰,chmod777会将⼤门敞开,谁都可以进去。(租房)
1.权限修改命令chmod
chmod [ugoa] [+-=] [rwx] filename
chmod //修改⽂件⽬录权限rwx -R级联修改
mkdir -pv dir //建⽴⽬录
touch dir/file //建⽴⽂件
⽰例1:
chmod777dir/ //修改dir的⽬录权限为777
chmod u+rwx,g+rwx,o+rwx
⽰例2:
chmod666dir/file//修改file⽂件权限为666
chmod u+rw,g+rw,o+rw
⽰例3:
chmod -R 700dir/ //递归修改⽬录权限(修改⽬录及⼦⽬录权限)
2.属主属组修改命令chown
chown //更改属主以及属组 -R;级联修改
⽰例1:
[root@localhost ~]# chown oldboy dir/ //修改所属主为bin
[root@localhost ~]# ll -d dir/ //检查属主
drw-r----- 2 oldboy root 51 Nov 521:01dir/
⽰例2:
[root@localhost ~]# chown .adm dir/ //修改所属组为adm
[root@localhost ~]# ll -d dir/ //检查属组
drw-r----- 2 oldboy adm 51 Nov 521:01dir/
3.基础权限设置案例
权限对⽂件的影响对⽬录的影响
读取权限(r)      具有读取阅读⽂件内容权限具有浏览⽬录及⼦⽬录
写⼊权限(w)    具有新增、修改⽂件内容权限具有增加和删除⽬录内容⽂件
执⾏权限(x)    具有执⾏⽂件的权限具有访问⽬录内容(取决于⽬录中的⽂件权限)⽂件权限实验案例
//默认⽂件其他⽤户仅有读权限
[root@localhost ~]# echo"date" > /
[root@localhost ~]# ll /
-rw-r--r-- 1 root root 5 Nov 522:19 /
//测试读权限(⽆法执⾏或删除)
[root@localhost ~]# su - oldboy
[oldboy@localhost ~]$ cat /
date
[oldboy@localhost ~]$ echo"test">/
-bash: /: Permission denied
[oldboy@localhost ~]$ /
-bash: /: Permission denied
//增加x执⾏权限
[root@localhost ~]# chmod645 /
[root@localhost ~]# ls -lih /
16777293 -rw-r--r-x 1 root root 5 Nov 522:19 /
[root@localhost ~]# su - oldboy -c '/'//测试执⾏权限
Tue Nov 522:26:49 CST 2019
rwx对⽂件的影响
读取权限(r)
⽂件只有r权限,具有读取阅读⽂件内容权限
1.能使⽤查看类命令cat、head、tail、less、more
2.不能复制、不能移动、不能编辑、不能删除
写⼊权限(w)
如果⽂件只有w权限:具有新增、修改⽂件内容权限
1.使⽤vim编辑,会提⽰权限拒绝,但可强制保存,会覆盖之前⽂件内容
2.使⽤echo命令重定向或追加重定向技术可以往⽂件内写⼊数据
3.使⽤cat命令读取⽂件,将读取到的⽂件输出交给仅有w权限的输⼊
4.不能复制、不能移动、不能删除(删除需要看上级⽬录w的权限)
执⾏权限(x)
⽂件只有w权限:具有执⾏⽂件的权限
//注意普通⽤户需要有r权限,管理员不需要
1.不能执⾏、查看、编辑、复制、移动、删除
⽬录权限实验案例:
实验案例1:对⽬录没有w,对⽂件有rwx
[root@localhost tmp]# mkdir -pv /test
mkdir: created directory ‘/test’
[root@localhost tmp]# echo"test" >/
[root@localhost tmp]# ll -d /test/
drwxr-xr-x 2 root root 22 Nov 522:51 /test/
[root@localhost tmp]# chmod777 /
[root@localhost tmp]# ll /
-rwxrwxrwx 1 root root 5 Nov 522:51 /
/
/普通⽤户验证权限
[oldboy@localhost ~]$ ls /test/
<
[oldboy@localhost ~]$ cat /
test
[oldboy@localhost ~]$ rm -f /
rm: cannot remove ‘/’: Permission denied
实战案例2:对⽬录有w,对⽂件没有任何权限
[root@localhost tmp]# chmod777 /test/
[root@localhost tmp]# chmod000 /
[root@localhost tmp]# ll -d /test/
drwxrwxrwx 2 root root 22 Nov 522:51 /test/
[root@localhost tmp]# ll /
---------- 1 root root 5 Nov 522:51 /
//普通⽤户验证权限
[oldboy@localhost ~]$ cat /
cat: /: Permission denied
修改文件权限的linux命令
[oldboy@localhost ~]$ rm -f /
[oldboy@localhost ~]$ touch /
实战案例3:对⽬录没有x,对⽂件有任何权限
[root@localhost tmp]# chmod766 /test/
[root@localhost tmp]# chmod777 /
[root@localhost tmp]# ll -d /test/
drwxrw-rw- 2 root root 22 Nov 523:02 /test/
[root@localhost tmp]# echo"test">/
[root@localhost tmp]# ll /
-rwxrwxrwx 1 oldboy oldboy 5 Nov 523:08 /
//普通⽤户验证权限
[oldboy@localhost ~]$ cd /test/
-bash: cd: /test/: Permission denied
[oldboy@localhost ~]$ ls /test/
ls: cannot access /: Permission denied
ls: cannot access /: Permission denied
<
[oldboy@localhost ~]$ cat /
cat: /: Permission denied
[oldboy@localhost ~]$ rm -f /
rm: cannot remove ‘/’: Permission denied
[oldboy@localhost ~]$ touch /
touch: cannot touch ‘/’: Permission denied
rw对⽬录的影响
⽬录只有r权限:具有浏览⽬录及⼦⽬录
1.能使⽤ls命令浏览⽬录及⼦⽬录,同时会提⽰权限拒绝
2.能使⽤ls -l命令浏览⽬录及⼦⽬录,会带问号,同时只能看到⽂件名
总结:⽬录只有r权限,仅仅只能浏览内的⽂件名,⽆其他权限
写⼊权限(w)
如果⽬录只有w权限:具有增加、删除或修改⽬录⽂件名权限(需要x配合)
//注意如果⽬录有w权限,可以在⽬录创建⽂件,可以删除⽬录中的⽂件(跟⽂件权限⽆关)
不能进⼊⽬录,不能复制⽬录,不能删除⽬录,不能移动⽬录
执⾏权限(x)
⽬录只有x权限
1.只能进⼊⽬录
2.不能浏览、复制、移动、删除
权限⼩结:
⽂件rw权限:可以查看和编辑⽂件内容
⽂件rx权限:只能查看和执⾏⽂件,不能编辑、复制、移动、删除
⽬录rx权限:允许流浪⽬录内⽂件以及⼦⽬录,并允许在⽬录内新建⽂件,不允许创建、删除⽂件和⽬录案例:针对tech部门访问⽬录/home/tech设置权限,要求如下:
<⽤户和tech组的员⼯可以读写执⾏
2.其他⽤户⽆任何权限
实现思路:
1.创建所需⽬录
[root@localhost ~]# mkdir -p /home/tech
2.创建所需⽤户、组
[root@localhost ~]# groupadd tech
[root@localhost ~]# useradd oldboy -g tech
[root@localhost ~]# useradd test
3.设置所属和权限
[root@localhost ~]# chmod770 -R /home/tech/
[root@localhost ~]# h -R /home/tech/

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。