链接文件配置(linux文件目录指向另一个目录,ln -s的用法)

一、遇到问题

前几天被交接了一个十几年前的老系统,同事让帮忙发版,这是一个使用tomcat启一个mvc的单体项目;我想尽管很久不使用这个东西了,应该简单呀,无非就是上传一个war包或者编译文件,然后重启一下tomcat。

可是,进入项目目录下,我傻眼了,这个箭头指向是什么意思?我猜意思应该是从enp-service目录之间映射到enp_202204051122目录下,类似于windows中的快捷方式,应该需要创建一个目录之间关联的关系。

但是,这个配置的术语是什么呢?,应该怎么查帖子呢?搜“centos目录挂载”,“centos目录自动跳转”,“centos快捷方式”......,我找了很多,都不是。。。

隐约感觉,这应该不是什么大问题,只要找到相关的技术帖子,应该很快可以搞定,但是不知道怎么查呀,遇到技术盲区了,怎么办?找江湖上的小伙伴问吧,我直接截图,问这种目录指向,怎么创建,很快各位大佬给了关键的指点:使用 “ln -s”指令

于是有了思路去查相关的内容,对此知识点归纳如下:

二、链接文件

链接文件包括两种方式,软链接文件和硬链接文件。无论是软链接还是硬链接,文件都保持同步变化。软链接是可以跨分区的,但是硬链接只能在同一分区内。

1、软链接文件

软链接文件一般可以建立目录指向另一个目录文件的路径名,类似于windows中的快捷方式。可以是任意文件或目录,可以链接不同文件系统的文件。软链接文件甚至可以链接不存在的文件,这就产生一般称之为"断链"的问题(或曰“现象"),链接文件甚至可以循环链接自己,类似于编程语言中的递归。

软链接文件只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间

创建指令:ln -s ** **,前面是源文件地址(文件资源地址),后面是符号文件(创建之前是不存在的)

删除指令:rm -rf enp-service

创建代码示例,如下:ln -s enp_202204051122/ enp-service

[root@localhost enp]# ll
总用量 4
drwxr-xr-x. 2 root root  6 4月  24 14:09 enp_202201040809
drwxr-xr-x. 2 root root  6 4月  24 14:09 enp_202203051010
drwxr-xr-x. 2 root root  6 4月  24 14:10 enp_202204051122
-rw-r--r--. 1 root root 15 4月  24 18:13 test.txt

[root@localhost enp]# ln -s enp_202204051122/ enp-service #创建软链接
[root@localhost enp]# ll
总用量 4
drwxr-xr-x. 2 root root  6 4月  24 14:09 enp_202201040809
drwxr-xr-x. 2 root root  6 4月  24 14:09 enp_202203051010
drwxr-xr-x. 2 root root  6 4月  24 14:10 enp_202204051122
lrwxrwxrwx. 1 root root 17 4月  24 18:37 enp-service -> enp_202204051122/
-rw-r--r--. 1 root root 15 4月  24 18:13 test.txt

[root@localhost enp]# rm -rf enp-service  #删除软链接 
[root@localhost enp]# ll
总用量 4
drwxr-xr-x. 2 root root  6 4月  24 14:09 enp_202201040809
drwxr-xr-x. 2 root root  6 4月  24 14:09 enp_202203051010
drwxr-xr-x. 2 root root  6 4月  24 14:10 enp_202204051122
-rw-r--r--. 1 root root 15 4月  24 18:13 test.txt

在对符号文件进行读或写操作的时候,系统会自动把该操作转换为对源文件的操作,但删除链接文件时,系统仅仅删除链接文件,而不删除源文件本身。

2、硬链接文件

硬链接创建后,会在你选定的位置上生成一个和源文件大小相同的文件,硬连接的作用是允许一个文件拥有多个有效路径名,一般可以对重要文件建立硬连接,防止文件被误删。

创建指令:ln -d existfile newfile(没有-s)

删除指令:rm -rf test.txt 

[root@localhost enp]# ln test.txt new_test.txt #创建硬链接
[root@localhost enp]# ll
总用量 8
drwxr-xr-x. 2 root root  6 4月  24 14:09 enp_202201040809
drwxr-xr-x. 2 root root  6 4月  24 14:09 enp_202203051010
drwxr-xr-x. 2 root root  6 4月  24 14:10 enp_202204051122
lrwxrwxrwx. 1 root root 17 4月  24 18:37 enp-service -> enp_202204051122/
-rw-r--r--. 2 root root 15 4月  24 18:13 new_test.txt #创建成功的文件
-rw-r--r--. 2 root root 15 4月  24 18:13 test.txt
[root@localhost enp]# rm -rf test.txt  #删除硬链接的源文件
[root@localhost enp]# ll
总用量 4
drwxr-xr-x. 2 root root  6 4月  24 14:09 enp_202201040809
drwxr-xr-x. 2 root root  6 4月  24 14:09 enp_202203051010
drwxr-xr-x. 2 root root  6 4月  24 14:10 enp_202204051122
lrwxrwxrwx. 1 root root 17 4月  24 18:37 enp-service -> enp_202204051122/
-rw-r--r--. 1 root root 15 4月  24 18:13 new_test.txt  #硬链接的文件被保留

硬链接文件有两个限制

1)、不允许给目录创建硬链接;

2)、只有在同一文件系统中的文件之间才能创建硬链接。

3)、对硬链接文件进行读写和删除操作时候,结果和软链接相同。但如果我们删除硬链接文件的源文件,硬链接文件仍然存在,而且保留了愿有的内容。

  • 7
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

咛果果

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值