程序员的知识教程库

网站首页 > 教程分享 正文

Linux运维基础命令——chmod(linux运维常见命令)

henian88 2024-09-09 03:48:16 教程分享 25 ℃ 0 评论

系统中一个重要的安全问题——权限。如果有很高的权限用户,甚至是最高权限用户root被黑客拿到的话,那么他可以在你的操作系统上为所欲为。作为一名运维人员,系统管理员,在分配以权限最小为原则

Linux系统将一切都看成文件,下面就以文件权限作为介绍。

ls -l 1008.lua (或 ll 1008.lua)详细查看1008.lua文件信息:

-rw-rw-r-- 1 wwb wwb 259 10月 8 17:32 1008.lua
-:第一个-表示普通文件。d表示目录,l链接文件,b块文件等
rw-rw-r--:表示权限,下面详细介绍
1:连接数
wwb :第一个wwb表示用户名,第二个wwb表示用户组名
259 :文件大小,单位byte
10月 8 17:32:文件改动(创建)的时间,时间格式可以通过系统环境变量修改
1008.lua:文件名

rw-rw-r--应拆成三部分,rw- 所属用户读写权限;rw- 所属用户组下的用户具有读写权限; r-- 其他用户只有读权限。

- 为占位符,r 为读权限,w 为写权限,x 为执行权限

u (user)为所属用户,g (group)为用户下的用户,o (other)为其他用户,a (all)为所有用户

同时还可以用数字表示,以八进制表示权限,rwx => 表示一个三位二进制组成一个八进制。rwx 为7,rw- 为6,r-x 为5,r-- 为4 ...

新写一个shell脚本的时候,一般都会chmod 755 ***.sh,然后执行 ./***.sh

其中的755按上面解析,就是所属用户权限为rwx,用户组权限r-x,其他用户权限r-x。新建的文件,系统默认的权限是644,文件都没有执行权限,需要执行,需要增加执行权限。当然不一定需要使用数字chmod 755 ***.sh方式赋权限,还是使用字母方式, chmod a+x ***.sh也就表示所有用于都具有执行权限。

其中a可以替换成u,g,o;

其中的x可以替换成 r,w;

其中+为增加权限,-为删除权限,=为赋值权限。

对于初学者,用字母赋值权限更容易理解,不过使用数字更简单。

chmod命令格式:

chmod [-cfvR] [--help] [--version] mode file...

参数说明:

[ugoa...][[+-=][rwxX]...][,...]

主要参数:

u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。

+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。

r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。

其他参数说明:

-c : 若该文件权限确实已经更改,才显示其更改动作

-f : 若该文件权限无法被更改也不要显示错误讯息

-v : 显示权限变更的详细资料

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

常用就属-R参数,对于目录下的所以子目录都递归设置权限。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表