加入收藏 | 设为首页 | 会员中心 | 我要投稿 文章分享网_茂名站长网 (https://www.0668zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

Linux软连接的通俗理解是什么,如何新建

发布时间:2023-09-08 17:34:56 所属栏目:Linux 来源:网络
导读:

  在实际应用中,我们有时候会遇到“Linux软连接的通俗理解是什么,如何创建”这样的问题,我们该怎样来处理呢?下文给大家介绍了解决方法,希望这篇“Linux软连接的通

  在实际应用中,我们有时候会遇到“Linux软连接的通俗理解是什么,如何创建”这样的问题,我们该怎样来处理呢?下文给大家介绍了解决方法,希望这篇“Linux软连接的通俗理解是什么,如何创建”文章能帮助大家解决问题。

  在linux中,软连接相当于windows中的快捷方式,以路径的形式存在;在软连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。创建软连接的语法为“ln -s target source”,参数“target”表示目标文件(夹),即被指向的文件(夹),而参数“source”表示当前目录的软连接名,即源文件(夹)。
 
  本教程操作环境:linux7.3系统、Dell G3电脑。
 
  Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link),又称软链接。
 
  Linux软连接
 
  相当于windows中的快捷方式,由于软连接所创建的文件为一个独立的新的文件,所以会占用掉indoe与block
 
  它实际上是一个特殊的文件。在软连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。
 
  软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式
 
  软链接可以 跨文件系统 ,硬链接不可以
 
  软链接可以对一个不存在的文件名进行链接
 
  软链接可以对目录进行链接
 
  1、创建语法
 
  ln -s target source
 
  解释下:
 
  ln -s:表示创建一个软连接;
 
  target:表示目标文件(夹)【即被指向的文件(夹)】
 
  source:表示当前目录的软连接名。【源文件(夹)】
 
  2 具体示例
 
  step 1.创建测试文件及文件夹
 
  [root@server6 ~]# mkdir test_chk
 
  [root@server6 ~]# touch test_chk/test.txt
 
  [root@server6 ~]# echo "hello spark" > test_chk/test.txt
 
  [root@server6 ~]# cat test_chk/test.txt
 
  hello spark
 
  [root@server6 ~]# ll
 
  总用量 84
 
  -rw-------.  1 root root  1257 6月  16 01:17 anaconda-ks.cfg
 
  drwxr-xr-x. 25 root root  4096 11月  1 10:28 azkabanJob
 
  -rw-r--r--.  1 root root 67322 11月  4 10:24 azkabanJob.zip
 
  drwxr-xr-x.  4 root root    37 7月  13 11:01 hadoop_temp
 
  -rw-r--r--.  1 root root    54 7月   4 14:11 HelloLinux.txt
 
  drwxr-xr-x.  2 root root    22 11月  4 10:41 test_chk
 
  -rw-r--r--.  1 root root    67 10月  8 15:52 zookeeper.out
 
  [root@server6 ~]# ln -s test_chk/ test_chk_ln
 
  [root@server6 ~]# ll
 
  总用量 84
 
  -rw-------.  1 root root  1257 6月  16 01:17 anaconda-ks.cfg
 
  drwxr-xr-x. 25 root root  4096 11月  1 10:28 azkabanJob
 
  -rw-r--r--.  1 root root 67322 11月  4 10:24 azkabanJob.zip
 
  drwxr-xr-x.  4 root root    37 7月  13 11:01 hadoop_temp
 
  -rw-r--r--.  1 root root    54 7月   4 14:11 HelloLinux.txt
 
  drwxr-xr-x.  2 root root    22 11月  4 10:41 test_chk
 
  lrwxrwxrwx.  1 root root     9 11月  4 10:42 test_chk_ln -> test_chk/
 
  -rw-r--r--.  1 root root    67 10月  8 15:52 zookeeper.out
 
  [root@server6 ~]# cd test_chk_ln/
 
  [root@server6 test_chk_ln]# ll
 
  总用量 4
 
  -rw-r--r--. 1 root root 12 11月  4 10:41 test.txt
 
  [root@server6 test_chk_ln]# cat test.txt
 
  hello spark
 
  [root@server6 test_chk_ln]# ll
 
  总用量 4
 
  -rw-r--r--. 1 root root 12 11月  4 10:41 test.txt
 
  [root@server6 test_chk_ln]# cat test.txt
 
  hello spark
 
  注意
 
  1、创建软连接时,不用创建文件夹。
 
  2、命令示例解释
 
  执行的命令是: ln -s /storage/lawson/scores scor
 
  其含义就是:将scor指向 /storage/lawson/scores/目录下
 
  这里是当前的scor 指向 /storage/lawson/scores 中。这里显示红色,是因为/storage/lawson/scores这个目录不存在,如果创建该目录,那就可以得到蓝色的显示了。
 
  需要注意的是,当前所有目录下的文件都不能重名,因为我之前有一个文件夹是scores,所以这里就简单的命名成了scor。
 
  软连接的删除
 
  rm -rf ./test_chk_ln/ 会删除文件夹下的所有内容,但是没有删除这个链接;
 
  rm -rf ./test_chk_ln 则是仅删除这个软链接,不会删除下面的内容。
 
  错误示范
 
  [root@server6 test_chk_ln]# cd ..
 
  [root@server6 ~]# ll
 
  总用量 84
 
  -rw-------.  1 root root  1257 6月  16 01:17 anaconda-ks.cfg
 
  drwxr-xr-x. 25 root root  4096 11月  1 10:28 azkabanJob
 
  -rw-r--r--.  1 root root 67322 11月  4 10:24 azkabanJob.zip
 
  drwxr-xr-x.  4 root root    37 7月  13 11:01 hadoop_temp
 
  -rw-r--r--.  1 root root    54 7月   4 14:11 HelloLinux.txt
 
  drwxr-xr-x.  2 root root    22 11月  4 10:41 test_chk
 
  lrwxrwxrwx.  1 root root     9 11月  4 10:42 test_chk_ln -> test_chk/
 
  -rw-r--r--.  1 root root    67 10月  8 15:52 zookeeper.out
 
  [root@server6 ~]# rm -rf ./test_chk_ln/
 
  [root@server6 ~]# ll
 
  总用量 84
 
  -rw-------.  1 root root  1257 6月  16 01:17 anaconda-ks.cfg
 
  drwxr-xr-x. 25 root root  4096 11月  1 10:28 azkabanJob
 
  -rw-r--r--.  1 root root 67322 11月  4 10:24 azkabanJob.zip
 
  drwxr-xr-x.  4 root root    37 7月  13 11:01 hadoop_temp
 
  -rw-r--r--.  1 root root    54 7月   4 14:11 HelloLinux.txt
 
  drwxr-xr-x.  2 root root     6 11月  4 10:42 test_chk
 
  lrwxrwxrwx.  1 root root     9 11月  4 10:42 test_chk_ln -> test_chk/
 
  -rw-r--r--.  1 root root    67 10月  8 15:52 zookeeper.out
 
  [root@server6 ~]# cd test_chk
 
  [root@server6 test_chk]# ll
 
  总用量 0
 
  [root@server6 test_chk]# ll
 
  总用量 0
 
  可以发现该文件夹下的内容都被删了。。。
 
  正确删除软连接
 
  [root@server6 ~]# rm -rf ./test_chk_ln
 
  [root@server6 ~]# ll
 
  总用量 84
 
  -rw-------.  1 root root  1257 6月  16 01:17 anaconda-ks.cfg
 
  drwxr-xr-x. 25 root root  4096 11月  1 10:28 azkabanJob
 
  -rw-r--r--.  1 root root 67322 11月  4 10:24 azkabanJob.zip
 
  drwxr-xr-x.  4 root root    37 7月  13 11:01 hadoop_temp
 
  -rw-r--r--.  1 root root    54 7月   4 14:11 HelloLinux.txt
 
  drwxr-xr-x.  2 root root    22 11月  4 10:44 test_chk
 
  -rw-r--r--.  1 root root    67 10月  8 15:52 zookeeper.out
 
  [root@server6 ~]# cd test_chk/
 
  [root@server6 test_chk]# ll
 
  总用量 4
 
  -rw-r--r--. 1 root root 12 11月  4 10:44 test.txt
 

(编辑:文章分享网_茂名站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章