Linux文件系统之hard link&symbol link
2014-02-25 16:57
295 查看
引自:https://www.ibm.com/developerworks/cn/linux/l-cn-hardandsymb-links/
这个图很清楚的表示出硬链接和软链接的方式。
1.硬链接:
基本定义:硬链接是有着相同inode号的仅文件名不同的文件(该文件名包含路径信息)。
理解:如图,hard link和原始file通过同一个inode实现链接。在使用stat/ls -li查看这两个文件名的时候,可以看到他们的inode号是一样的。
特性:
文件有相同的inode和data block
只能对已存在的文件进行创建hard link
不能交叉文件系统进行创建
不能对目录进行创建,只能对文件创建
删除一个hard link文件并不影响其他有相同inode 号的文件,并且该文件也不会被删除,只有等到所有的硬链接都删除了,才删除该inode及其相关data block的信息
2.软链接:
基本定义:某文件的数据块中存放的内容是另一文件的路径名的指向(通过实验发现,省去了相同的路径部分)。则该文件就是symbol link。symbol link 有着自己的inode号以及用户数据块。
理解:如图,symbol link有自己的inode,但是其数据块中的内容是所链接的文件的文件名。
特性:
软链接有自己的文件属性及权限等;
可对不存在的文件或目录创建软链接;
软链接可交叉文件系统;
软链接可对文件或目录创建;
创建软链接时,链接计数 i_nlink 不会增加;
删除软链接并不影响被指向的文件,但若被指向的原文件被删除,则相关软连接被称为死链接(即
dyling link,若被指向路径文件被重新创建,死链接可恢复为正常的软链接)。
相关操作:
创建硬链接:
ln 原始文件 硬链接文件
ln -s 原始文件 软链接文件
stat或者ls -li 文件名 查看inode号等信息
find 起始目录 -inum 1000 :从起始目录开始查找inode号为1000的文件
这个图很清楚的表示出硬链接和软链接的方式。
1.硬链接:
基本定义:硬链接是有着相同inode号的仅文件名不同的文件(该文件名包含路径信息)。
理解:如图,hard link和原始file通过同一个inode实现链接。在使用stat/ls -li查看这两个文件名的时候,可以看到他们的inode号是一样的。
特性:
文件有相同的inode和data block
只能对已存在的文件进行创建hard link
不能交叉文件系统进行创建
不能对目录进行创建,只能对文件创建
删除一个hard link文件并不影响其他有相同inode 号的文件,并且该文件也不会被删除,只有等到所有的硬链接都删除了,才删除该inode及其相关data block的信息
2.软链接:
基本定义:某文件的数据块中存放的内容是另一文件的路径名的指向(通过实验发现,省去了相同的路径部分)。则该文件就是symbol link。symbol link 有着自己的inode号以及用户数据块。
理解:如图,symbol link有自己的inode,但是其数据块中的内容是所链接的文件的文件名。
特性:
软链接有自己的文件属性及权限等;
可对不存在的文件或目录创建软链接;
软链接可交叉文件系统;
软链接可对文件或目录创建;
创建软链接时,链接计数 i_nlink 不会增加;
删除软链接并不影响被指向的文件,但若被指向的原文件被删除,则相关软连接被称为死链接(即
dyling link,若被指向路径文件被重新创建,死链接可恢复为正常的软链接)。
相关操作:
创建硬链接:
ln 原始文件 硬链接文件
ln -s 原始文件 软链接文件
stat或者ls -li 文件名 查看inode号等信息
find 起始目录 -inum 1000 :从起始目录开始查找inode号为1000的文件
相关文章推荐
- centos初装后并没有带上rz sz的程序。需要安装: yum install lrzsz
- windows下eclipse远程连接linux上的hadoop集群
- Linux crontab 任务调度的使用
- linux进程后台运行的几种方法
- Linux开机启动程序详解[转]
- CentOS 6.5 X64 U盘启动盘制作
- Linux环境下修改MySQL端口方法:
- Linux环境下修改MySQL端口方法: 分类: database ubuntu 测试 2014-02-25 16:42 3334人阅读 评论(0) 收藏
- Linux Find 命令使用
- linux stat命令、inode内容--ctime,mtime,atime的区别
- Linpus Linux 安装QQ 2013详解
- linux下opencv安装和配置
- CentOS系统主机名与IP地址、网关、DNS服务的配置
- linux点滴
- linux和windows下mysql密码怎样清空!
- Wo Cloud CentOS 挂载磁盘小计
- Linux socket编程
- linux ------ Platform设备驱动
- [Binospace] Linux系统性能分析的实践方法
- linux命令学习笔记