linux一切皆文件,那么这些文件怎么区分?
就是由前面的字母来分别的
结构分析:
- rwx rwx --- 2
文件类型 所有者权限 所在组权限 其他组权限 硬链接,目录则表示其中有几个文件
[root@192 dev]# ll
总用量 0
crw-rw----. 1 root video 10, 175 5月 4 21:22 agpgartdrwxr-xr-x. 2 root root 160 5月 4 21:22 block
lrwxrwxrwx. 1 root root 3 5月 4 21:22 cdrom -> sr0
brw-rw----. 1 root disk 253, 0 5月 4 21:22 dm-0
文件类型说明:- 代表普通文本文件;c 代表符号设备文件(例如鼠标键盘)
d 代表目录 ; l代表软链接;
b 块文件(硬盘)
权限类型说明:r 可读 w 可写 x 可执行(该文件得是可执行的文件)
如果是目录: r 可读,w 可以添加文件,删除文件,重命名文件; x 可以进入该目录
修改文件或者目录的权限:
第一种方式:+ - =变更权限
u: 所有者 g:所有组 o:其他人 a: 所有人
chmod u=rwx,g=rx ,o=x 文件/目录 统一赋权
chmod o+w 文件/目录名 单独添加权限,但不会覆盖原权限
chmod a-x 文件目录名 收回执行权限
+= 赋权区别
操作 效果 示例 chmod u+x
添加权限(不影响其他权限位) rw-
→rwx
chmod u=rwx
覆盖权限(清除未指定的权限) r--
→rwx
,rw-
→rwx
chmod a+w
给所有用户添加写权限 r--
→rw-
chmod go=r
将组和其他人权限设为只读 rwx
→r--
(组和其他人)
第二种方式:通过数字变更权限
r=4,w=2,x=1 rwx = 4+2+1 =7
chmod u=rwx,g=rx,o=x filename == chmod 751 filename (简化)
修改文件/目录所在组
chgrp newgroup filename 【改变文件所在组】
chgrp -R groupname filename 更改目录及目录下的所有文件的所在组
基本上目录操作的指令都要带-R 因为需要递归操作里面的每个子文件