Linux 文件基本属性

1.Linux 文件基本属性

Linux 系统是一种典型的多用户系统,不同用户处于不同地位,拥有不同的权限。为了保护系统的安全性,Linux 系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。Linux 通常使用以下两个命令来修改文件或目录的所属用户与权限:

(1)chown (change owner) : 修改所属用户与组。

(2)chmod (change mode) : 修改用户的权限。

2.使用ls --l 命令显示文件属性以及文件所属用户和组

Linux 中第一个字符代表这个文件是目录、文件或链接文件等等。以三个为一组,且均为 rwx 的三个参数的组合。其中, r 代表可读(read)、 w 代表可写(write)、 x 代表可执行(execute)。 这三个权限的位置不会改变,如果没有权限,就会出现减号 -。

(1)若是 d 则是目录

(2)当为 - 则是文件

(3)若是 l 则表示为链接文档(link file)

(4)若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置)

(5)若是 c 则表示为装置文件中的串行端口设备,例如键盘、鼠标(一次性读取装置)。

3.Linux文件权限表示方式

每个文件的属性由左边第一部分的 10 个字符来确定。第 0 位确定文件类型,第 1-3 位确定属主(该文件的所有者)拥有该文件的权限。第4-6位确定属组(所有者的同组用户)拥有该文件的权限,第7-9位确定其他用户拥有该文件的权限。其中,第 1、4、7 位表示读权限,如果用 r 字符表示,则有读权限,如果用 - 字符表示,则没有读权限;第 2、5、8 位表示写权限,如果用 w 字符表示,则有写权限,如果用 - 字符表示没有写权限;第 3、6、9 位表示可执行权限,如果用 x 字符表示,则有执行权限,如果用 - 字符表示,则没有执行权限。

4.Linux文件属主和属组

对于文件来说,它都有一个特定的所有者,也就是对该文件具有所有权的用户。同时,在Linux系统中,用户是按组分类的,一个用户属于一个或多个组。文件所有者以外的用户又可以分为文件所属组的同组用户和其他用户。因此,Linux系统按文件所有者、文件所有者同组用户和其他用户来规定了不同的文件访问权限。在以上实例中,mysql 文件是一个目录文件,属主和属组都为 mysql,属主有可读、可写、可执行的权限,与属主同组的其他用户有可读和可执行的权限;其他用户也有可读和可执行的权限。对于 root 用户,一般情况下,文件的权限对其不起作用。

5.更改文件属性

(1)chgrp:更改文件属组

-R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上 -R 的参数,那么该目录下的所有文件的属组都会更改。

chgrp [-R] 属组名 文件名

(2)chown:更改文件所有者(owner),也可以更改文件所属组

chown [--R] 所有者 文件名

chown [-R] 所有者:属组名 文件名

(3)chmod:更改文件9个属性

Linux文件属性有两种设置方法,一种是数字,一种是符号。Linux 文件的基本权限就有九个,分别是 owner/group/others(拥有者/组/其他) 三种身份各有自己的 read/write/execute 权限。

文件的权限字符为: -rwxrwxrwx , 这九个权限是三个一组的。其中,可以使用数字来代表各个权限,各权限的分数对照表如下:

r:4、w:2、x:1。

每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: -rwxrwx--- 分数则是:owner = rwx = 4+2+1 = 7、group = rwx = 4+2+1 = 7、others= --- = 0+0+0 = 0,设定权限的变更时,该文件的权限数字就是 770。

6.变更权限的指令 chmod语法

chmod [-R] xyz 文件或目录

(1)xyz : 数字类型的权限属性,为 rwx 属性数值的相加

(2)递归(recursive)的持续变更,同次目录下的所有文件都会变更

7.符号类型改变文件权限

user:用户、group:组、others:其他,使用 u, g, o 代表三种身份的权限,a 代表 all,即全部身份。读写权限可以写成 r, w, x。若需将文件权限设置为 -rwxr-xr-- ,可使用 chmod u=rwx,g=rx,o=r 文件名 来设定。

touch test1    // 创建 test1 文件

ls -al test1    // 查看 test1 默认权限

chmod u=rwx,g=rx,o=r  test1    // 修改 test1 权限

ls -al test1 // 查看 test1 默认权限

8.将文件权限去掉而不改变其他已存在的权限

chmod  a-x test1          //去除全部人的可执行权限

ls -al test1    // 查看 test1 默认权限
相关推荐
leoufung34 分钟前
vim 多个关键字高亮插件介绍
linux·编辑器·vim
Karoku0662 小时前
【CI/CD】CI/CD环境搭建流程和持续集成环境配置
运维·ci/cd·docker·容器·kubernetes·prometheus
Nerd Nirvana4 小时前
软考—系统架构设计(案例 | 论文)
linux·系统架构·软件工程·软考·计算机基础
StickToForever4 小时前
第4章 信息系统架构(五)
经验分享·笔记·学习·职场和发展
勤奋的凯尔森同学5 小时前
webmin配置终端显示样式,模仿UbuntuDesktop终端
linux·运维·服务器·ubuntu·webmin
丁卯4046 小时前
Go语言中使用viper绑定结构体和yaml文件信息时,标签的使用
服务器·后端·golang
chengooooooo6 小时前
苍穹外卖day8 地址上传 用户下单 订单支付
java·服务器·数据库
人间打气筒(Ada)7 小时前
MySQL主从架构
服务器·数据库·mysql
leegong231117 小时前
学习PostgreSQL专家认证
数据库·学习·postgresql
Moonnnn.8 小时前
51单片机学习——动态数码管显示
笔记·嵌入式硬件·学习·51单片机