linux中的硬连接和软连接
linux中的硬连接和软连接
背景
linux中的文件主要分3块,
- 真正的数据
- 索引节点号(inode index)
- 文件名称
读取文件的顺序是通过文件名称。找到相应的inode。然后通过inode找到相应的数据,进行读取。
连接
当我们须要在不同的文件夹,用到同样的文件时。我们不须要在每个须要的文件夹下都放一个必须同样的文件,我们仅仅要在某个固定的文件夹,放上该文件,然后在 其他的文件夹下用ln命令链接(link)它就能够,不必反复的占用磁盘空间。
硬连接
硬连接就是将多个不同的文件名称指向同一个inode index。这样通过当中的随意一个文件名称。都会訪问到同一份数据。例如以下图所看到的。文件名称1,文件名称2,文件名称3都会通过同一个inode訪问到同一份数据。

软连接
软连接相似windows中的快捷方式。它不是直接连到源文件的inode上的,而是一个新的特殊的文件,它记录了被连的文件名称3的路径。

example
➜ /tmp ln -s test test1 #symbolic link
➜ /tmp ln test test2 #hard link
➜ /tmp ls -l test*
6508253 -rw-r--r--@ 2 deshengkong wheel 3423 7 10 20:08 test
6534236 -rw-r--r-- 1 deshengkong wheel 103 7 13 10:22 test.php
6544973 lrwxr-xr-x 1 deshengkong wheel 4 7 13 11:13 test1 -> test # symbolic link 该文件的类型是l(link)
6508253 -rw-r--r--@ 2 deshengkong wheel 3423 7 10 20:08 test2 # hard link 该文件的文件类型是普通文件
➜ /tmp rm test #delete source file
➜ /tmp cat test1 #symbolic link file找不到源文件。所以报错。
cat: test1: No such file or directory
➜ /tmp cat test2 #hard link file 正常
reference
http://www.cnblogs.com/itech/archive/2009/04/10/1433052.html
http://www.cnblogs.com/joeblackzqq/archive/2011/03/20/1989625.html
linux中的硬连接和软连接的更多相关文章
- Linux文件系统的硬连接和软连接
title: Linux文件系统的硬连接和软连接 date: 2018-02-06T20:26:25+08:00 tags: ["文件系统"] categories: [" ...
- 初窥Linux 之 区分硬连接和软连接
一.Linux下的两种连接文件及创建方式 在Linux下面的连接文件有两种——软连接和硬连接,虽然都是连接文件,但两者却有很大的区别.一种是类似于Windows的快捷方式功能的文件(或目录),这种连接 ...
- Linux中的硬链接和软连接
1.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link).默认情况下,ln命令产生硬链接. [硬连接]硬连接指通过索引节点 ...
- linux文件的硬连接和软连接
建立软连接:ln -s 原路径 目标路径 原理示意图: 特点: 1. 相当于win中的快捷方式 2. 删除链接文件,源文件不受影响 3. 删除源文件,链接文件失效 4. ...
- linux系统文件属性-硬连接、软连接
1 硬链接概念 硬链接是指通过索引节点(Inode)来进行链接,在Linux(ext2,ext3)文件系统中,保存在磁盘分区中的文件不管是什么类型都会给它分配一个编号,这个编号被称为索引节点编号(In ...
- 硬连接与软连接,inode与links
硬连接和软连接,第一感觉就像是window的快捷方式,实则不然 要说硬连接和软连接,那就必须了解inode和block以及分区了 EXT文件系统在创建分区的时候,就划分了两块区域,inode tabl ...
- 【Linux】Shell学习笔记之四——文件和目录管理(硬连接和软连接)
在这节将要学习linux的连接档,在之前用"ls -l" 查看文件属性的命令时, 其中第二个属性是连接数.那么这个连接数是干什么的?这就要理解inode. 先说一下文件是怎么存储的 ...
- linux ------ 硬连接和软连接(软连接也叫符号连接)
在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号 (Inode Index).在Linux中,多个文件名指向同一索引节点是存在的.一般这种连接就是硬连接 ...
- linux 硬连接与软连接
1.linux中文件占用一个inode,inode指向文件内容.2.文件名可以认为是一个指针,指向inode.硬连接相当于指针的整体拷贝,并不是对文件内容的拷贝.两个文件名(两个指针)都能修改文件,删 ...
随机推荐
- 在javascript中对于this指向的再次理解
总所周知,function () {}函数体内的this对象指向的是调用该函数的对象,那么我们看一下这个例子 <script> var length = 3; function fn () ...
- python一些被我忽略的知识
最后一个不小心打错了,刚看到,try ...else 与 while/for else的相同
- CSS常用样式--background
CSS background 属性 参考:W3school- CSS background 所有浏览器都支持 background 属性,其简写形式,在一个声明中设置所有的背景属性,各属性需按顺序,语 ...
- 《剑指Offer》——试题1:赋值运算符函数
题目:如下类型为CMyString的声明,请为该类型添加赋值运算符函数. class CMyString { public: CMyString(char* pData = NULL); CMyS ...
- 双系统 windows引导项添加
[root@MiWiFi-R2D-srv ~]# vi /etc/grub.d/40_custom #!/bin/sh exec tail -n +3 $0# This file provides a ...
- webpack2.X、Vue学习以及将两者相结合
在家的闲暇时间来完善自己的前端知识. 经过两三天的学习,按照webpack文档学习,vue文档学习,最后实现了两者结合的目标. webpack 按照网站上guide的流程依次学习 1.使用npm安装w ...
- 紫书 例题 11-12 UVa 1515 (最大流最小割)
这道题要分隔草和洞, 然后刘汝佳就想到了"割"(不知道他怎么想的, 反正我没想到) 然后就按照这个思路走, 网络流建模然后求最大流最小割. 分成两部分, S和草连, 洞和T连 外围 ...
- Noip-pj2018游记
2019/1/3 搬运于我的luogu博客 2018/10/9 没有去试机,在学校搞文化课去了.准考证是让学校的信息课老师帮我拿的 回家后随手A了P1198 P3870 P2846 P1531 感觉真 ...
- 嵌入式(C)笔试题
1 读程序段,回答问题 (a) int main(int argc,char *argv[]) { int c=9,d=0; c=c++%5; d=c; printf("d=%d\n&quo ...
- 一个tomcat下部署多个项目或一个服务器部署多个tomcat
最近需要把两个项目同时部署到服务器上,于是研究了一下,页借鉴了很多别人的方法,把过程记录下来,以儆效尤. 目录: 1,一个tomcat下同时部署两个项目(多个项目可以参考) 1.1项目都放在webap ...