Linux 最优秀的地方之一就在于他的多用户多任务环境。而为了让各个使用者具有较保密的文件数据,因此文件的权限管理就变的很重要了。
Linux 一般将文件可存取的身份分为三个类别,分别是 owner/group/others,且三种身份各有read/write/execute 等权限。
那么, 在 Linux 底下这么多的目录/文件,到底每个目录/文件代表什么意义呢?底下就来一一介绍呢!
5.1 使用者与群组
1. 文件拥有者
各自拥有的权利
用户与群组的功能相当于一个对用户数据的安全防护,比如不让登陆这台机器的其他用户看到我的文件内容。什么意思呢?
就是说,比如说 在root用户下通过
useradd -d /home/test test
创建了一个test用户,指定了家目录是/home/test。然后我建立一个文件
touch file.txt
那么这个file.txt是属于test用户的,如果我在root用户下再建立一个xiaoming用户,指定家目录是/home/xiaoming
useradd -d /home/xiaoming xiaoming
那么xiaoming这个用户就没有权限查看我的file.txt文件。实质上根本没有权限访问 /home/test目录。
ll /home/test
会提示
ls: cannot access /test:no such file or directory
2. 群组概念
主要是在团队开发的时候用到。共同拥有的权利。比如三个人整租了一个三室一厅,登记的名字是张飞。卧室都是各自独立拥有的(使用者的私人空间); 客厅是三个人共享的空间。
由于这个三室一厅,登记的名字是张飞,所以张飞就是所谓的群组了。同时三个人分别是三个使用者。而这三个使用者在同一个群组里面。
三个使用者虽然在同一个群组,但是可以设定权限,让每个卧室不能被其他卧室的人查看。而设定群组共享可以让大家共同分享。
3. 其他人
其实就是没啥交集的一个用户了
图上的天神就是root用户了。具有最大的权限。
Linux 用户身份与群组记录的文件
在我们 Linux 系统当中,默认的情况下,所有的系统上的账号与一般身份使用者,还有那个 root 的相关信息,都是记录在/etc/passwd 这个文件内的。至于个人的密码则是记录在/etc/shadow 这个文件下。 此外,Linux 所有的组名都纪录在/etc/group 内!这三个文件可以说是 Linux 系统里面账号、密码、群组信息的集中地啰! 不要随便删除这三个文件啊! |
|
5.2 Linux 文件权限概念
这个文件的权限要如何针对这些所谓的『使用者』与『群组』来设定呢?
当 屏幕前面出现了『Permission deny』的时候,『肯 定是权限设定错误』啦
5.2.1 Linux 文件属性