Linux中的软硬连接的实验

一、linux的文件创建、修改和删除

1、创建源文件

        普通文件:touch 目录/文件名

         列如 touch a --- 创建一个文件:a.txt文件

        目录文件:mkdir 目录/文件名 ---- 不能连续创建父子目录,但是可以连续创建同级的目录,注意不能同时创建同名文件

2、修改文件

写入内容到普通文件:echo this > a ---- 在文件a.txt中写入this 

查看inode的节点号:ls -i 文件名

创建软硬连接:ln 源文件 硬连接文件名称 ---- 默认创建出是硬链接

         ln -s 源文件 软连接文件名称 ---- 创建出软链接

查看整个文件的属性:stat 文件名

3、删除文件

rm 文件名

rm (-r) ----- 加上-r是为了删除目录文件(无论里面是否有文件), -d只能删除空目录文件

二、软硬连接的介绍

一个文件是由目录块、inode表、数据块三部分组成。

1、软链接

        软链接与硬链接有所不同,软链接就是一个普通文件,并且有着自己的 inode 号以及数据块,只不过对应的数据块里的内容存储的是另一文件的路径名的指向。删除源文件就不能访问了,并且再创建一个同名同位置的新文件,这个软连接就直接指向新文件了。

2、硬链接

        若一个 inode 号对应多个文件名,则称这些文件为硬链接,即一个 inode 节点对应两个不同的文件名,两个文件指向同一个文件,A 和 B 对文件系统来说是完全平等的。删除其中任何一个都不会影响另外一个的访问。

三、软硬连接的实验

1、创建目录,文件以及软硬连接

        在根目录创建一个练习用的test目录文件。

        并且在test下创建一个zuoye/001的文件目录,并且在001下创建lianxi.txt,并且为他加上内容“I am zuoye ”   ----- 11(字母加空格一共是11个字符)

mkdir -p test/zuoye/001

        之后创建软连接、硬链接。并且通过ls-i命令查看各自的inode。发现软连接的inode和其他都不相同,并且硬链接和源文件的inode是一样的。

 

2、查看他们的详细属性,以及硬链接次数

        你会发现源文件大小为11,并且硬文件也是11。两者的inode一模一样 ,根上文说的内容一致。并且通过ls -l查看硬链接数你会发现硬链接文件和源文件的硬连接数都为2。而软文件里面存的是指向源文件的目录信息,因为再同一个目录下,所以位置信息是直接指向lianxi.txt,所以大小为lianxi的6个字符。

3、删除源文件

 

 通过rm lianxi删除源文件,查看删除前后的目录文件信息。你会发现删除前软硬连接都可达,但是删除之后软连接变红了,即不可访问了。但是硬链接仍然可达,并且硬连接数变为1了,说明没用公用inode的文件了。

4、创建同名的源文件

新创建一个同名的普通文件,再次查看目录文件信息。你会发现,软连接可以访问到了,并且大小没有变化(这是因为两次普通文件名字一样)。

5、再次查看他们的inode,以及硬链接次数

 再次通过stat的命令查看文件详细信息,你会发现三者的inode都不相同。再看硬链接大小不变,并且所有的硬连接数都是1。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值