Linux(三):Linux目录结构与文件基本属性

目录

1. Linux目录结构

1.1. Linux目录结构

1.2. 根目录下文件介绍

2. 文件基本属性

2.1. 查看文件

2.2. 文件类型

2.3. 文件权限

3. 修改文件属性

3.1.  文件默认权限

3.2. 修改权限

3.3. 更改文件属主和属组


1. Linux目录结构

1.1. Linux目录结构

在Linux底下,目录结构为树状结构,所有的文件与目录都是由根目录 /开始的。那是所有目录与文件的源头,其他目录通过挂载可以将它们添加到树中,通过解除挂载可以移除它们。

绝对路径:
路径的写法,由根目录 / 写起,例如: /usr/share/work目录。

相对路径:
路径的写法,不是由 / 写起,例如由 /usr/share/work 要到 /usr/share/man 底下时,可以写成: cd ../man 。

表示当前目录

.. 表示上级目录

1.2. 根目录下文件

切换到根目录下:cd /

执行 命令: ls

显示根目录下文件列表:

/ 根目录,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中。
/bin bin是Binary的缩写, 存放二进制可执行文件(ls,cat,mkdir等),常用命令一般都在这里。
/boot 存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
/dev dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。
/etc 存放系统管理和配置文件。
/home 用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。比如用户user的主目录就是/home/user,可以用~user表示。~表示当前用户的家目录。
/lib 存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
/media linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。
/mnt 系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统。
/opt  主机额外安装软件所摆放的目录。比如安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
/proc 此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的目录。
/root 系统管理员root的家目录,系统第一个启动的分区为/,所以最好将/root和/放置在一个分区下。
/sbin s就是Super User的意思,存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。如ifconfig等。
/srv 服务启动之后需要访问的数据目录。
/sys 内核设备树的一个直观反映。
/tmp 存放一些临时文件的。
/usr Unix Software Resource的缩写,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。
/var 存放着在不断扩充着的东西,将那些经常被修改的目录放在这个目录下。包括各种日志文件。

更多目录结构介绍,参考:https://blog.csdn.net/m0_38044196/article/details/72844025

2. 文件基本属性介绍

2.1. 查看文件

使用ls -l或者ll命令:

上面文件属性说明:

2.2. 文件类型

文件的第一个属性(上面实例test的第一个属性d):文件类型,常见类型有:

- 普通文件
d 目录文件
l 链接文件
b 装置文件里面的可供储存的接口设备(可随机存取装置)
c 装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)
s socket文件
p 管道类型文件

2.3. 文件权限

第一个属性后面9个字符代表文件的权限,均为【rwx-】的组合,每三个为一组,共分为三组:

363003_1227493859FdXT

r:read,可读,对应数字4;

w:write,可写,对应数字2;

x:execute,可执行,对应数字1,

-:没有对应权限,可用0表示;

第一组:1-3位,用户(创建改文件的用户,user,用u表示)权限;

第二组:4-6位,用户组(文件拥有组,和user同组,group,用g表示)权限;

第三组:7-9位,其他人(others,用o表示)权限;

此外, a 则代表 all 亦即全部的身份。

实例中test的权限rwxr-xr-x:u=rwx,g=r-x,o=r-x,用数字表示为 :755(7=4+2+1,5=4+0+1,5=4+0+1)

3. 修改文件属性

3.1.  文件默认权限

普通文件,默认最大权限为开放读写(rw-rw-rw-),即“666”;目录默认最大权限是“777”;

创建普通文件或者目录,用上述默认最大权限减去遮罩码:

root用户默认遮罩码是0022,普通用户是0002(第一位是特殊权限)

因此用root用户创建普通文件和目录,其权限为:

普通文件:666 - 022 = 644,即 rw-r--r--,

目录文件:777 - 022 = 755,即rwxr-xr-x。

umask命令可显示和修改遮罩码,修改只在当前shell生效,若要永久生效,可修改/etc/bashrc各用户的默认遮罩码。

3.2. 修改权限

root和文件属主可用 chmod修改文件权限:

方式一:使用数字修改

chmod [-R] xyz 文件或者目录名

xyz : 数字类型的权限属性,为 rwx 属性数值的相加。

-R : 进行递归(recursive)的持续变更,亦即连同次目录下的所有文件都会变更。

eg:chmod 777 a.txt ,将普通文件a.txt的权限设置为:rwxrwxrwx

方式二:使用符号修改

chmod [-R] u/g/o/a +/-/= rwx 文件或者目录名

u/g/o/a 分别是上述属主用户user,属组用户group,其他用户others,和所有用户all。

+/-/= 分别是加入,除去,设定。

eg:chmod u=rwx,g+x,o-w a.txt,将普通文件a.txt的属主权限设置为rwx,属组加入x权限,其他用户除去w权限。

3.3. 更改文件属主和属组

更改文件属组:chgrp

chgrp [-R] 属组名 文件名

更改文件属主,也可同时更改文件属组:chown

chown [-R] 属主名 文件名

chown [-R] 属主名:属组名 文件名

修改的属主和属组必须在/etc/password、/etc/group中存在。

更多文件属性介绍参考:https://blog.csdn.net/wangzhenyu177/article/details/52080031

猜你喜欢

转载自blog.csdn.net/ynzz123/article/details/82874694