iis服务器助手广告广告
返回顶部
首页 > 资讯 > 操作系统 >如何创建Linux系统中硬链接与软链接
  • 441
分享到

如何创建Linux系统中硬链接与软链接

2023-06-12 21:06:25 441人浏览 八月长安
摘要

这篇文章主要介绍“如何创建linux系统中硬链接与软链接”,在日常操作中,相信很多人在如何创建Linux系统中硬链接与软链接问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何创建Linux系统中硬链接与软链接

这篇文章主要介绍“如何创建linux系统中硬链接与软链接”,在日常操作中,相信很多人在如何创建Linux系统中硬链接与软链接问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何创建Linux系统中硬链接与软链接”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

首先要弄清楚,在Linux系统中,内核为每一个新创建的文件分配一个Inode(索引结点),每个文件都有一个惟一的inode号。文件属性保存在索引结点里,在访问文件时,索引结点被复制到内存在,从而实现文件的快速访问。
链接是一种在共享文件和访问它的用户的若干目录项之间建立联系的一种方法。Linux中包括两种链接:硬链接(Hard Link)和软链接(Soft Link),软链接又称为符号链接(Symbolic link)。

一、硬链接
硬链接说白了是一个指针,指向文件索引节点,系统并不为它重新分配inode。可以用:ln命令来建立硬链接。语法:

代码如下:


ln [options] existingfile newfile
ln[options] existingfile-list directory


用法: 第一种:为”existingfile”创建硬链接,文件名为”newfile”。第二种:在”directory”目录中,为 ”existingfile-list”中包含的所有文件创建一个同名的硬链接。常用可选[options] –f 无论”newfile”存在与否,都创建链接。-n 如果”newfile”已存在,就不创建链接。
下面举一些例子:

代码如下:


$ ls –il


13058 -rwx - - - - - - 1 lonGCheng longcheng 48 8月 5 16:38 file1
13059 -rwx - - - - - - 1 longcheng longcheng 57 8月 5 16:40 file2

代码如下:


$ ln file2 file2hard
$ ls –il


13058 -rwx - - - - - - 1 longcheng longcheng 48 8月 5 16:38 file1
13059 -rwx - - - - - - 2 longcheng longcheng 57 8月 5 16:40 file2
13059 -rwx - - - - - - 2 longcheng longcheng 57 8月 5 16:40 file2hard
注意在创建链接前,file1 显示的链接数目为1,创建链接后(1)file1和file1hard的链接数目都变为2;(2) file1和file1hard在inode号是一样的(3) file1和file1hard显示的文件大小也是一样。可见进行了ln命令的操作结果:file1和file1hard是同一个文件的两个名字,它们具 有同样的索引节点号和文件属性,建立文件file1的硬链接,就是为file1的文件索引节点在当前目录上建立一个新指针。
链接数同时减一,只有将所有指向文件内容的指针,也即链接数减为0时,内核才会把文件内容从磁盘上删除。当前目录逻辑结构:(不好意思图没有显示出来)。
还可以在不同目录,但同一文件系统中建立文件的硬链接。设file1、file2在目录/home/longcheng/dir1中,下面的命令,在/home/longcheng中建立file2的硬链接。

代码如下:


ln file2 /home/longcheng/file2hard


下面的程序,是将dir1目录中所有文件,在目录dir2中建立硬链接

代码如下:


