之前用Linux系统时一直没注意,今天却无意识地注意到一个常见的东西
如图,用 ll 命令把文件列表展示出来
诶,上面那个 tmp 文件夹怎么和其它的不一样,它是绿色高亮的?
查了资料才知道,原来是 Linux认为它是高风险的目录文件,因为任何人都可以读写它
如上图第一列便是文件属性及权限信息,此文件属于目录文件
“-” :普通文件;
“d” :目录;
“l” :链接文件;
“p” :管理文件;
“b” :块设备文件;
“c” :字符设备文件;
“s” :套接字文件;
三种用户情况
文件所有者(User),文件所有者所在组(Group),其他用户(Others)
第2-4位表示它的文件所有者权限
第5-7位表示文件所有者所在组权限
第8-10位表示其他用户权限
三种类型
读(r),写(w),执行(x)
它也可以用数字来标识,r=4,w=2,x=1,然后-便是没有此权限的意思,记作 0
例如:drwxr-xr-x 便可以用 755 来表示,rwx=4+2+1=7,r-x=4+0+1=5
可以使用 chmod 命令来进行相应的设置
使用语法:chmod [模式] [赋予者] [权限操作] [权限类型] [文件名]
- 模式:
- -c : 若该档案权限确实已经更改,才显示其更改动作
- -f : 若该档案权限无法被更改也不要显示错误讯息
- -v : 显示权限变更的详细资料
- -R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
-
- 赋予者:
- u:该档案的拥有者
- g:与该档案的拥有者属于同一个组的
- o:其他以外的人
- a:三者皆是
-
- 权限操作:
- +:新增权限
- -:取消权限
- =:设定唯一权限
-
- 权限类型:
- r:可读取
- w:可写入
- x:可执行
-
使用范例
将当前目录下的所有文件目录与子目录设置为任何人可读
chmod -R a+r * 或 chmod -R ugo+r *
也可以使用数字来写
chmod -R 444 *
将档案 test.txt 的拥有者设为 ggggg 群体的使用者 uuser
chown uuser:ggggg text.txt