一、使用者与群组
user, group, others。
user:文件的拥有者,可以设置文件只有自己可以看。
group:群组外的人无权限访问,且自己也可以设置一些文件只能自己访问而群组内其他人员无法访问。一个账号可以加入多个群组。
others:群组外的人员。
二、文件权限
查看文件属性
首先要切换身份为root:
su -
这里如果提示了authentication failure,就输入:
sudo passwd root
修改密码即可。
然后查看所有文件属性:
ls -al
输出一些像这样的东西:
dr-xr-xr-x. 17 root root 4096 May 4 17:56 ..
-rw-------. 1 root root 1816 May 4 17:57 anaconda-ks.cfg
含义见下图:
1. 档案类型权限:
比如上面第一个例子就表示:它是一个目录,档案所有者、群组、其他人对档案都是可读可执行。
2. 连结数:
表示有多少文件名链接到此节点。
改变文件属性和权限
主要三个指令:
chgrp # 改变文件所属群组
chown # 改变文件所有者
chmod # 改变文件权限
1. chgrp:
形式是:
chgrp groupname filename
例如将名为initial-setup-ks.cfg的文件的群组改为user(前提是/etc/group存在一个名为user的群组):
chgrp user initial-setup-ks.cfg
2. chown:
形式也是类似的:
chown ownername filename
这个命令有一个用处是:要把文件拷贝给另一个人的时候,由于复制文件是不会改变拥有者信息的,如果另一个人要访问修改,就得改变复制过去的文件的拥有者。
3. chmod:
有两种方式:
(1) 数字类型改变文件权限:
每组权限对应3个字母,r、w、x分别用4,2,1表示,然后相加得到的数代表一组权限。例如: [-rwxrwx—] 的分数是:770。
变更权限的语法是:
chmod xyz filename # xyz就是代表权限的三个数
例如要开放 .bashrc 这个文件所有权限:
chmod 777 .bashrc
(2)符号类型改变文件权限:
用u,g,o,a分别代表user, group, others, all;用r,w,x代表读写权限。
形式为:
| chmod | u g o a | +(加入) -(除去) =(设置) | r w x | 文件或目录 |
例一:设置文件.bashrc权限为-rwxr-xr-x:
chmod u=rwx,go=rx .bashrc
例二:将每个人的权限加上写的权限:
chmod a+w .bashrc
例三:拿掉每个人可执行的权限:
chmod a-x .bashrc
权限意义
其中目录的x比较难理解,如果某个目录没有x权限(即使有r的权限),我们是无法切换到该目录下的,也无法执行该目录下的指令。
例子:
Linux文件类型与扩展名
查阅课本。
三、Linux目录配置
文件配置的标准:FHS
如果每个人都按照自己的方式配置目录,那管理起来非常麻烦,所以有了FHS (Filesystem Hierarchy Standard) 这个东西来规范。
目录的介绍还是好好看书吧,我现在也没搞太懂呢!
绝对路径与相对路径
从根目录开始写的就是绝对路径,例如 /home/dmtsai/.bashrc,否则就是相对路径,例如 ./home/dmtsai 。简单来说,不是以 / 开头的就是相对路径。(跟windows一个道理)
举例:我现在在 /home 这个目录,我要进入 /var/log 这个目录:
cd /var/log # 绝对路径
cd ../var/log # 相对路径,这里的..代表上一级目录
# . 或 ./ 代表当前目录,.. 或 ../ 代表上一级目录