Linux的文件权限与目录配置
一、用户与用户组
1. 文件所有者:就是创建这个文件的人
用途:当多用户共同操作同一台linux主机时,你创建的文件不希望被其他人看到,就需要把这个文件设置成只有文件所有者才能查看和修改这个文件
2. 用户组:多个用户在一个组内,如果一个文件属于这个用户组,则这个组内的所有成员都具有查看文件的权限,相应的,其他的用户组则不具有这个权限,如:
一个文件有两个用户组,这两个用户组都是root,当普通用户想要查看这个文件的时候就会发现无法查看,因为这个文件不属于sd这个用户组
3. 其他人:是相对来说的
二、文件属性
1. 文件类型:[d] 目录
[-] 文件
2. 文件权限:
读 写 可执行 无权限
-rwxrwxr--
其他人对此文件的权限
文件类型 文件所属用户组的权限
文件所有者的权限
每个文件都具有rwx这个三个属性,这个三个属性依次以二进制数字代表为4,2,1
2. 常用命令
ls 查看文件
ls –al 查看文件详细信息
chmod 777 xiaolu 修个文件权限
chgrp rootinstall.log 将install.log改成root这个用户组
chown bininstall.log 将install.log改成bin这个帐号
三、目录与文件权限意义
四、文件种类与扩展名
Linux下一切皆文件
文件能不能被执行,只与文件的属性有关,和文件的扩展名没有任何关系
常用的文件扩展名:
.sh : 脚本或批处理文件
*Z *tar *tar.gz *zip *tgz:经过打包的压缩文件
*html *php :网页相关文件,分别代表HTML语法和PHP语法的网页文件
其中不同颜色的文件、目录有不同的含义:
文件颜色的代表含义:
蓝色:目录
绿色:可执行文件
红色:压缩文件
蓝绿色:链接文件
白色:其他文件
黄色:设备文件,其中包括block,char,fifo.
五、目录配置
目录配置标准FHS
重要的三个目录:
/(root ,根目录):与开机系统有关
/usr (UNIX soft resource):与软件安装/执行有关
/var (variable):与系统运作过程有关
注意:
有五个不可与根目录放在不同分区的目录,分别是:
/lib 执行文件所需的函数库与内核所需的模块
/dev 所需要的设备文件
/etc 配置文件
/bin 重要执行文件
/sbin 重要的系统执行文件
这是因为跟目录所在的分区是系统开机过程中唯一挂载的分区,所以根目录下与开机有关的目录不能与根目录放在不同分区
根目录及其下子目录的介绍:
| 描述 |
/ | 根目录 |
/bin | 做为基础系统所需要的最基础的命令就是放在这里。比如 ls、cp、mkdir等命令;功能和/usr/bin类似,这个目录中的文件都是可执行的,普通用户都可以使用的命令。 |
/boot | Linux的内核及引导系统程序所需要的文件,比如 vmlinuz initrd.img 文件都位于这个目录中。在一般情况下,GRUB或LILO系统引导管理器也位于这个目录;启动装载文件存放位置,如kernels,initrd,grub。一般是一个独立的分区。 |
/dev | 一些必要的设备,声卡、磁盘等。还有如 /dev/null. /dev/console /dev/zero /dev/full 等。 |
/etc | 系统的配置文件存放地. 一些服务器的配置文件也在这里;比如用户帐号及密码配置文件; /etc/opt:/opt对应的配置文件 /etc/X11:Xwindows系统配置文件 /etc/xml:XML配置文件 …… |
/home | 用户工作目录,和个人配置文件,如个人环境变量等,所有的账号分配一个工作目录。一般是一个独立的分区。 |
/lib | 库文件存放地。bin和sbin需要的库文件。类似windows的DLL。 |
/media | 可拆卸的媒介挂载点,如CD-ROMs、移动硬盘、U盘,系统默认会挂载到这里来。 |
/mnt | 临时挂载文件系统。这个目录一般是用于存放挂载储存设备的挂载目录的,比如有cdrom 等目录。可以参看/etc/fstab的定义。 |
/opt | 可选的应用程序包。 |
/proc | 操作系统运行时,进程(正在运行中的程序)信息及内核信息(比如cpu、硬盘分区、内存信息等)存放在这里。/proc目录伪装的文件系统proc的挂载目录,proc并不是真正的文件系统,它的定义可以参见 /etc/fstab 。 |
/root | Root用户的工作目录 |
/sbin | 和bin类似,是一些可执行文件,不过不是所有用户都需要的,一般是系统管理所需要使用得到的。 |
/tmp | 系统的临时文件,一般系统重启不会被保存。 |
/usr | 包含了系统用户工具和程序。 /usr/bin:非必须的普通用户可执行命令 /usr/include:标准头文件 /usr/lib:/usr/bin/ 和 /usr/sbin/的库文件 /usr/sbin:非必须的可执行文件 /usr/src:内核源码 /usr/X11R6:X Window System, Version 11, Release 6. |
/srv | 该目录存放一些服务启动之后需要提取的数据 |
附:FHS官方英文文件:http://www.pathname.com/fhs/
六:绝对路径与相对路径
绝对路径:由根目录开始写起的文件名或目录名称
相对路径:相对于当前路径的文件名写法
Linux文件与目录管理
1. cd :切换目录
. :代表此层目录
.. :上一层目录
- :前一个工作目录
~ :代表“目前用户身份”所在的主文件夹
~amout:代表amout这个用户的主文件夹
pwd: 显示当前目录
mkdir:新建一个新的目录
-p 递归创建
rmdir:删除一个空的目录
2. 执行文件路径的变量:$PATH
当一个文件下有命令的可执行文件时,则该命令可以被执行,如果没有可执行文件就会出现-bash command not found 命令没找到
3. 查看文件与目录ls (常用命令)
ls –a 查看所有文件,包括隐藏文件
ls –d 仅列出目录本身,而不是列出目录内的文件数据
ls –l /ls –al 列出长数据串,包含文件的属性与权限等数据
4. 复制、删除与移动:cp rm mv
cp –a 在保留原文件属性的前提下复制文件
cp –i 若目标文件已经存在时,在覆盖时会先询问操作的进行
cp –r 递归持续复制,用于目录的复制行为
注意:不同身份执行cp命令时会有不同的结果产生,在默认条件下,cp的源文件与目标文件的权限是不同的,目标文件的所有者通常会是命令操作者本身
rm –i 删除文件时会主动询问,避免删除错误的文件名
rm –I bashrc* 删除所有开头为bashrc的文件名,*表示0到无穷多个任意字符
rm –r 递归删除