Linux文件/目录权限及归属
Linux文件/目录权限及归属
权限:读 写 执行
查看文件/目录权限及归属
设置文件/目录的权限
设置文件/目录的归属
对于一个文件能不能删除,要看文件所在的目录有没有写的权限
访问权限
可读(read):允许查看文件内容、显示,目录列表
可写(write):允许修改文件内容,允许在目录中新建、移动、删除文件/子目录
可执行(execute):允许运行程序、切换目录
归属(所有权)
文件拥有者(owner):拥有该文件或目录的用户帐号
属组(group):拥有该文件或目录的组帐号
其它人(others):除了属主和属组的其他人
[root@localhost ~]# ls -l install.log -rw-r--r--. 1 root root 28534 Dec 2 09:26 install.log
权限项
|
读
|
写
|
执行
|
读
|
写
|
执行
|
读
|
写
|
执行
|
字符表示
|
r
|
w
|
x
|
r
|
w
|
x
|
r
|
w
|
x
|
权限分配
|
文件所有者
|
文件所属组
|
其他用户
|
(r)读
|
(w)写
|
(x)可执行
| |
文件
|
查看内容cat
|
修改内容vi
|
作为命令使用
|
文件夹
|
列出目录内容ls
|
添加、删除
touch、rm
|
进入文件夹或搜索
cd
|
chmod命令
格式1:chmod [
ugoa
] [
+-=
] [
rwx
] 文件或目录
例如:[root@localhost opt]# chmod o+w .
u、g、o、a 分别表示
属主、属组、其他用户、所有用户
+、-、=分别表示
增加、去除、设置新权限
rwx表示对应的权限字符
常用命令选项
-R
:递归修改指定目录下所有文件、子目录的权限
格式2:chmod nnn 文件或目录...
nnn表示3位八进制数
范围:1、2、3、4、5、6、7
![](https://i-blog.csdnimg.cn/blog_migrate/634aea8d80134d4644c820fec5454e13.png)
chown命令
必须是root
用户和组必须存在,加冒号,设置文件的group
格式:
chown 属主 文件
chown :属组 文件
chown 属主 : 属组 文件
chown 属主:
文件
空的就是oener的基本组
chgrp命令
格式:
chgrp 属组 文件
必须是root或者是文件的所有者
常用命令选项
-R
:递归修改指定目录下所有文件、子目录的归属
操作
|
可以执行的用户
|
chmod
|
root和文件所有者
|
chgrp
|
root和文件所有者(必须是组成员)
|
chown
|
只有root
|
默认权限
在内核级别,
文件的初始权限666
在内核级别,
文件夹
的初始权限777
用umask命令控制默认权限,临时有效
[root@localhost ~]#
umask
0022
//?四位????
[root@localhost ~]#
umask -S
u=rwx,g=rx,o=rx
[root@localhost ~]#
umask 077
[root@localhost ~]#
umask
0077
不推荐修改系统默认umask
chattr命令设置文件的隐藏属性
格式:chattr [+-=] [ai] 文件或目录
常用命令选项
-R:递归修改
-a:可以追加文件内容,但
不能修改和删除,只可以追加,只可以追加!!!!!!!!
-i: 锁定保护文件,只能看
怎么取消????
lsattr命令 查看文件的隐藏属性
格式:lsattr [Rda] 文件或目录
常用命令选项
-R:递归修改
-d: 查看目录
练习
练习一:
要求root在/tmp目录下创建/tmp/aa/bb这个目录,要求在这个bb目录下创建如下图所示的东东,要求(权限、属主属组、名称)完全一致。
![](https://i-blog.csdnimg.cn/blog_migrate/1bc95de46cde6e821138751ff4656712.png)
[root@localhost ~]#
mkdir -p /tmp/aa/bb [root@localhost ~]#
useradd haha [root@localhost ~]#
useradd xixi [root@localhost ~]#
groupadd hello [root@localhost ~]#
groupadd xixi [root@localhost ~]#
groupadd haha [root@localhost bb]#
mkdir *_* [root@localhost bb]#
mkdir "<haha>" [root@localhost bb]#
touch .hello [root@localhost bb]#
touch "haha xixi" [root@localhost bb]#
ll -a total 16 drwxr-xr-x. 4 root root 4096 Jan 2 13:57 . drwxr-xr-x. 3 root root 4096 Jan 2 13:41 .. drwxr-xr-x. 2 root hello 4096 Jan 2 13:44 *_* drwxr-xr-x. 2 root xixi 4096 Jan 2 13:44 <haha> -rw-r--r--. 1 root haha 0 Jan 2 13:57 haha xixi -rw-r--r--. 1 root hello 0 Jan 2 13:44 .hello [root@localhost bb]#
chown :haha "haha xixi" [root@localhost bb]#
chown haha "." [root@localhost bb]#
chown xixi "<haha>" [root@localhost bb]#
chown xixi "haha xixi" [root@localhost bb]#
ll -a total 16 drwxr-xr-x. 4 haha root 4096 Jan 2 13:57 . drwxr-xr-x. 3 root root 4096 Jan 2 13:41 .. drwxr-xr-x. 2 root hello 4096 Jan 2 13:44 *_* drwxr-xr-x. 2 xixi xixi 4096 Jan 2 13:44 <haha> -rw-r--r--. 1 xixi haha 0 Jan 2 13:57 haha xixi -rw-r--r--. 1 root hello 0 Jan 2 13:44 .hello
练习二:
不使用useradd,passwd,groupadd命令,手工修改配置文件,实现创建一个用户qq(UID320),私有组是tencent(GID314),密码是123,用户的主目录是/qq,最终要求可以使用qq用户成功登录。
[root@localhost etc]#
chmod 777 /etc/shadow [root@localhost etc]#
chmod 777 /etc/passwd [root@localhost etc]#
chmod 777 /etc/group [root@localhost etc]#
vim /etc/shadow qq:$6$7t3efLgH$h6sISlufYMecM.QjZnuB8kagWu38iEEskBpjwLTn4bq94T4UYGuDqUGnURFnULweCeRpxMbJCqe/f9W.V7bL6/::17898:::::: [root@localhost etc]#
vim /etc/group tencent:x:314: [root@localhost etc]#
vim /etc/passwd qq:x:320:314::/qq:/bin/bash
本章总结
熟练掌握基本权限的设置方法
掌握所有权的意义和用法