1, 基本权限 UGO
? 1, 权限设置对象: 属主(u) 属组(g) 其他人(o) 所有人(a(u+g+o))
? 2, 权限类型: 读: r=4 写: w=2 执行: x=1 数字加减总和得到的数字,
? 就得到了文件的两 种及其两种以上权限. 比如数字 5, 即得到了 "读" 和 "写" 的权限
? 3, 设置权限
1. 更改权限
? (a)使用符号
? 语法: chmod 对象 (u/g/o/a) 赋值符 (+/-/=) 权限类型(r/w/x) 文件 / 目录
? 4, 增加执行权限:#chmod u+x file1 //u 是主组, x 是执行, file1 是新创建的文件
? 5, 删除执行权限:#chmod u-x file1 //u 是主组, x 是执行, file1 是新创建的文件
? 注: u 是主组, u 还可以换成 g 或者 o 或者 a
? 6, 编写程序:#vim file1
- ? echo "Hello World"
- ? read -p "请输入您的姓名:" name
- ? echo "$name 是男神"
? 注: file1 文件写好以后, 可以用 bash 文件运行或者直接用 ./ 运行, bash 文件可以直接运行程序,
? 但是 ./ 情况下就会出现权限不够的情况. 这个时候就需要给属主或者附属组或者其他人增加权限
? 7, 数字赋权限
? chmod 644 /tmp/file1
? 意思是赋权限为, 读写, 写, 写. 数字 6 的意思为 "读 + 写"
? 注: 权限显示为 9 位, 前三位对应是属主, 中间三位是属组, 后面三位对应是其他人
? 8, 去除权限
###### # chomd u-x file1
? 意思是去除属主的执行权限, 类似的还有去除属主的 r(读),w(写)权限
? 如果是 #chomd g-x file1'
意思是去除属组的执行权限, 其他的同理.
? 其他修改练习:
- ? [root@localhost tmp]# chmod a=rwx file1 // 所有人等于读写执行
- ? [root@localhost tmp]# chmod a=- file1 // 所有人没有权限
- ? [root@localhost tmp]# chmod ug=rw,o=r file1 // 属主属组等于读写, 其他人只读
- ? [root@localhost tmp]# ll file1 // 以长模式方式查看文件权限
? -rw-rw-r-- 1 alice it 17 10-25 16:45 file1 // 显示的结果
? 9, 更改属主, 属组
? =chown: 设置一个文件属于谁, 属主
? 语法: chwon 用户名. 组名 文件
- ? [root@localhost ~]# chown alice.hr file1 // 改属主, 属组
- ? [root@localhost ~]# chown alice file1 // 只改属主
- ? [root@localhost ~]# chown .hr file1 // 只改属组
? =chgrp: 设置一个文件属于哪个组, 属组
? 语法: chgrp 组名 文件 -R 是递归的意思
- ? [root@localhost ~]# chgrp it file1 // 改文件属组
- ? [root@localhost ~]# chgrp -R it dir1 // 改文件属组
? 例:
? 针对 hr 部门的访问目录设置权限, 要求如下:
? 1.root 用户和 hr 组的员工可以读, 写, 执行
? 2. 其他用户没有任何权限
? 操作思路:
? 1 创建组
? 2 创建用户
? 3 修改属主和属组
? 4 设置权限
- ? [root@localhost ~]# groupadd hr
- ? [root@localhost ~]# useradd hr01 -G hr
- ? [root@localhost ~]# useradd hr02 -G hr
- ? [root@localhost ~]# mkdir /home/hr
- ? [root@localhost ~]# chgrp hr /home/hr
- ? [root@localhost ~]# chmod 770 /home/hr
- ? [root@localhost ~]# ll -d /home/hr/
? drwxrwx---. 2 root hr 4096 3 月 13 14:26 /home/hr/
来源: http://www.bubuko.com/infodetail-2577754.html