$mkdir dir2
$ln /home/longcheng/dir1/* /home/longcheng/dir2


如果使用了 ln –f existingfile newfile,如果newfile已经存在,则无论原来newfile是什么文件,只用当前用户对它有写权限,newfile就成为exisitngfile的硬链接文件。
尽管硬链接节省空间,也是Linux系统整合文件系统的传统方式,但是存在一下不足之处:
(1)不可以在不同文件系统的文件间建立链接
(2)只有超级用户才可以为目录创建硬链接。虽然很多树上说root用户可以创建,但是笔者在学习过程中发现即使是root用户也不能创建,我的系统是Redhat,内核2.4、2.6都试过,在其他系统中不知道是不是可以。

二、软链接(符号链接)
软链接克服了硬链接的不足,没有任何文件系统的限制,任何用户可以创建指向目录的符号链接。因而现在更为广泛使用,它具有更大的灵活性,甚至可以跨越不同机器、不同网络对文件进行链接。
建立软链接,只要在ln后面加上选项 –s,下面举个例子

代码如下:


$ ls -il


13058 -rwx - - - - - - 1 longcheng longcheng 48 8月 5 16:38 file1
13059 -rwx - - - - - - 2 longcheng longcheng 57 8月 5 16:40 file2
13059 -rwx - - - - - - 2 longcheng longcheng 57 8月 5 16:40 file2hard

代码如下:


$ln –s file1 file1soft
$ls -il


13058 -rwx - - - - - - 1 longcheng longcheng 48 8月 5 16:38 file1
13059 -rwx - - - - - - 2 longcheng longcheng 57 8月 5 16:40 file2
13059 -rwx - - - - - - 2 longcheng longcheng 57 8月 5 16:40 file2hard
13061 lrwxrwxrwx 1 longcheng longcheng 5 8月 5 16:58 file1soft->file1
从上面链接后的结果可以看出来软链接与硬链接,区别不仅仅是在概念上,在实现上也是不同的。区别:硬链接原文件&链接文件公用一个inode号,说明他 们是同一个文件,而软链接原文件&链接文件拥有不同的inode号,表明他们是两个不同的文件;在文件属性上软链接明确写出了是链接文件,而硬链接没有写 出来,因为在本质上硬链接文件和原文件是完全平等关系;链接数目是不一样的,软链接的链接数目不会增加;文件大小是不一样的,硬链接文件显示的大小是跟原 文件是一样的,这用强调,因为是等同的嘛,而这里软链接显示的大小与原文件就不同了,file1大小是48B,而file1soft是5B,这里面的5实 际上就是“file1”的大小。

到此,关于“如何创建Linux系统中硬链接与软链接”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: 如何创建Linux系统中硬链接与软链接

本文链接: https://www.lsjlt.com/news/262908.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何创建Linux系统中硬链接与软链接
    这篇文章主要介绍“如何创建Linux系统中硬链接与软链接”,在日常操作中,相信很多人在如何创建Linux系统中硬链接与软链接问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何创建Linux系统中硬链接与软链接...
    99+
    2023-06-12
  • Linux系统中怎么使用ln命令创建软链接与硬链接
    Linux系统中怎么使用ln命令创建软链接与硬链接,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Linux 系统下每创建一个文件,系统都会为此文件生成一个 index no...
    99+
    2023-06-12
  • Linux系统如何辨别软链接和硬链接
    这篇文章主要介绍“Linux系统如何辨别软链接和硬链接”,在日常操作中,相信很多人在Linux系统如何辨别软链接和硬链接问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux系统如何辨别软链接和硬链接”的疑...
    99+
    2023-06-13
  • linux怎么创建软硬链接
    在Linux系统中,可以使用`ln`命令创建软链接和硬链接。1. 创建软链接:```ln -s 源文件 链接文件```源文件可以是文...
    99+
    2023-10-12
    linux
  • Linux中怎么给目录创建软链接或硬链接
    这篇文章将为大家详细讲解有关Linux中怎么给目录创建软链接或硬链接,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。  解决方法:  当我们需要在不同的目录下用到同一个文件时,会用到以下命令。...
    99+
    2023-06-13
  • linux软链接如何创建
    这篇“linux软链接如何创建”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“linux软链接如何创建”文章吧。在linux中...
    99+
    2023-07-02
  • 如何实现Linux给文件或目录创建软链接、硬链接
    这篇文章主要讲解了“如何实现Linux给文件或目录创建软链接、硬链接”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何实现Linux给文件或目录创建软链接、硬链接”吧!当我们需要在不同的目录...
    99+
    2023-06-13
  • Linux系统中软链接和硬链接的区别是什么
    Linux系统中软链接和硬链接的区别是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。我们知道文件都有文件名与数据,这在 Linux 上被分成两个部分...
    99+
    2023-06-05
  • Linux下软链接和硬链接的创建、删除、区别详解
    在Linux系统中,内核为每一个新创建的文件分配一个Inode(索引结点),每个文件都有一个惟一的inode号。文件属性保存在索引结点里,在访问文件时,索引结点被复制到内存里,从而实现对文件的快速访问。 链接是一种在...
    99+
    2022-06-03
    Inode Linux 快捷方式 文件指针 文件系统 文件路径 硬链接 符号链接 软链接
  • 【Linux】理解文件系统——软硬链接
    我们之前讨论的都是进程和被打开文件的关系,而如果一个文件是没有被打开呢?没有被打开的文件操作系统如何管理? 没有被打开的文件在磁盘上,所以磁盘上有大量的文件,这些文件要被静态管理起来,方便我们随时打开,而做这部分工作的我们称为文件系统。 ...
    99+
    2023-08-18
    linux 运维 服务器
  • linux系统中软连接和硬链接有什么区别
    这篇文章主要介绍了linux系统中软连接和硬链接有什么区别,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。我自己做的图片大家参考下:软连接硬链接的区别:硬连接指通过索引节点来进...
    99+
    2023-06-13
  • 如何分析Linux系统硬链接数
    本篇文章为大家展示了如何分析Linux系统硬链接数,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。在Linux系统中硬链接其实就是是一个指针,指向文件索引节点,那么硬链接数是什么意思呢?1、打开LIN...
    99+
    2023-06-28
  • linux中如何创建符号链接
    本篇文章给大家分享的是有关linux中如何创建符号链接,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。硬链接(hard links): 为文件创建了额外的条目.使用时, 与文件没...
    99+
    2023-06-13
  • Linux中文件与目录对应的硬链接与软链接方式的区别有哪些
    本篇内容主要讲解“Linux中文件与目录对应的硬链接与软链接方式的区别有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux中文件与目录对应的硬链接与软链接方式的区别有哪些”吧!硬链接新...
    99+
    2023-06-12
  • 【Linux】基础IO —— 深入理解文件系统 | 软硬链接
    🌈欢迎来到Linux专栏~~ 深入理解文件系统 ...
    99+
    2023-09-11
    linux 运维 服务器
  • Linux系统如何创建软连接
    小编给大家分享一下Linux系统如何创建软连接,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、创建1、创建软链接 ln -s 【目...
    99+
    2023-06-28
  • LINUX系统中硬链接数的示例分析
    这篇文章主要介绍了LINUX系统中硬链接数的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。打开LINUX操作系统,可以使用UBUNTU。找到左边任务栏的终端窗口并且打...
    99+
    2023-06-28
  • 如何在Ubuntu中建立软链接
    今天就跟大家聊聊有关如何在Ubuntu中建立软链接,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。首先我们先来建立一个文本文件,下面将会给这个文件建立软链接,如下图所示然后我们通过Ub...
    99+
    2023-06-13
  • 在HTML中如何创建链接
    这篇文章主要为大家展示了“在HTML中如何创建链接”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“在HTML中如何创建链接”这篇文章吧。 链接或超链接是从一个W...
    99+
    2022-10-19
  • 在Ubuntu中如何创建符号链接
    在Ubuntu中创建符号链接的方法:在.conda原路径下建立符号链接,如:ln -s ./project/.conda .conda 软连接 (文件、文件夹)ln ./project/.conda .conda 硬连接(只对文件)...
    99+
    2022-10-23
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作