Linux学习笔记(3)——文件权限与目录配置
文件权限与目录配置
一、用户与用户组
- 用户
- 用户组
- 其他人
二、Linux文件权限概念
2.1 Linux文件属性
文件类型:
d
:目录-
:文件l
:链接文件b
:设备文件里可供存储的周边设备(可按块随机读写的设备,硬盘与软盘)c
:设备文件里的串行端口设备(键盘、鼠标等一次性读取设备)s
:数据接口文件(sockets)p
:数据输送文件(FIFO,pipe)
2.2 如何修改文件属性与权限
chgrp
:修改文件所属用户组
chown
:修改文件拥有者
chmod
:修改文件权限,SUID、SGID、SBIT等特性
- 数字类型修改文件权限
r
:4
w
:2
x
:1
- 符号类型修改文件权限
- 四种身份:
u
、g
、o
、a
- 三种操作:
+
、-
、=
- 三种权限:
r
、w
、x
- 四种身份:
2.3 目录与文件的权限意义
- 文件
r
:读取w
:编辑、新增、修改(但不含删除)x
:执行
- 目录
r
:读取(ls
)w
:改动目录结构列表(mv
、rm
、touch
...)- 建立新的文件与目录
- 删除已存在的文件与目录
- 更改文件目录名
- 移动该目录内的文件、目录位置
x
:用户能否进入该目录成为工作目录(cd
)
注:开放目录给任何人浏览时,至少应该给予r
和x
权限,w
权限不可随便给。
三、Linux目录配置
3.1 Linux目录配置的依据——FHS
Filesystem Hierarchy Standard:让用户可以了解到已安装的软件通常放置于哪个目录下。
三层结构
/
(root,根目录):与启动系统有关/bin
:单人维护模式下还能够被使用的命令。(cat、chmod、chown、date、mv、mkdir、cp、bash...)/boot
:放置启动时会用到的文件。/dev
:任何设备与接口设备都是以文件的形式存在于该目录。/etc
:系统主要的配置文件(不要放可执行文件在该目录)/etc/opt
:放置第三方辅助软件/opt的相关配置文件
/home
:系统默认的用户家目录~
:当前用户的家目录~admin
:admin的家目录
/lib
:放置启动时会用到的函数库,以及在/bin或/sbin下面的命令会调用的函数库/lib64
:64位函数库的目录/media
:放置可删除设备/mnt
:放置挂载设备/opt
:第三方辅助软件放置的目录/proc
:该目录本身是一个虚拟文件系统,放置的数据在内存中,例如系统内核、进程信息、外接设备的状态/root
:系统管理员(root)的家目录(原因:进入单人维护模式而仅挂载根目录时,该目录即可拥有root的家目录/run
:系统启动后所产生的各项信息/sbin
:启动过程中所需要的命令,包括启动、修复、还原系统/srv
:一些网络服务启动后,这些服务所需要使用的数据目录,WWW、FTP等/sys
:类似于/proc
,记录内核与系统硬件信息相关的内容/tmp
:一般用户或正在执行的程序暂时放置文件的地方,定期清理/usr
:第二层FHS/var
:第三层FHS
/usr
(unix software resource):与软件安装/执行有关- 必要
/usr/bin/
:一般用户能够使用的命令(bin -> usr/bin
)/usr/lib/
:lib -> usr/lib
/usr/local/
:系统管理员在本机安装自己下载的软件(非发行版默认提供),建议安装到此目录/usr/sbin/
:非系统正常运行所需要的系统命令(sbin -> usr/sbin
)/usr/share/
:放置只读的数据文件,不分硬件架构均可读取/usr/share/man
:在线帮助文件/usr/share/doc
:软件的说明文档/usr/share/zoneinfo
:与时区有关的时区文件
- 建议
/usr/games/
:游戏相关/usr/include/
:C/C++等程序语言的头文件与包含文件放置处,Tarball方式(*.tar.gz)安装某些程序时会用到其中的文件/usr/libexec/
:某些不被一般用户常用的执行文件或脚本等/usr/lib64/
:lib64 -> usr/lib64
/usr/src/
:源代码建议放置到这里,内核源代码放置到/usr/src/Linux/
- 必要
/var
(variable):与系统运行过程有关/var/cache/
:应用程序本身运行过程中会产生的一些缓存/var/lib/
:程序本身执行时,需要使用到的数据文件放置的目录/var/lock/
:设备或文件资源上锁/var/log/
:日志文件/var/mail/
:个人电子邮件(/var/mail -> /spool/mail
)/var/run/
:某些程序或服务启动后,PID放置在该目录(/var/run -> /run
)/var/spool/
:放置一些队列数据,排队等待其他程序使用的数据
3.2 目录树
3.3 绝对路径与相对路径
- 绝对路径:根目录写起
- 相对路径:相对于当前路径写起
.
:当前目录,也可用./
表示..
:上层目录,也可用../
表示
3.4 CentOS的观察