ln 硬链接与软链接
1. 命令功能
ln 可以看做是link的简写,功能是创建链接文件,链接文件包括硬链接(hard link)和软链接(符号链接,symbolic link)
2. 语法格式
ln [option] source target
ln 选项 源文件或目录 目标文件或目录
|
参数 |
参数说明 |
|
无选项 |
创建硬链接 |
|
-s |
创建软链接(符号链接) |
目录没有硬链接,只有软链接。
3. 硬软链接文件知识
1. 硬链接
硬链接文件创建方式:ln 源文件 目标文件
每个文件都有一个inode(索引)节点,这个inode就是指向文件在磁盘中具体存放的位置编号。创建硬链接,就是在创建一个文件名,这个文件名指向同一个inode索引,相当于给文件的另一个入口。例如到一个房子开始只有一个门能进入,现在又开了另一个门当做出口。这样做的好处,例如备份文件,删除源文件,只是把源文件名删除了,还可以通过硬链接文件访问这个文件,放置误删除。
硬链接的特性:
- 具有相同inode节点的多个文件互为硬链接。
- 删除源文件或硬链接文件其中之一,文件实体没有被删除。
- 只有删除源文件及全部硬链接文件后,文件实体才会被删除。
- 可以给文件设置硬链接,来防止重要文件被误删。
- 硬链接可以用rm命令删除。
- ls –lih 查看第三列,即硬链接数。
- 对于静态文件(文件没有被调用),当对应的硬链接数为0时,文件就会被删除
实例:创建硬链接
[root@localhost DIR]# ln 123 abc
[root@localhost DIR]# ls -l
total 0
-rw-r--r--. 2 root root 0 Mar 13 23:21 123
-rw-r--r--. 2 root root 0 Mar 13 23:21 abc #abc是123的硬链接文件
[root@localhost DIR]# ls –lih
total 0
786446 -rw-r--r--. 2 root root 0 Mar 13 23:21 123 #inode号相同;2 表示有硬链接数:3
786446 -rw-r--r--. 2 root root 0 Mar 13 23:21 abc
[root@localhost DIR]# ln 123 def
[root@localhost DIR]# ls -lih
total 0
786446 -rw-r--r--. 3 root root 0 Mar 13 23:21 123 # 硬链接数有3
786446 -rw-r--r--. 3 root root 0 Mar 13 23:21 abc
786446 -rw-r--r--. 3 root root 0 Mar 13 23:21 def
[root@localhost DIR]# ls -lih 123
786446 -rw-r--r--. 3 root root 0 Mar 13 23:21 123
2. 软链接
软链接(符号链接),类似windows中的快捷方式。
软链接创建方式:ln –s 源文件 目标文件
[root@localhost home]# ls -l test.txt
-rw-r--r--. 1 root root 27 Mar 14 22:45 test.txt
[root@localhost home]# ln -s test.txt test.txt_link #创建软链接
[root@localhost home]# ls -l test.txt test.txt_link
-rw-r--r--. 1 root root 27 Mar 14 22:45 test.txt
lrwxrwxrwx. 1 root root 8 Mar 14 22:45 test.txt_link -> test.txt #l:软链接标识符
软链接文件和源文件的inode号不一样,链接数也不一样
[root@localhost home]# ls -lih test.txt test.txt_link
786434 -rw-r--r--. 1 root root 27 Mar 14 22:45 test.txt
786448 lrwxrwxrwx. 1 root root 8 Mar 14 22:45 test.txt_link -> test.txt
ln 硬链接与软链接的更多相关文章
- Linux ln命令:在文件之间建立链接(硬链接和软链接)详解版1
Linux ln命令:在文件之间建立链接(硬链接和软链接)详解版 < Linux创建文件及修改文件时间戳(touch命令)Linux复制文件和目录(cp命令) > <Linux就该这 ...
- Linux系统硬链接和软链接介绍
1.链接的概念 在Linux系统中链接分为硬链接和软连接两种,一种为硬链接,另一种为软连接或符号链接(symbolic Link).ln命令就是创建链接文件的,在默认不带参数的情况下,执行ln命令创建 ...
- 实例讲解Linux系统中硬链接与软链接的创建
导读 Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link).默认情况下,ln命令产生硬链接.硬链接与软链接的区别从根本上要从Inode节点说 ...
- 转:理解 Linux 的硬链接与软链接
Linux 的文件与目录 现代操作系统为解决信息能独立于进程之外被长期存储引入了文件,文件作为进程 创建信息的逻辑单元可被多个进程并发使用.在 UNIX 系统中,操作系统为磁盘上的文本与图像.鼠标与键 ...
- Linux文件系统中硬链接和软链接的区别 (转)
建立硬链接命令:ln src-link dest-link建立软链接:ln -s src-link dest-link 1. 硬链接是别名,软链接是快捷方式 2. 硬链接和源链接指向同一个i节 ...
- 理解 Linux 的硬链接与软链接
Linux 的文件与目录 现代操作系统为解决信息能独立于进程之外被长期存储引入了文件,文件作为进程创建信息的逻辑单元可被多个进程并发使用.在 UNIX 系统中,操作系统为磁盘上的文本与图像.鼠标与键盘 ...
- 理解 Linux 的硬链接与软链接【转】
转自:https://www.ibm.com/developerworks/cn/linux/l-cn-hardandsymb-links/index.html 从 inode 了解 Linux 文件 ...
- 【Linux】Linux系统硬链接和软链接
在linux系统中有种文件是链接文件,可以为解决文件的共享使用.链接的方式可以分为两种,一种是硬链接(Hard Link),另一种是软链接或者也称为符号链接(Symbolic Link). 查看lin ...
- Linux下硬链接与软链接
linux下的链接文件,尤其是软链接使用非常的频繁: 链分为硬链接(hard link)与软链接(symbolic link) 两种:关键在于inode: 硬链接: 当系统需要读取一个文件时,就会去读 ...
随机推荐
- Amaze ui tree 刷新数据
最近在做代码生成器,界面用的是Amaze ui ,但是在用tree的时候发现数据绑定不会自动更新,去百度.谷歌查也没有查到,没办法只能自己做一个demo 在这贴上效果图 demo 下载地址https: ...
- C/C++中动态内存分配
代码段:用来存放程序执行代码的一块内存区域.这部分内存大小在程序运行前已经知道,通常属于只读,其中包括只读的字符串常量,不可改变 BBS段:用来存放存放程序中未初始化的全局变量及静态变量,属于静态内存 ...
- The import org.apache.hadoop.mapreduce cannot be resolved
ubuntu@VM---ubuntu:~$ sudo apt--src.tar.gz Reading package lists... Done Building dependency tree Re ...
- H5音乐播放方案
环境:移动端.浏览器.微信 问题:音乐不自动播放问题 原因: 1.微信端(前置条件添加音乐的时候一定要设置自动播放),有的时候同一款手机.统一个微信版本,会出现音乐不自动播放的问题,无解~~~~~~~ ...
- 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_01 File类_3_绝对路径和相对路径
- 类StringBuffer
1字符串声明和创建 public StringBuffer() 无参构造函数 public StringBuffer(int capacity) 指定容量的字符串缓冲区对象 public String ...
- JavaScript 基础类型,数据类型
1.基础类型:undefined,null,Boolean,Number,String,Symbol Undefined类型:一个没有被赋值的变量会有个默认值undefined; Null类型:nul ...
- Spring Boot 之 RabbitMQ 消息队列中间件的三种模式
开门见山(文末附有消息队列的几个基本概念) 1.直接模式( Direct)模式 直白的说就是一对一,生产者对应唯一的消费者(当然同一个消费者可以开启多个服务). 虽然使用了自带的交换器(Exchang ...
- HDFS数据流——写数据流程
剖析HDFS文件写入 假设文件ss.avi共200m,其写入HDFS指定路径/user/atguigu/ss.avi流程如下: 1)客户端向namenode请求上传文件到指定路径,namenode通过 ...
- Ubuntu 12.04安装Gitlab及问题解决
最近看了下Git,并且之前听同学说过gitlab这个东西,就想自己也搭建一个gitlab,做一个像github那样的代码管理站点,现在的gitlab要安装确实是非常非常方便, https://abou ...