003. Linux基础三 P4 (inode、软硬链接)(待修订)
2020-11-08 23:32
1116 查看
1 文件元数据和节点表结构
inode表结构
每个文件的属性信息,比如:文件的大小,时间,类型等,称为文件的元数据(meta data)
node 表中有很多条记录组成,第一条记录对应的存放了一个文 件的元数据信息
第一个node表记录对应的保存了以下信息:
- inode number 节点号
- 文件类型
- 权限
- UID
- GID
- 链接数(指向这个文件名路径名称个数)
- 该文件的大小和不同的时间戳
- 指向磁盘上文件的数据块指针
- 有关文件的其他数据
目录
目录是个特殊文件,目录文件的内容保存了此目录中文件的列表及inode number对应关系
- 文件引用一个是 inode号
- 人是通过文件名来引用一个文件
- 一个目录是目录下的文件名和文件inode号之间的映射
inode表和目录
CP和inode
分配一个空闲的inode号,在inode表中生成新条目
在目录中创建一个目录项,将名称与inode编号关联
拷贝数据生成新的文件
rm和inode
链接数递减,从而释放的inode号可以被重用
把数据块放在空闲的列表中
删除目录项
数据实际上不会马上被删除,但当另一个文件使用数据块时将被覆盖
mv和inode
如果mv命令的目标和源在相同文件系统
用新的文件名创建新的目录项
删除旧目录条目对应的旧文件名
不影响inode表(除时间戳)或磁盘上的数据位置:没有数据被移动
如果src和dst不在同一个的文件系统上,mv相当于cp和rm
删除大文件
[root@centos7 dir1]# echo abc > a [root@centos7 dir1]# cat a abc [root@centos7 dir1]# cat /dev/null > a [root@centos7 dir1]# cat a
软链接和硬链接的区别
硬链接本质上就是给一个文件取一个新的名称,实质是同一个文件
ln filename [linkname]
软链接指向另一个文件,类似快捷方式,软链接文件和原文件本质上不是同一个文件
ln -s filename [linkname]
[root@centos7 ~]# touch b [root@centos7 ~]# ll 总用量 4 -rw-r--r--. 1 root root 0 10月 18 09:26 a -rw-------. 1 root root 1444 10月 18 08:45 anaconda-ks.cfg -rw-r--r--. 1 root root 0 10月 18 09:31 b [root@centos7 ~]# ln a c [root@centos7 ~]# ll 总用量 4 -rw-r--r--. 2 root root 0 10月 18 09:26 a -rw-------. 1 root root 1444 10月 18 08:45 anaconda-ks.cfg -rw-r--r--. 1 root root 0 10月 18 09:31 b -rw-r--r--. 2 root root 0 10月 18 09:26 c [root@centos7 ~]# ln -s b d [root@centos7 ~]# ll 总用量 4 -rw-r--r--. 2 root root 0 10月 18 09:26 a -rw-------. 1 root root 1444 10月 18 08:45 anaconda-ks.cfg -rw-r--r--. 1 root root 0 10月 18 09:31 b -rw-r--r--. 2 root root 0 10月 18 09:26 c lrwxrwxrwx. 1 root root 1 10月 18 09:31 d -> b [root@centos7 ~]#
相关文章推荐
- Linux正则表达式实践
- 003. Linux基础三 P3(目录操作)
- 002. Linux基础二 (命令行/括号拓展、TAB、history)
- Linux学习笔记13:JavaEE环境搭建
- 000. Linux 基础零(计算机基础、操作系统基础)
- Linux杂谈:进程锁核+实时线程导致的读写锁死循环
- Linux资源性能监控命令工具
- CentOS Linux TCP调优需要注意的点
- linux系统中firewalld防火墙管理工具firewall-config(GUI图形用户界面)
- 白帽子***与网络安全工程师教你:Kali Linux和Windows软件管理的异同【二】
- Java开发必会的Linux命令
- Linux-Iptables/Firewall服务
- Linux-Iptables/Firewall服务
- 使用udev高效、动态的管理Linux设备文件
- 白帽子***与网络安全工程师教你:Kali Linux和Windows软件管理的异同【一】
- Linux Shell CentOS 写一个显示目录结构的命令,快速寻找目录结构
- 家里还有最老一版本centos搭建的openstack,vm一直是error
- 从Linux源码看TIME_WAIT状态的持续时间
- Linux系列:快捷键、目录结构、用户目录
- Linux文件管理和用户管理