Linux:修改文件权限及所有者
1、导入
相关的东西:(文件的操作常用命令:列出目录ls)
| ls命令参数 | 说明 |
|---|---|
-a | 列出所有文件及目录(包括以.开头的隐藏文件) |
-d | 列出目录名 |
-l | 长格式列表 |
-S(此处是大写) | 按文件大小排序 ,小写的s是显示文件大小 |
文件的三种权限和三类人
Linux中的文件的普通权限分三种:r(只读权限read)、w(只写权限write)、x(执行权限)
分别作用于三类人:u(用户主user)、g(同组人group)、o(其他人other)
2、chown(改变文件所有者)
ps:只有超级用户有权使用这个命令,可用sudo使用
用法:chown [owner] [file]
$ sudo chown [csdn] [myfile]
#将myfile文件的所有者改为csdn
3、chmod (改变文件或目录的访问权限)
ps:同样只有超级用户有权使用这个命令,可用sudo使用
用法:chmod [augo] [+ - =] [rwx] file
a表示所有人,u是用户主,g和o表示同组人和其他人,+ - =分别表示增添加,去掉和设置权限,rwx表示上面已经说过,不在赘述。
$ sudo chmod a+rwx myfile
#将myfile我文件的权限变为所有人可读可写可执行
权限的另一种表示方法:数字表示法,采用二进制表示rwx分别对应ugo
例如777表示对ugo都有rwx权限,666表示对ugo都有rw权限,这样写更加简洁。
ps:这两个命令很容易混淆,长得太像了,所以可以简单用一下联想记忆法,chown-change owner(更改所有者)chmod-change mode(改变模式)
4、应用
task:有一个非常重要的文件(sources.list)但是你忘了它在哪了,你依稀记得它在 /etc/ 目录下,现在要你把这个文件找出来,然后设置成自己(csdn 用户)可以访问,但是其他用户并不能访问。
分析:这里采用find命令,查找sources.list文件,同样find命令只能超级用户用,然后使用chown更改文件所属者,chmod更改文件权限。
$ sudo find /etc/ -name sources.list
# find [path] [option] [action]
#这里如果找到目录,假设为/etc/apt/sources.list 。
$ sudo chown csdn /etc/apt/sources.list
#也可以去apt的目录下修改,就可以不用写绝对路径。
$ sudo chmod 600 /etc/apt/sources.list
#表用户自己对sources.list有rwx权限,00代表同组人和其他人都没有任何权限。
linux中chmod与chown两个命令详解
在linux系统中chmod,chown命令都可以来设置权限了,但它们也是有区别的,下文小编为各位介绍chmod与chown两个命令用法与区别介绍。
今天要分享的2个命令也是我们平时常用的,chmod与chown看似拼写还有点差不多,但是两者的用途是不同的。chmod是用来设置文件夹和文件权限的,比如我们在VPS主机中文件不可读写,需要用来设置777权限;而chown是用来设置用户组的,比如授权某用户组,方便控制用户权限。
具体的使用我们用实例解答,那些所谓的各种参数命令我不喜欢分享,因为平时也用不到,直接用实用的。
第一、使用权限 : 所有使用者
使用方式 : chmod [-cfvR] [--help] [--version] mode file...
说明 : Linux/Unix 的档案存取权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以藉
以控制档案如何被他人所存取。
mode : 权限设定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中u 表示该档案的拥有
者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆
是。
+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被
设定过为可执行。
-c : 若该档案权限确实已经更改,才显示其更改动作
-f : 若该档案权限无法被更改也不要显示错误讯息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
--help : 显示辅助说明
--version : 显示版本
比如 : chmod -R 777 /www/itbulu.com/wp-content/*
代表设置上述文件夹下所有文件可读写,也可以这样。
cd wp-content
chmod -R 777 *
第二、指令名称 : chown
使用权限 : root
使用方式 : chown [-cfhvR] [--help] [--version] user[:group] file...
说明 : Linux/Unix 是多人多工作业系统,所有的档案皆有拥有者。利用 chown 可以将档案的拥
有者加以改变。一般来说,这个指令只有是由系统管理者(root)所使用,一般使用者没有权限可以
改变别人的档案拥有者,也没有权限可以自己的档案拥有者改设为别人。只有系统管理者(root)才
有这样的权限。
user : 新的档案拥有者的使用者 ID
group : 新的档案拥有者的使用者群体(group)
-c或-change:作用与-v相似,但只传回修改的部分
-f或–quiet或–silent:不显示错误信息
-h或–no-dereference:只对符号链接的文件做修改,而不更改其他任何相关文件
-R或-recursive:递归处理,将指定目录下的所有文件及子目录一并处理
-v或–verbose:显示指令执行过程
–dereference:作用和-h刚好相反
–help:显示在线说明
–reference=<参考文件或目录>:把指定文件或目录的所有者与所属组,统统设置成和参考文件或目录的所有者与所属组相同
–version:显示版本信息
chown -R www:www /home/wwwroot/*
解释:-R递归处理所有文件和文件夹,第一个www代表文件的拥有者名称,第二个www代表所属群组名称。
chown与chmod命令的区别
chown 修改文件和文件夹的用户和用户组属性
1。要修改文件hh.c的所有者.修改为sakia的这个用户所有
chown sakia hh.c
这样就把hh.c的用户访问权限应用到sakia作为所有者
2。将目录 /tmp/sco 这个目录的所有者和组改为sakia和组net
chown -R sakia:net /tmp/sco
chmod 修改文件和文件夹读写执行属性
1。把hh.c文件修改为可写可读可执行
chmod 777 hh.c
要修改某目录下所有的文件属性为可写可读可执行
chmod 777 *.*
把文件夹名称与后缀名用*来代替就可以了。
同理若是要修改所有htm文件的属性
chmod 777 *.htm
2。把目录 /tmp/sco修改为可写可读可执行
chmod 777 /tmp/sco
要修改某目录下所有的文件夹属性为可写可读可执行
chmod 777 *
把文件夹名称用*来代替就可以了
要修改/tmp/sco下所有的文件和文件夹及其子文件夹属性为可写可读可执行
chmod -R 777 /tmp/sco
可写 w=4
可读 r=2
可执行 x=1
777就是拥有全权限。根据需要可以自由组合用户和组的权限
本文详细介绍了Linux系统中修改文件权限的两个关键命令:chown用于改变文件所有者,chmod用于改变文件或目录的访问权限。通过实例和参数说明,展示了如何设置不同用户的读写执行权限以及符号链接的处理。
768





