(4)——文件
最后更新于:2022-04-01 14:44:16
## 一、检查文件
用ls -l以长模式查看文件的详细信息,包含当前目录的硬盘使用空间、文件类型、文件权限、硬连接数、文件拥有者、文件所属组、文件大小、更改时间、文件名称。
用file检查文件类型
由于linux中的文件名中没有扩展名,所以可能需要用file来查看文件类型。
## 二、文件类型
在linux中,所有东西都被当成文件。
文件权限前的一个字母用来表示文件类型:
-:一般文件
d:目录文件
b:块设备文件(如,硬盘)
c:字符设备文件(如,键盘、鼠标)
l:链接文件(相当于Window中的快捷方式)
p:人工管道
## 三、文件权限
对于每一个文件,Linux都提供了一套文件权限系统。
文件权限系统,将操作文件的用户都分成三类:
文件的拥有者(u)
文件所属组的成员(g)
其他用户(0)
## 四、文件权限类型
对于每一类用户,权限系统又分别提供他们三种权限
读(r):用户是否有权力读文件的内容
写(w):用户是否有权利改变文件的内容
执行(x):用户是否有权利执行文件
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bae17d87.jpg)
-rw-r--r-- :表示这是一个一般文件、拥有者有读写权限、所属组有读权限、其他人有读权限
1:
root root:第一个root代表该文件的拥有者、第二个root表示该文件的所属组。
1089:表示文件的大小
Apr 26 04:27:表示修改时间
anacoda-ks.cfg:文件名
## 五、更改文件权限
使用chmod来改变文件的当前权限
chmod [-R] 权限 文件名
只有文件的拥有者和root才可以改变文件的权限
rw- r-- r--
chmod u+x install.log #给文件拥有者增加了一个执行权限(u:表示文件拥有者,x:表示执行权限)
chmod u-x install.log #取消文件拥有者的执行权限
chmod u=rwx #给文件拥有者所有权限
r w x
4 2 1
rw- r-- r--
6 44
chmod 644 #给该文件赋予上面的rw-- r-- r--权限(用数字方式)
chmod -R 644 #更改目录的权限
## 六、建立链接
硬链接:ln 源文件 新建链接名
软连接:ln -s 源文件 新建链接名
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bae2c6c1.jpg)
给原文件 /home/test.txt 中输入内容
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bae3d9f7.jpg)
可以看到硬链接 tom.txt中的内容和 /home/test.txt中的内容一致。
删除原文件/home/test.txt
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bae50e0b.jpg)
可以看到硬链接还是存在的,里面的内容还在。上面是硬链接下面我们来看看软链接:
首先重新创建一个/home/test.txt文件,里面输入字符串
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bae640a4.jpg)
创建软链接
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bae76a36.jpg)
我们再删除原文件,看看软链接是否还能打开
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bae8873a.jpg)
目录是不可以建立硬链接的,但是可以建立软链接
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bae9a857.jpg)
下面我们给上面的jack目录里面创建一个文件,再来看看他的软链接jack1中是否有这个文件
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8baeb1de9.jpg)
## 七、ext2/3中文件的构成
在ext2和ext3文件系统中,文件以inod+block的方式存在。
一旦用rm指令删除文件中的inode记录。文件无法找回。
stat指令可以用来检查文件的block与inode状况。
## 八、所属用户
每一个文件都有一个拥有者。文件的拥有者可以改变文件的权限。
root用户可以用chown来改变文件的拥有者。
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8baec51a2.jpg)
## 九、所属组
每一个文件只能属于一个指定的组
文件的拥有者与root用户,可以用chgrp来改变文件所属组
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8baef41f6.jpg)
也可以使用chown同时更改文件的拥有者和所属组
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8baf1161d.jpg)
## 十、文件名
文件名最大为255个字符
开头为 . 的文件为隐藏文件
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8baf2229f.jpg)