| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> linux权限管理 -> 正文阅读 |
|
[系统运维]linux权限管理 |
一、基本权限
r, w, x
:可读、可写、可执行。
不同文件类型的有意义:针对普通文本文件和目录,相同的写法,但代表
的意义不同。
文件:
r
:可读,可以使用类似
cat
等命令查看文件内容;
w
:可写,可以编辑或删除此文件;
x:
可执行,
executable
,可以命令提示符下当作命令提交给内核运行;
r
单独存在,可查看文件内容
w
单独存在,看不到文件内容,但是可以强制修改文件内容,会覆
盖原文件内容,单独存在,意义不大
x
单独存在,毫无意义
目录:
r:
可以对此目录执行
ls
以列出内部的所有文件;
w:
可以在此目录创建、修改、删除文件;
x:
可以使用
cd
切换进此目录,也可以使用
ls -l
查看内部文件的详细信
息;
只有
r
权限时,可以读
(
有报错
)
,不能写,也不能进入目录
只有
w
权限时,毫无意义
只有
x
权限时,只能进入,不能读,不能写
目录的
rw
权限:可以查看内容,不可以进入目录,不能删除目录或
它里面的文件
目录的
rx
权限:可以查看内容,可以进入目录,不可以修改目录的
内容
目录的
wx
权限:不可以查看目录内容,可以进入目录,可以删除
目录下的文件,前提是你需要知道目录下有什么文件
//
查看文件的权限。可以使用
ls -l
,如果是目录需要加上
-d
选择,否则值
限制此目录下有什么文件。
[root@base tmp]
# ls
test test.txt
[root@base tmp]
# ll test.txt
-rw-r--r--
1
root root
0
Apr
20 09
:01 test.txt
[root@base tmp]
# ll -d test
drwxr-xr-x
2
root root
6
Apr
20 09
:01 test
权限针对的三类用户:
u: user
属主
g: group
属组
o: other
其它用户
// ls -l
命令显示的意义。
[root@base tmp]
# ls -l test.txt
-rw-r--r--
1
root root
0
Apr
20 09
:01 test.txt
第一栏代表这个文件的类型与权限
第一个字符代表这个文件是
“
目录、文件或链接文件等等
”
:
当为
[ d ]
则是目录,例如上表文件名为
“.config”
的那一行;
当为
[ - ]
则是文件,例如上表文件名为
“initial-setup-ks.cfg”
那一行;
若是
[ l ]
则表示为链接文件(
link file
);
若是
[ b ]
则表示为设备文件里面的可供储存的周边设备(可随机存取设
备);
若是
[ c ]
则表示为设备文件里面的序列埠设备,例如键盘、鼠标(一次
性读取设备)
接下来的字符中,以三个为一组,且均为
“rwx”
的三个参数的组合。其中,
[ r ]
代表可读(
read
)、
[ w ]
代表可写(
write
)、
[ x ]
代表可执行
(
execute
)。 要注意的是,这三个权限的位置不会改变,如果没有权限,
就会出现减号
[ - ]
而已。
第一组为
“
文件拥有者可具备的权限
”
;
第二组为
“
加入此群组之帐号的权限
”
;
第三组为
“
非本人且没有加入本群组之其他帐号的权限
举例:
若有一个文件的类型与权限数据为
“-rwxr-xr--”
,请说明其意义为何?
所有者:可读、可写、可执行(
rwx
)
所属组:本例中为可读可执行(
rx
)
其他人:只读
第二栏表示有多少文件名链接到此节点
每个文件都会将他的权限与属性记录到文件系统的
i-node
中,不过,我们
使用的目录树却是使用文件名来记录, 因此每个文件名就会链接到一个
i
node
啰!这个属性记录的,就是有多少不同的文件名链接到相同的一个
i
node
号码
第三栏表示这个文件(或目录)的
“
拥有者账号
”
第四栏表示这个文件的所属群组
第五栏表示这个文件的容量大小,默认单位是
Bytes
(字节)
1KB(Kilobyte
千字节
)=1024B
,
1MB (Megabyte
兆字节 简称
“
兆
”)=1024KB
,
1GB (Gigabyte
吉字节 又称
“
千兆
”)=1024MB
,
1TB(Trillionbyte
万亿字节 太字节
)=1024GB
。
PB EB
注意:
Byte
是
“
字节数
”
,
bit
是
“
位数
”
,在计算机中每八位为一字节,也
就是
1 Byte=8 bit
,是
1
:
8
的对应关系。道因此在书写单位时一定要注
意
B
字母的大小写和含义。
第六栏表示这个文件的创建日期或者是最近修改日期。
如果这个文件被修改的时间距离现在太久了,那么时间部分会仅显示年份
而已。
第七栏为这个文件的文件名
练习:
1
、创建一个用户
userA
,然后切换至该用户,在
/tmp
目录下,创建一个
testA.txt
文件,然后查看改文件的详细信息。再创建一个
userB
用户,判断
userB
用户对于
testA.txt
文件拥有什么权限?
2
、用
userB
用户,在
/tmp
目录下,创建一个
testB
的目录,请问
userB
用户
是否可以在
testB
目录下创建文件?那么
testA
用户是否也可以?
修改文件的属性和权限
chgrp
:
改变文件所属群组
chown
:
改变文件拥有者
chmod
:
改变文件的权限
, SUID, SGID, SBIT
等等的特性
举例:
1
、改变文件的拥有者。将
test.txt
文件的拥有者改为
test
用户。
[root@base tmp]
# ll test.txt
-rw-r--r--
1
root root
0
Apr
20 09
:01 test.txt
[root@base tmp]
# id test
uid
=
1001
(test)
gid
=
1001
(test)
groups
=
1001
(test)
[root@base tmp]
# chown test test.txt
[root@base tmp]
# ll test.txt
-rw-r--r--
1
test root
0
Apr
20 09
:01 test.txt
2
、同样将文件的小组改为
test.
[root@base tmp]
# ll test.txt
-rw-r--r--
1
test test
0
Apr
20 09
:01 test.txt
3
、同样也可以用
chown
同时改变拥有者和所属组。
[root@base tmp]
# useradd t2
[root@base tmp]
# chown t2.t2 test.txt
[root@base tmp]
# ll test.txt
-rw-r--r--
1
t2 t2
0
Apr
20 09
:01 test.txt
//
或者换一种写法效果一样。
[root@base tmp]
# useradd t3
[root@base tmp]
# chown t3:t3 test.txt
[root@base tmp]
# ll test.txt
-rw-r--r--
1
t3 t3
0
Apr
20 09
:01 test.txt
修改文件权限,
chmod
命令的使用。
举例:
[root@base tmp]
# ll test.txt
-rw-r--r--
1
t3 t3
0
Apr
20 09
:01 test.txt
[root@base tmp]
# chmod u+x test.txt
[root@base tmp]
# chmod g-r test.txt
[root@base tmp]
# chmod o+wx test.txt
[root@base tmp]
# ll test.txt
-rwx---rwx
1
t3 t3
0
Apr
20 09
:01 test.txt
更改权限方面也可以使用数字来代表权限
各权限的分数对照表如下
r:4 w:2 x:1
[root@base tmp]
# ll test.txt
-rw-r--r--
1
t3 t3
0
Apr
20 09
:01 test.txt
[root@base tmp]
# stat -c '%n %a' test.txt
test.txt
707
举例:
[root@base tmp]
# chmod 644 test.txt
[root@base tmp]
# ll test.txt
-rw-r--r--
1
t3 t3
0
Apr
20 09
:01 test.txt
练习:
1
、在
/tmp
目录下,创建一个
test.txt
文件,查看其默认权限情况。
2
、修改上述文件的拥有者和所属小组为
userA
用户。
3
、请问
userB
用户,是否能在此文件中追加内容,不过能,怎么修改才能
追加?
4
、使用
chmod
命令加数字的方式,修改此文件权限为:
-rwxr---w-
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 16:46:17- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |