请选择 进入手机版 | 继续访问电脑版
 找回密码
 注册
首页 ≡≡网络技术≡≡ 服务器 Linux下用chmod命令改变权限

linux Linux下用chmod命令改变权限

灰儿 2009-2-25 15:55:26
使用chmod命令可以改变权限。下面这个例子显示了如何使用chmod命令来改变readme.txt文件的权限。

假设下面是readme.txt文件的初始权限设置:
-rw-rw-r-- 1 winda winda 39 8月 11 12:04 readme.txt

如果是这个文件的所有者或者登录为根用户身份,则可以改变所有者、组群和其他人的权限。初始时,从上面的分析可以看出,这个readme.txt文件的所有者和组群可以读取和写入文件(rw-),组群之外的任何人只能读取文件(r--)。

文件权限是一种安全措施。无论何时允许其他人读取、写入或执行文件,都在增加文件被篡改或删除的危险。作为一种基本原则,应该只给那些真正需要这些文件的人以读写权限。

在下面的例子中,想给每个人以写入readme.txt文件的权限,因此他们可以读取文件,在其中加注,并保存文件。这意味着必须改变文件权限中的“其他人”部分。

此时需要在shell或终端提示下输入:
chmod o+w readme.txt

o+w命令参数告诉系统想给其他人写入文件readme.txt的权限。要查看结果,再次列出文件的细节。此时,这个文件的用户访问权限就如下所示了(在第3列中多了一个w):

-rw-rw-rw- 1 winda winda 39 3月 11 12:04 readme.txt

现在,每个人都可以读取和写入这个文件了。

要从readme.txt中删除组群和其他人的读写权限,使用chmod命令来取消读取和写入这两个的权限。

命令如下:
chmod go -rw readme.txt

通过输入go-rw参数告诉系统删除文件readme.txt中组群和其他人的读取和写入权限。再次通过 ls -1命令列出的结果如下:

-rw------- 1 winda winda 39 3月 11 12:04 readme.txt

综上所述,当想用chmod命令来改变权限时,文件的用户身份主要有如下几类:
u:拥有文件的用户(所有者);
g:所有者所在的组群;
o:其他人(不是所有者或所有者的组群);
a:每个人或全部(u、g、和o)。

用户所具有的文件访问权限类型如下:
r:读取权;
w:写入权;
x:执行权。

文件权限配置行为有如下几类:
+:添加权限;
-:删除权限;
=:使它成为惟一权限。

从文件readme.txt中删除所有权限(包括每个人的权限)的命令如下:
chmod a -rwx readme.txt

现在,来看看是否还能够使用cat readme.txt命令来读取这个文件,它所返回的输出应如下所示:
cat: readme.txt: Permission denied

删除所有的权限,包括自己的,会成功地锁住这个文件。但是由于这个文件属于用户,可以随时使用以下命令把它的权限改回来。命令如下:

chmod u+rw readme.txt

使用命令cat readme.txt来试试作为文件所有者是否还能够读取该文件。

这里是几个可以用在chmod命令设置上的常用例子:
g+w:为组群添加写入权;
o-rwx:删除其他人的所有权限;
u+x:允许文件所有者执行这个文件;
a+rw:允许每个人读取并写入文件;
ug+r:允许所有者和组群读取文件;
g=rx:只允许组群读取和执行(不能写入)。

最后,介绍一下恢复组群的权限的方法。命令如下:
chmod ug+x tigger

现在,如果用ls -dl命令检查一下,会发现只有其他人(others)被拒绝了到目录tigger的访问权。
灰儿 楼主 2019-7-25 14:00:01
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就是拥有全权限。根据需要可以自由组合用户和组的权限。

参数-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)

*:通配符,指当前目录下的所有文件及目录

将当前目录下的所有文件及子目录的文件拥有者权限设置为读、写、可执行,文件拥有者所在的用户组成员具备读、写、可执行权限,其它用户也具备读、写、可执行权限

您需要登录后才可以回帖 登录 | 注册
学习中心
站长自定义文字内容,利用碎片时间,随时随地获取优质内容。
Q设计语言 了解更多
Q Design 提供商家设计所需的指导与资源,帮商家快速完成产品设计、降低生产成本。
学习中心
站长自定义文字内容,利用碎片时间,随时随地获取优质内容。
Q设计语言 了解更多
Q Design 提供商家设计所需的指导与资源,帮商家快速完成产品设计、降低生产成本。