linux的ln命令详解 linux中的ln命令

LINUX LN命令 怎么操作最直接的方式就是在终端中 man ln然后就是详细说明 。
【linux的ln命令详解 linux中的ln命令】ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s,具体用法是:ln –s 源文件 目标文件 。
使用方式 : ln [options] source dist,其中 option 的格式为 :[-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}]
ln source dist 是产生一个连结(dist)到 source,至于使用硬连结或软链结则由参数决定 。
不论是硬连结或软链结都不会将原本的档案复制一份,只会占用非常少量的磁碟空间 。
-f : 链结时先将与 dist 同档名的档案删除
-d : 允许系统管理者硬链结自己的目录
-i : 在删除与 dist 同档名的档案时先进行询问
-n : 在进行软连结时,将 dist 视为一般的档案
-s : 进行软链结(symbolic link)
-v : 在连结之前显示其档名
-b : 将在链结时会被覆写或删除的档案进行备份
-S SUFFIX : 将备份的档案都加上 SUFFIX 的字尾
-V METHOD : 指定备份的方式
--help : 显示辅助说明
--version : 显示版本
ln 命令详解ln 命令 用来为文件创建连接linux的ln命令详解,连接类型分为硬连接(默认)和符号连接两种 。
语法
选项
其中CONTROL共有以下几种策略linux的ln命令详解:
实例
1、将目录 /usr/mengqc/mub1 下linux的ln命令详解的文件 m2.c 链接到目录 /usr/liu 下linux的ln命令详解的文件 a2.c 。
执行ln之后linux的ln命令详解 , 在 /usr/liu 目录中才有 a2.c 这一项 , 表明 m2.c 和 a2.c 链接起来(注意,二者在物理上是同一文件),利用ls -l命令可以看到链接数的变化 。
2、在目录 /usr/liu 下建立一个符号链接文件 abc,使它指向目录 /usr/mengqc/mub1 。
执行该命令后,/usr/mengqc/mub1 代表的路径将存放在名为 /usr/liu/abc 的文件中 。
Linux上ln命令详细说明及软链接和硬链接的区别硬链接就是同一个文件使用了多个别名(他们有共同的 inode) 。硬链接可由命令 link 或 ln 创建,如:
link oldfile newfile
ln oldfile newfile
由于硬链接是有着相同 inode 号仅文件名不同的文件,因此 , 删除一个硬链接文件并不影响其他有相同 inode 号的文件 。
硬链接不能对目录进行创建,只可对文件创建 。
软链接(也叫符号链接)与硬链接不同 , 文件用户数据块中存放的内容是另一文件的路径名的指向 。软链接就是一个普通文件 , 只是数据块内容有点特殊 。
软链接可对文件或目录创建 。
ln -s old.file soft.link
ln -s old.dir soft.link.dir
加-s选项表示创建的是软链接 。
删除软链接并不影响被指向的文件,但若被指向的原文件被删除,则相关软连接就变成了死链接 。
Linux软链接和硬链接的区别之ln命令详解1. 先来了解一下Linux数据是如何保存和查询的
对操作系统来说,数据分为两种:1. 用户数据 (user data) 2.元数据 (metadata) 。用户数据就是保存和记录文件的内容 。比如一个1M的ppt文件 , 500K的txt文件 。这都属于用户数据 。这个文件总有属性吧 , 比如大小、修改时间、访问时间、创建时间、存储的位置(文件所在的inode)、文件创建者等等信息 。这些属性信息或者理解为汇总信息,我们称它为元数据 。一句话 , 用户数据是文件的真实内容,而元数据则是汇总信息 。
在 Linux 中,元数据中的 inode 号(inode 号即索引节点号)才是文件的唯一标识而非文件名 。文件名仅是为了方便人们的记忆和使用,系统或程序通过 inode 号寻找正确的文件数据块 。
2. 查看文件对应的inode号
134474678 latest.tar.gz
linux查看文件对应的inode号
可以看出latest.tar.gz这个文件,inode 号是134474678,Linux查找读写该文件时,以为个inode号码为标识 , 而不是文件名 。文件名类似于网站域名,仅仅是方便人类记忆 。
也就是说,inode134474678有一个硬链接,它就是latest.tar.gz 。
3. 根据inode号查找对应的文件
那么,问题来了 , 系统上有没有第二个文件,它的inode号码也是13447467 。
使用find查找一下:
查找结果如下:
/root/latest.tar.gz
/root/latest2.tar.gz
linux根据inode号查找对应的文件
硬盘上真的有第二个文件它的inode号码也是134474678,像这种情况,我们认为inode134474678有两个硬链接 。当然,这是本文作者提前准备好的 。
为解决文件的共享使用,Linux 系统引入了两种链接:硬链接 (hard link) 与软链接(又称符号链接,即 soft link 或 symbolic link) 。链接为 Linux 系统解决了文件的共享使用,还带来了隐藏文件路径、增加权限安全及节省存储等好处 。
4. 确认硬链接的数量
查看一下文件latest.tar.gz
输出结果如下:
-rwxr-xr-x. 2 root root 8743850 Oct 11 15:00 latest.tar.gz
请留意输出的结果中的数字2,表示该文件存在2个硬链接 。
正常情况下,一个inode只有一个链接,如下例
输出结果:
-rw-r--r--. 1 root root 9 Nov 21 11:39 abc.txt
请留意输出的结果中的数字1 , 表示该文件只存在1个硬链接,默认情况下,文件都是只有一个硬链接的 。
5. 查看软链接
再来看一个文件
lrwxrwxrwx. 1 root root 15 Sep 26 15:57 /dev/stdout - /proc/self/fd/1
linux查看软链接
我们发现 , /dev/stdout实际上指向另一个文件/proc/self/fd/1,这就是软链接 。类似于Windows系统上的快捷方式 。
6. 软链接与硬链接的区别
6.1 软链接特点
6.2 硬链接特点
ln链接符原理如下:
Linux ln链接符原理图
7. 创建文件的链接
Linux ln命令是一个非常重要而且常用命令,它用于为文件或者目录创建链接 。
7.1 创建软链接
创建一个文件,用于演示软链接 。
创建软链接示例:
检查结果:
输出文件属性
lrwxrwxrwx. 1 root root 8 Nov 26 17:48 soft123.txt - soft.txt
linux创建软链接
可以看出这个文件指向当前目录soft.txt , 配置成功 。7.2 创建硬链接
创建一个文件,用于演示硬链接 。
创建硬链接,没有使用选项
检查结果:
输出文件属性:
-rw-r--r--. 2 root root 0 Nov 26 17:47 hard123.txt
linux创建硬链接
留意以上输出数字2,表明该文件有2个副本 。
8. 总结
ln命令可以创建文件的副本,也可以创建软链接 。
ln命令介绍 链接文件是Linux文件系统的一个优势,它可以保存一份物理文件副本和多个虚拟副本 。这种虚拟的副本称为 链接。链接是目录中指向文件真实位置的占位符 。Linux系统中有两种链接:符号链接和硬链接 。
符号链接是实实在在的文件,它指向虚拟目录结构中某个地方的另一个文件 。两个文件通过符号链接在一起,内容并不相同 。要为一个文件创建一个符号链接,原始文件必须存在 。ln -s 命令用来创建符号链接 。
硬连接会创建独立的虚拟文件,其中包含了原始文件的位置和信息 , 但它们从根本上是一个文件,引用硬连接文件就等同于引用了源文件 。创建硬连接时源文件也必须存在 , 不过ln命令不需要加上 -s 参数 。
参考文献:
linux ln 连接命令怎么用?1、首先有一个目录dir, 执行ln -s dir dir_link 创建目录的软链接 。
2、重新创建mkdir源目录,目录软链接重新生效 。
3、执行命令ln dir dir_hard,创建目录的硬链接 。
4、执行命令ln -s file file_link , 创建文件file的软链接file_link 。
5、执行命令ln file file_hard创建文件file的硬链接file_hard 。
6、修改硬链接file_hard、cat file,同时更新到源文件中即可 。
关于linux的ln命令详解和linux中的ln命令的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读