来源:justmine来源:www.cnblogs.com/justmine/p/9053419.html
写在前面
我们都知道linux是一个支持多用户、多任务的系统,这也是它最优秀的特性,即可能同时有很多人都在系统上进行工作,所以千万不要强制关机 。
同时,为了保护每个人的隐私和工作环境,针对某一个文档(文件、目录),Linux系统定义了三种身份,分别是拥有者(owner)、群组(group)、其他人(others),每一种身份又对应三种权限,分别是可读(readable)、可写(writable)、可执行(excutable) 。
文档属性
使用命令ls -al --full-time,或者此命令的简写ll可以查看文件或者目录的所有属性 。如下:
文章插图
从上面可以看到,每一行都有7列,分别是:
- 第一列
- 共10位,第1位表示文档类型,d表示目录,-表示文件,l表示链接文件,d表示可随机存取的设备,如U盘等,c表示一次性读取设备,如鼠标、键盘等 。后9位,依次对应三种身份所拥有的权限,身份顺序为:owner、group、others,权限顺序为:readable、writable、excutable 。如:-r-xr-x---的含义为当前文档是一个文件,拥有者可读、可执行,同一个群组下的用户,可读、可写,其他人没有任何权限 。
- 第二列
- 表示连结数
- 第三列
- 表示拥有者
- 第四列
- 表示所属群组
- 第五列
- 表示文档容量大小,单位字节
- 第六列
- 表示文档最后修改时间,注意不是文档的创建时间哦
- 第七列
- 表示文档名称 。以点(.)开头的是隐藏文档
位置
etc/passwd
文章插图
注意:必须是该位置下已存在的帐号 。也就是在/etc/passwd中有记录的拥有者才能改变 。
语法
chown [-R] [帐号名称] [文件或目录]chown [-R] [帐号名称]:[群组名称] [文件或目录]
备注:此命令也可以顺便变更文档群组,但还是建议使用chgrp命令来变更文档群组 。
选项
-R 递归变更,即连同次目录下的所有文件(夹)都要变更 。
用法
chown daemon test 变更文件夹test账号为daemon 。
文章插图
chown daemon:root test 变更文件夹test群组为root 。
文章插图
chown root.users test 变更文件夹账号为root,群组为users
文章插图
chown .root test 单独变更群组为root
文章插图
备注:虽然也可以在拥有者与群组间加小数点(.),但为了避免有的同学命名中带点,故还是建议使用冒号“:”来隔开拥有者与群组,避免误判 。
变更群组(group)
位置
etc/group
文章插图
备注:从这里可以查看到所有群组
语法
chgrp [-options] [群组名] [文档路径]
备注:关于options,可以通过man chgrp、info chgrp、chgrp --help等命令查询详细用法 。
用法
chgrp -R users test 改变test文件夹及其所有子文件(夹)的群组为users 。
文章插图
注意:群组名称不在位置内,将会报错invalid group 。
文章插图
变更权限
Linux文档的基本权限就三个,分别是read/write/execute,加上身份owner/group/others也只有九个 。权限变更的方式有2种,分别是符号法和数字法 。JAVA程序员必须掌握的常用Linux命令,这篇也推荐大家看下 。
推荐阅读
- Linux 超级军刀 Nmap详解
- Linux下修改MySQL7.x打开最大文件数
- Linux Shell编程
- Linux中bash shell环境变量
- 写给大忙人的Redis主从复制,花费五分钟让你面试不尴尬
- 发动机内部清洗?真的有必要吗?还是先搞懂这些
- 从底层彻底搞懂String,StringBuilder,StringBuffer的实现
- 一张图看懂Linux内核
- 如何升级 Linux Mint 19.1 为 Linux Mint 19.2
- Linux curl的常用案例使用