linux
chmod
命令是在日常运维中比较常用的命令之一,对
文件管理比较重要,如设置web目录时需设置特定的权限以保证服务器安全。在写完shell
脚本后,我们一般需要给这脚本设置权限:chmod a+x shell.sh。有很多人,特别是搞开发的程序员,不懂权限,对程序及目录直接给予chmod -R 777
file,这种最高级的权限,对服务器安全会造成很大的安全隐患,一般不建议这样设置,在线上服务器上,可配置
chown来设置web目录权限,如对用户上传图片的目录设置为web执行用户者的权限,对需要用程序操作的web中目录,也同样的设置:chown -R
apache:apache web,其它只读的文件或目录,保持root权限即可,这样可以增加服务器安全性
linux命令 : chmod 使用权限 : 所有用户 使用方式 : chmod [-cfvR] [--help] [--version] mode file... 说明 : Linux/Unix 的文件调用权限分为三级 : 文件拥有者[属主]、属组、其他用户。利用 chmod 可以控制文件如何被他人所调用。与chmod相关的命令:chown, umask, 参数 : mode : 权限设定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中 u 表示该文件的拥有者[user], g 表示与该文件的拥有者属于组(group), o 表示其他用户[other], a 表示这三者皆是[all] (常用) + 表示增加权限 (常用) - 表示取消权限 (常用) = 表示唯一设定权限。 r 表示有可读取的权限, w 表示有可写入的权限, x 表示有可执行的权限, X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。 -c : 若该文件权限确实已经更改,才显示其更改动作 -f : 若该文件权限无法被更改也不要显示错误讯息 -v : 显示权限变更的详细资料 -R : 对目前目录下的所有文件与子目录进行相同的权限变更 (常用) --help : 显示帮助 --version : 显示版本 r=4, w=2, x=1 rwx属性则4+2+1=7; rw-属性则4+2=6; r-x属性则4+1=5。 [root@linuxyw linux]# ll
total 8
drwxr-xr-x 2 root root 4096 Apr 29 14:50 linuxyw -rw-r--r-- 1 root root 36 Apr 27 23:40 linuxyw.com -rw-r--r-- 1 root root 0 Apr 29 14:46 www.linuxyw.com 示例:给文件修改所有为所有人可读权限: chmod ugo+r linuxyw.com 或 chmod a+r linuxyw.com 给文件修改所有为所有人可执行权限: chmod a+x linuxyw.com 给文件修改所有为文件属主用户可执行权限: chmod u+x linuxyw.com 把linuxyw目录下的文件设置为所有人可执行权限: chmod -R a+x linuxyw/ 把linuxyw目录下的文件全部设置为755权限: chmod -R 755 linuxyw/ 取消linux目录下的所有文件可写权限: chmod -R a-w linuxyw/ 先看一下文件的权限格式先看一下文件的权限格式 [root@linuxyw linux]# ll total 8 drwxr-xr-x 2 root root 4096 Apr 29 14:50 linuxyw -rw-r--r-- 1 root root 36 Apr 27 23:40 linuxyw.com -rw-r--r-- 1 root root 0 Apr 29 14:46 www.linuxyw.com ![]() ll的结果返回七列,分别表示如下含义: 第一栏 [文件属性] 第二栏 [文件数] 第三栏 [拥有者] 第四栏 [所有者群组] 第五栏 [大小] 第六栏 [建档日期] 第七栏 [档名] 我们设置文件的权限就是这是第一栏里的文件属性。 文件属性这块共有十个字段,如:drwxr-xr-x 我们把这10个列分成4块:[d] [rwx] [r-x] [r-x] 第一块:也就是第一列,用来表示这个文件的类型,有如下值: (1)[ d ]则是目录,我这里的是d,表示的是一个目录 (2)[ - ]则是文件; (3)[ l ]则表示为连结档(link file); (4)[ b ]则表示为装置文件里面的可供储存的接口设备; (5)[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标。 第二块:第 2到4 列,表示文件拥有者的权限。 第三块:第5到7 列,表示拥有者同组人的权限。 第四块:第8到10列,表示是非拥有者组人的权限。 这些权限均有[rwx] 三个参数表示,而且分别对应不同的位置。每块由3个列组成,每列对应一个值。 [ r ]代表可读、[ w ]代表可写、[ x ]代表可执行。 举例: 如果拥有者只有只读的权限,那么第2到4列就是[r--],有读写的权限就是[rw-],有读写和执行的权利就是[rwx]. 使用数字赋权的命令格式如下: chmod abc filename 其中的abc 分别代表3个数字,并且分别对应问个不同的属组。 即: 数字a 对应 第2到4位,表示拥有者的权限。 数字b 对应 第5到7位,表示同组用户的权限。 数字c 对应第8到10位,表示其他组的权限。 rwx 对应4,2,1. 那么只读的权限用4表示[r--],读写用6(4+2)表示[rw-],写加执行用7(4+2+1)表示[rwx]。 只读加执行用5(4+1)表示[r-x]。 示例: chmod 755 file1 chmod 777 file1 <==> chmod a=rwx file chmod 771 file <==> chmod ug=rwx,o=x file |
Linux chmod命令
最新推荐文章于 2024-10-11 09:03:03 发布