Linux中修改文件目录权限命令chmod

简介:

chmod是一个用来改变文件或目录权限的命令;记得博主看黑客军团美剧的时候,第一集系统被入侵的时候,主角就使用过chmod命令。

当使用#ls -l或ll命令时,即可看到当前的文件目录的权限,-rwxrwxrwx即表示权限。

先说一下理论的东西,后面在说明整行字段的含义。

文件系统上的权限是指文件系统上的文件和目录的权限,文件系统上的权限主要针对三类对象(访问者)进行定义:

owner:属主,u
group:数组,g
other:其他,o

 

每个文件针对每类访问者都定义了三种权限:

r:readable 可读
w:writable 可写
x:executable 可执行

对于文件来说:

r:可用文件查看类工具读取此文件的内容
w:可以添加、编辑或者修改内容,但是不包含删除该文件
x:具有可以被系统执行的权限,文件是否能被执行就是由该权限来决定的

对于目录来说:

r:拥有此权限表示可以读取此目录的结构列表,也就是说可以查看该目录下的文件名和子目录名(ls查看)
w:可以在此目录中创建文件,也可以删除、重命名移动文件
x:具有进入此目录的权限

 

权限表示方法:

权限、二进制表示、八进制表示对应的表示方法如下:

---:000 0
--x:001 1
-w-:010 2
-wx:011 3
r--:100 4
r-x:101 5
rw-:110 6
rwx:111 7

 

chmod命令

修改文件或目录的权限,设置方式采用字母或数字代号;

参数

u:属主
g:属组
o:其他用户
a:表示三者全包括

+:增加权限
-:取消权限
=:唯一设定权限
-R:递归

下面来说下字段的含义,举个例子,使用ls -l命令:

drw-r--r--.  1 root root      970 Dec  3  2015 abc

第一块红色,第一列,用来表示这个文件的类型:

d:则是目录
-:则是文件
l:表示为连结档link file
b:表示为装置文件里面的可供存储的接口设备
c:表示为装置文件里面的串行端口设备,如键盘、鼠标


第二块:第二到四列,此处是rw-,表示属主权限

第三块:第五到七列,此处是r--,表示属组权限

第四块:第八到十列,此处是r--,表示其他的权限

第五块:这里是1,连接数位(count)

第六块:这里是root,属主

第七块:这里是root,属组

第八块:这里是970,是文件大小,单位字节

970 Dec  3  2015:是文件的最后修改时间

abc:文件名

除了这些属性外,还有个需要了解的,索引节点“ Inode”号,ls -i显示每个文件的Inode号,每个文件或者文件夹前都会出现一个唯一的“Inode”编号。

 

好了,下面来举一些例子来演示下:

使用数字方式修改权限:

上面已经列出了对应的数字,这里我们只管记住r对应4,w对应2,x对应1

修改读写权限就是4+2=6,修改读执行权限就是4+1=5,将-rwxr-x-wx转换成对应数字就是753。

-rw——- 对应数字就是600,只有所有者(属主)才有读和写的权限
-rwxr-xr-x 对应数字755,只有所有者(属主)才有读,写,执行的权限,组群和其它只有读执行权限
-rw-rw-rw- 对应数字666,每个人都有读写的权限

示例

修改abc文件权限为777。

chmod 777 abc

修改abc文件,使abc文件属主(所有者)可读,属组可写,其他没有权限。

chmod 420 abc

把abc目录下的文件全部设置为755权限

chmod -R 755 /abc/

修改abc文件权限为所有人可读

chmod ugo+r abc 或 #chmod a+r abc

修改abc文件权限为所有人可执行

chmod ugo+x abc 或 #chmod a+x abc

修改abc文件属主为所有人可执行

chmod u+x abc

修改abc文件属主属组有读写权限

chmod ug+rx abc

 

取消abc目录下的所有文件可写权限

chmod -R a-w /abc/

