1、目录管理:
- Linux系统中目录组成结构
- “.”“..”目录
- 目录访问权限
- Linux常见的系统目录
- 强制位与冒险位
- umask掩码
2、Linux系统中目录组成结构
Linux系统的目录组成类似一个倒置的树形结构,它以一个名为根(“/”)的目录开始向下延伸。
无论在Linux中有多少分区都只有一个根。
在Linux系统中对应的字符为“d”
3、“.”“..”
“.”代表当前目录
“..”代表上级目录
4、目录访问权限
目录是一种特殊的文件。
目录上的读写执行权限与普通文件有所不同。
- 读:用户可以读取目录内的文件
- 写:单独使用没有作用。它与读和执行权限连用可以在目录内添加与删除任何文件。
- 执行:用户可以进入目录,调用目录内的资料
5、Linux常见的系统目录
/bin:存储常用用户指令
/boot:存储核心、模块映像等启动用文件
/dev:存储设备文件
/etc:存储系统、服务的配置目录与文件
/home:存放个人主目录
/lib:存放库文件,诸如核心模块、驱动
/lost+found:存储fsck用的孤儿文件
/mnt:系统加载文件系统时用的常用挂载点
/opt:第三方工具使用的安装目录
/proc:虚拟文件系统,包含系统核心信息
/root:root用户的主目录
/sbin:存储系统管理用指令
/tmp:临时文件的暂存点
/usr:存放与用户直接相关的文件与目录
/var:存储在系统运行中可能会更改的数据
sysctl.conf
6、强制位与冒险位
强制位与冒险位描述
- 在Linux系统中文件除了有读写执行权限外,ext2文件系统还支持强制位(setuid 、setgid)与冒 险位(sticky)的特别权限。
- 针对文件创建者可以添加强制位(setuid),文件属组也可以添加强制位(setgid),针对其它用户有 可以添加冒险位(sticky)。
- 强制位与冒险位添加在执行权限(x)的位置上。如果该位置上原已有执行权限,则强制位与冒险位以小写字母(s或t)的方式表示,
否则,以大写字母(S或T)表示。
例:如果文件的权限为”rwx -r-- r-x”,那么如果设置了强制位与冒险位则新的权限为 “rws- r-S-r-t”。
对创建者设置强制位
- 对创建者设置强制位setuid,一般针对的是一个系统中的指令。
- 在默认情况下,用户执行一个指令,会以该用户的身份来运行。
- 当对一个指令对应的可执行文件设置了(setuid),那么任何一个用户在执行这个文件的时候,都会以指令对应的可执行文件的创建者身份来执行这个文件。
语法:chmod u±s <文件名>
例:chmod u+s /bin/ls
对组设置强制位
- 对组设置强制位setgid,一般针对的是一个目录。
- 在默认情况下,用户在某目录中创建的文件或子目录的属组是该用户的主属组。
- 如果对一个目录设置了属组的强制位,则任何用户在此目录中创建的文件或子目录都会继承此目录的属组(前提:用户有权限在目录中创建文件或子目录)。
语法:chmod g ± s <目录>
例:chmod g+s /dir
对其他用户设置冒险位
对其他用户设置冒险位sticky,一般针对的是一个目录。
在默认情况下,如果一个目录对用户有r、w和x权限,则这个用户可以在此目录中建立与删除任何文件。
一旦在目录上设置了冒险位,则表示在此目录中,只有文件的拥有者、目录的拥有者与系统管理员才可以在目录中删除此文件。
通过数字来设置权限
用户可以用chmod指令来为文件设置强制位与冒险位
setuid:chmod u+s 文件名
setgid:chmod g+s 目录名
sticky:chmod o+t 目录名
强制位与冒险位也可以通过一个数字加和,放在读写执行的三位数字前来指定。
4(set uid)
2(set gid)
1(sticky)
例:要为某文件设置为”rws r-x r-x”的权限则可以使用下面的指令:chmod 4755 <文件名>
7、umask
每个用户建立文件时,此文件都会有默认权限。
默认权限的值由环境中的umask值与文件与目录的基数来确定。
用户可以自主改动umask值,并在改动后马上生效。
一般用户的默认umask值为0002,系统用户的默认umask值为0022.
文件的基数:0666 目录的基数:0777
系统文件的默认权限:0666-0022=0644
一般用户文件的默认权限:0666-0002=0664
系统目录的默认权限:0777-0022=0755
一般用户的目录权限:0777-0002=0775