ln 硬链接介绍
硬链接:在linux文件系统中多个文件名指向同一个索引节点(Inode)是正常允许的。硬链接文件就相当于文件的另一个入口。
硬链接的作用:允许一个文件拥有多个有效路径(多个入口),这样用户就可以建立硬链接到重要文件,以防止“误删”源数据
(很多硬件存储,如netapp存储中的快照功能就应用了这个原理,增加一个快照就多了一个硬链接。)
查看硬链接:ls –l 可以指定文件

创建硬链接:ln 源文件 硬链接文件

硬链接文件的inode是相同的:

删除硬链接文件任意一个,文件可以找回:

如何查找所有硬链接: find / -type -f |xargs ls -lhi|grep (Inode号)


硬链接优点:防止重要的文件被误删除,若有多人需要操作同一个文件,可以创建许多硬链接。比较大的文件在服务器可以只存储一份,大家各自使用对应的硬链接即可。
注意:目录的硬链接不允许ln命令来创建
硬链接知识总结:
1) 具有相同的inode节点号的多个文件是互为硬链接文件。
2) 删除硬链接文件或者删除源文件任意之一,文件实体并未被删除
3) 只有删除了源文件及所有对应的硬链接文件,文件实体才会被删除
4) 当所有的硬链接文件及源文件被删除后,再存放新的数据会占用这个文件的空间或者磁盘fsck检查的时候,删除的数据也会被系统回收。
5) 硬链接文件就是文件的另一个入口(相当于超时的前门、后门一样)
6) 可以通过给文件设置硬链接,来防止重要文件被删除。
7) 通过命令:“ln 源文件 硬链接文件”,即可完成创建硬链接。
8) 硬链接文件可以用rm删除的
9) 对于静态文件(没有进程正在调用的文件)来讲,当对应硬链接数为0(i_link)文件就被删除(i_link的查看方法:ls –l结果的第三列就是)
ln 硬链接介绍的更多相关文章
- ln 硬链接与软链接
1. 命令功能 ln 可以看做是link的简写,功能是创建链接文件,链接文件包括硬链接(hard link)和软链接(符号链接,symbolic link) 2. 语法格式 ln [option] ...
- Linux命令 – ln 软连接与硬链接区别介绍
ln命令可以生成软链接和硬链接,也可叫做符号链接和实体链接. 有兴趣深入理解的可以查阅相关文档,一般的读者只需记住以下几点即可: 不管是软链接还是硬链接都不会额外增加磁盘空间(虽然实际情况可能会多占用 ...
- Linux系统硬链接和软链接介绍
1.链接的概念 在Linux系统中链接分为硬链接和软连接两种,一种为硬链接,另一种为软连接或符号链接(symbolic Link).ln命令就是创建链接文件的,在默认不带参数的情况下,执行ln命令创建 ...
- linux命令大全之ln命令详解(创建软链接和硬链接)
ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接,分为软链接.硬链接.软链接相当于windows的快捷方式,下面是使用方法和示例 ln是linux中又一 ...
- linux命令 - ln - 创建和删除软、硬链接
linux命令 - ln - 创建和删除软.硬链接 在Linux系统中,内核为每一个新创建的文件分配一个Inode(索引结点),每个文件都有一个惟一的inode号.文件属性保存在索引结点里,在访问文件 ...
- 软/硬链接指令:ln
语法: ln [选项] 原文件 目标文件 选项: -s 创建软连接(创建软链接时,若所在文件夹不一致,原文件要使用绝对路径) 硬链接特征: 1.拥有相同i节点和存储block块,可以看成是同一个 ...
- linux 下的使用 ln 创建 软链接 和 硬链接
linux 下的一个指令 ln 作用: 创建软链接或者硬链接 Linux 系统下每创建一个文件,系统都会为此文件生成一个 index node 简称(inode) ,而每一个文件都包含用户数据(use ...
- Linux:ln命令详解(软连接,硬链接)
ln ln命令用来为文件创件连接,连接类型分为硬连接和软连接(符号连接)两种,默认的连接类型是硬连接.如果要创建软连接必须使用"-s"选项. 硬链接 建立硬链接时,在另外的目录或本 ...
- Linux命令——ln命令创建和删除软、硬链接(6/29)
ln命令用来为文件创建链接,连接类型分为硬链接和符号链接两种,默认的连接类型是硬连接.如果要创建符号连接必须使用"-s"选项. 用法: ln [options] sou ...
随机推荐
- mysql为用户开启Trigger的权限
mysql中trigger的使用也需要权限,如果在使用中出现类似: TRIGGER command denied to user ‘username’@’192.168.0.112′ for tabl ...
- C#数据仓储类
https://ninesky.codeplex.com/SourceControl/latest /*============================== 版本:v0.1 创建:2016.2 ...
- Hibernate进行对象的增删改查
首先我们看看hibernate手动配置步骤 (这个了解一点就可以了,以后是不会自己全部手动配置的) 1. 创建WEB项目 2 下载hibernate-release-4.3.11.F ...
- Spring 注解方式引入配置文件
配置文件,我以两种为例,一种是引入Spring的XML文件,另外一种是.properties的键值对文件: 一.引入Spring XML的注解是@ImportResource @Retention(R ...
- laravel的seeder数据填充
1.简介//Laravel 包含了一个简单方法来填充数据库——使用填充类和测试数据.所有的填充类都位于database/seeds目录.//填充类的类名完全由你自定义,但最好还是遵循一定的规则,比如可 ...
- 统计频率(map映照容器的使用)
问题描述 AOA非常喜欢阅读莎士比亚的诗,莎士比亚的诗中有种无形的魅力吸引着他!他认为莎士比亚的诗中之所以些的如此传神,应该是他的构词非常好!所以AOA想知道,在莎士比亚的书中,每个单词出现的频率各 ...
- laravel 单词
return view('admin.user.login'); 返回 admin文件夹下, user文件夹中 login文件模板 setcookie 语法 setcookie(name,value, ...
- 点击CheckBox让Gridview控件在编辑与正常状态之间切换
昨晚快休息时,还有一位网友咨询Insus.NET,他想在开发时,实现一个小功能,就是想让用户在点击Gridview控件第一列的CheckBox之后,GridView进入编辑状态,取消选中的CheckB ...
- MFC进程的创建销毁、线程的创建与交互
进程的创建 STARTUPINFO si; //**成员DWORD dwFlags;表示结构体当中哪些成员有效.**STARTF_USESHOWWINDOW|STARTF_USEPOSITION PR ...
- 深入理解Java线程池:ThreadPoolExecutor
线程池介绍 在web开发中,服务器需要接受并处理请求,所以会为一个请求来分配一个线程来进行处理.如果每次请求都新创建一个线程的话实现起来非常简便,但是存在一个问题: 如果并发的请求数量非常多,但每个线 ...