目录
相关文章
|
10月前
|
存储 数据管理 Linux
区分Linux中.tar文件与.tar.gz文件的不同。
总之,".tar"文件提供了一种方便的文件整理方式,其归档但不压缩的特点适用于快速打包和解压,而".tar.gz"文件通过额外的压缩步骤,尽管处理时间更长,但可以减小文件尺寸,更适合于需要节约存储空间或进行文件传输的场景。用户在选择时应根据具体需求,考虑两种格式各自的优劣。
1788 13
|
11月前
|
安全 Linux
Linux赋予文件000权限的恢复技巧
以上这些步骤就像是打开一扇锁住的门,步骤看似简单,但是背后却有着严格的逻辑和规则。切记,在任何时候,变更文件权限都要考虑安全性,不要无谓地放宽权限,那样可能
408 16
|
11月前
|
存储 Linux 数据处理
深入剖析Linux中一切即文件的哲学和重定向的机制
在计算机的奇妙世界中,Linux的这套哲学和机制减少了不同类型资源的处理方式,简化了抽象的概念,并蕴藏着强大的灵活性。就像变戏法一样,轻轻松松地在文件、程序与设备之间转换数据流,标准输入、输出、错误流就在指尖舞动,程序的交互和数据处理因此变得既高效又富有乐趣。
206 4
|
Ubuntu Linux
"unzip"命令解析:Linux下如何处理压缩文件。
总的来说,`unzip`命令是Linux系统下一款实用而方便的ZIP格式文件处理工具。本文通过简明扼要的方式,详细介绍了在各类Linux发行版上安装 `unzip`的方法,以及如何使用 `unzip`命令进行解压、查看和测试ZIP文件。希望本文章能为用户带来实际帮助,提高日常操作的效率。
3233 12
|
Linux Shell 数据安全/隐私保护
Centos或Linux编写一键式Shell脚本创建用户、组、目录分配权限指导手册
Centos或Linux编写一键式Shell脚本创建用户、组、目录分配权限指导手册
634 3
|
11月前
|
Linux
linux文件重命名命令
本指南介绍Linux文件重命名方法,包括单文件操作的`mv`命令和批量处理的`rename`命令。`mv`可简单更改文件名并保留扩展名,如`mv old_file.txt new_name.txt`;`rename`支持正则表达式,适用于复杂批量操作,如`rename 's/2023/2024/' *.log`。提供实用技巧如大小写转换、数字序列处理等,并提醒覆盖风险与版本差异,建议使用`-n`参数预览效果。
|
Linux 数据安全/隐私保护
linux(二十三)用户权限管理chmod修改文件及目录权限
linux(二十三)用户权限管理chmod修改文件及目录权限
390 0
|
Linux Go
在Linux中,文件和目录的权限有何作用以及如何修改?
在Linux中,文件和目录的权限有何作用以及如何修改?
|
Linux 数据安全/隐私保护 iOS开发
Linux的root用户,普通用户无法在根录中创建文件,一般在其HOME目录里是不受限的,一旦出了HOME目录,大多数地方,仅有读和执行的权限,ctrl + d回到上一个用户,Exit,su - ro
Linux的root用户,普通用户无法在根录中创建文件,一般在其HOME目录里是不受限的,一旦出了HOME目录,大多数地方,仅有读和执行的权限,ctrl + d回到上一个用户,Exit,su - ro
|
Linux Go
linux中的usermod 修改用户、groupadd 新增组、groupdel 删除组、groupmod 修改组、cat /etc/group 查看创建了哪些组、文件权限类、rwx 作用文件和目录的不同解释、chmod改变权限、修改bigbig.txt文件使其所属主用户只有读权限、修改bigbig.txt文件使其所属组用户具有写权限
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同 Linux 系统对用户组的规定有所不同, 如Linux下的用户属于与它同名的用户组,Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做 了不同的规定。[ w ]代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前 提条件是对该文件所在的目录有写权第一种方式变更权限 chmod [{ugoa}{±=}{rwx}] 文件或目录。经验技巧 u:所有者 g:所有组 o:其他人 a:所有人(
638 1
linux中的usermod 修改用户、groupadd 新增组、groupdel 删除组、groupmod 修改组、cat /etc/group 查看创建了哪些组、文件权限类、rwx 作用文件和目录的不同解释、chmod改变权限、修改bigbig.txt文件使其所属主用户只有读权限、修改bigbig.txt文件使其所属组用户具有写权限