Linux软链接的使用

19 篇文章 1 订阅
本文介绍了Linux中软链接的使用方法,将其比作Windows快捷方式,重点展示了在深度学习模型训练中通过软链接节省路径长度的应用实例。此外,详细讲解了硬链接与软链接的区别,以及创建、删除和修改软链接的基本操作和常用参数。
摘要由CSDN通过智能技术生成

Linux软链接的使用

转自:https://www.cnblogs.com/sueyyyy/p/10985443.html,本博文仅对原博排版稍微优化。

更为细致的硬链接、软链接的介绍可参考:Linux中的硬链接和软链接

另外,提供笔者对软连接的一个最简单的理解:就相当于Windows中的快捷方式文件,但是软连接不仅可以链接文件,还可以链接目录。
并且给出一个应用场景示例:我们在训练深度学习模型时,通常数据集会单独放在一个目录下,我们某个模型的训练脚本则在工程目录内,这时我们就要给出很长一串路径写在我们的文件内,如:

train_dataset = datasets.ImageFolder(
    '/ssd1t/song/Datasets/ImageNet/ImageNet_2012_DataSets/ILSVRC2012_img_train',
    transforms.Compose(augmentation))

但实际上,我们可以通过软连接,将其链接到我们的工程目录下,并且这样并不会占据额外的空间:

ln -s /ssd1t/song/Datasets/ImageNet/ImageNet_2012_DataSets/ILSVRC2012_img_train imagenet_trainset

这样,在我们的训练脚本内指定路径时就可以直接指向imagenet的软连接imagenet_trainset

train_dataset = datasets.ImageFolder(
    'imagenet_trainset',
    transforms.Compose(augmentation))

另外要注意,如果想要生成目录(而非文件)的软连接,必须用绝对路径

以下是转载原文:

简介

软连接是linux中一个常用命令,它的功能是为某一个文件在另外一个位置建立一个同不的链接。

具体用法是:ln -s 源文件 目标文件

当 我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在其它的 目录下用ln命令链接(link)就可以,不必重复的占用磁盘空间。

例如:

ln -s /usr/local/mysql/bin/mysql /usr/bin

这样我们就对/usr/bin目录下的mysql命令创建了软连接

软链接和硬连接

硬连接

硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。

软连接

另外一种连接称之为符号连接(Symbolic Link),也叫软连接。软链接文件有类似于Windows的快捷方式。它实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。

使用方式

创建软链接

ln -s [源文件或目录] [目标文件或目录]

例:

当前路径创建test 引向/var/www/test 文件夹 :

ln –s  /var/www/test  test

创建/var/test 引向/var/www/test 文件夹

ln –s /var/www/test  /var/test

删除软链接

和删除普通的文件是一样的,删除都是使用rm来进行操作

例:

删除test

rm –rf test

修改软链接

ln –snf [新的源文件或目录] [目标文件或目录]

这将会修改原有的链接地址为新的地址

例:

创建一个软链接

ln –s  /var/www/test   /var/test

修改指向的新路径

ln –snf  /var/www/test1   /var/test

常用参数:

  -f : 链结时先将与 dist 同档名的档案删除
  -d : 允许系统管理者硬链结自己的目录
  -i : 在删除与 dist 同档名的档案时先进行询问
  -n : 在进行软连结时,将 dist 视为一般的档案
  -s : 进行软链结(symbolic link)
  -v : 在连结之前显示其档名
  -b : 将在链结时会被覆写或删除的档案进行备份
  -S SUFFIX : 将备份的档案都加上 SUFFIX 的字尾
  -V METHOD : 指定备份的方式
  --help : 显示辅助说明
  --version : 显示版本
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值