1、使用者与群组
1.1 文件拥有者
在文件上添加权限,使其只有文件拥有者有权限。
1.2 群组概念
群组最用的功能就是团队开发资源,每个账号可以有多个群组支持。群组里面的用户可以访问共有的资源。但是不能访问彼此的私有资源。以家庭类比,一个家是一个群组,有三个孩子是群组成员,他们都可以在客厅任意玩,但不能在彼此房间里胡乱看别人私有的东西。
1.3 其他人概念
其他用户在不被允许条件下是访问不了别的用户的内容的,root用户是可以访问系统中任何文件。在linux 中系统账号与一般身份使用者,root相关信息都是记录在/etc/passwd这个文件中,个人密码记录在/etc/shadow这个文件下,所有群组名称记录在/etc/group这个文件下。
三种对应User、Group、Other。
2、linux文件权限概念
文件权限如何针对所有者和群组设置,权限的设置是很重要的。
2.1 Linux文件属性
ls 命令,查看文件,ls就是list的意思,显示文件的文件名和相关属性。可以使用 su命令切换身份为root,ls -al表示列出所有文件详细的权限和属性。如下图
##第一栏代表这个文件的类型和权限
第一个字符代表这个文件是“目录、文件、链接文件”等
*当为【d】则是目录
*当为【-】则是文件
*当为【l】则是链接文件
*当为【b】则表示为设备文件里面可供存储的周边设备(可随机存取设备)
*当为【c】则表示为设备文件里的序列设备,如磁盘、鼠标等
##接下来的字符中,以三个为一组,且均为"rwx"的三个参数的组合,其中【r】代表可读(read),【w】代表可写(write),【x】代表可执行(execute),他们的位置不会改变,如果没有该权限则用【-】代替。
*第一组为“文件的拥有者可具备的权限”
*第二组为"加入此群组的账号的权限"
*第三组为“非本人且没有加入本群组的其他账号的权限”
##第二栏表示有多少文件名链接到此节点(i-node)
每个文件都会将他的权限和属性记录到系统的i-node中,每个文件名会链接到一个i-node。
##第三栏表示这个文件的拥有者账号
##第四栏表示这个文件的所属群组
linux系统下,你的账号会加入一个或多个群组。
##第五栏为这个文件的容量大小,默认单位为Bytes。
##第六栏为这个文件的创建日期或最近的修改日期
##第七栏为这个文件的文件名
如果文件名前面多一个“.”,则表示这个文件为隐藏文件。
可以使用 ls --help或者man ls 或info ls 看基础用法。
2.2 如何改变文件属性和权限
**改变所属群组,chgrp
假设你已经是root身份,文件夹里有一个a.out文件,改变它的群组为root(群组必须在/etc/group里面)如下图
使用chgrp命令修改文件群组。
再用 ls -al显示文件,
需要注意的是修改的群组必须是在系