Linux命令(19):ln命令

简介:

ln命令


功能说明

    ln命令用来在文件或目录之间创建链接。

    Linux下的链接有两种,一种是硬链接(Hard Link),另一种是符号链接(Symbolic Link也就是常说的软链接),默认使用ln命令创建的是硬链接。

  • 硬链接

    是指通过文件的inode来进行链接。在Linux的文件系统中,保存在磁盘的所有类型的文件都会分配一个编号,这

个编号称为inode号(Inode Index)。多个文件指向同一个inode在Linux系统中是允许的,这就是所谓的硬链接。硬链接的作用是允许一个文件拥有多个有效的路径名,这样用户就可以对一些重要文件建立硬链接,以防止误删除操作。因为对就该文件的inode有一个以上的链接,所以只删除一个链接并不影响inode本身和其他链接,只有当最后一个链接被删除后,文件的数据块及目录的链接才会释放,也就是说,此时文件才会被真正删除。

  • 符号链接

    也叫软链接,软链接类似于Windows的快捷方式,因此软链接是一个指向真正的文件或者目录位置的符号连接。

用法如下

硬链接  ln file link

软链接  ln -s item link      这里的item可以是文件也可以是目录

命令参数

选项 含义
-f 如果在目标位置存在与链接名相同的文件,这个文件将被删除
-s 进行软链接
-d 允许系统管理员硬链接自己的目录
-b 对将在链接时会被覆盖或者删除的文件进行备份

示例

    不带参数,将文件硬链接

[root@c7 shell]# ln test.sh htest.sh                           #对源文件test.sh创建硬链接

[root@c7 shell]# ls -li                                               #可以看到二个文件inode号相同

总用量 8

68033834 -rw-r--r--. 2 root root 4 11月 11 16:47 htest.sh

68033834 -rw-r--r--. 2 root root 4 11月 11 16:47 test.sh

[root@c7 shell]# ln htest.sh /tmp/                            #链接到另一个目录,目标可以不写文件名

[root@c7 shell]# ls -li /tmp/                                     #相同名称的硬链接,inode号也相同

总用量 32

 68033834 -rw-r--r--. 4 root root     4 11月 11 16:47 htest.sh

101282617 -rw-------. 1 root root 26843 11月 10 15:58 yum_save_tx.2016.r6hAcv.yumtx

    使用-b参数,链接前先备份

[root@c7 shell]# ln -b htest.sh test.sh                      #-b硬链接前先备份

[root@c7 shell]# ls -li                                               #以~结尾的就是备份文件

总用量 12

68033834 -rw-r--r--. 4 root root 4 11月 11 16:47 htest.sh

68033834 -rw-r--r--. 4 root root 4 11月 11 16:47 test.sh

68033834 -rw-r--r--. 4 root root 4 11月 11 16:47 test.sh~

    -s软链接,将/etcinittab文件符号链接到/opt下

[root@c7 ~]# ln -s /etc/inittab /opt                           

[root@c7 ~]# ls -li /opt/inittab                                #下面是软链接的显示,inode号不同

26186 lrwxrwxrwx. 1 root root 12 11月 11 18:02 /opt/inittab -> /etc/inittab

[root@c7 ~]# ls -li /etc/inittab 

34140601 -rw-r--r--. 1 root root 511 3月   6 2015 /etc/inittab







      本文转自cix123  51CTO博客,原文链接:http://blog.51cto.com/zhaodongwei/1871880,如需转载请自行联系原作者




相关文章
|
16天前
|
Web App开发 Linux 网络安全
工作中常用到的Linux命令
工作中常用到的Linux命令
|
16天前
|
Web App开发 Java Linux
Linux之Shell基本命令篇
Linux之Shell基本命令篇
Linux之Shell基本命令篇
|
3天前
|
机器学习/深度学习 缓存 监控
linux查看CPU、内存、网络、磁盘IO命令
`Linux`系统中,使用`top`命令查看CPU状态,要查看CPU详细信息,可利用`cat /proc/cpuinfo`相关命令。`free`命令用于查看内存使用情况。网络相关命令包括`ifconfig`(查看网卡状态)、`ifdown/ifup`(禁用/启用网卡)、`netstat`(列出网络连接,如`-tuln`组合)以及`nslookup`、`ping`、`telnet`、`traceroute`等。磁盘IO方面,`iostat`(如`-k -p ALL`)显示磁盘IO统计,`iotop`(如`-o -d 1`)则用于查看磁盘IO瓶颈。
|
13天前
|
NoSQL Linux Shell
常用的 Linux 命令
常用的 Linux 命令
35 9
|
1天前
|
Ubuntu Linux Shell
linux免交互登陆远程主机并执行命令(密钥对和Expect)
linux免交互登陆远程主机并执行命令(密钥对和Expect)
|
1天前
|
Linux
【Linux】常用命令
【Linux】常用命令
9 0
|
1天前
|
安全 Ubuntu Linux
Linux 网络操作命令Telnet
Linux 网络操作命令Telnet
5 0
Linux 网络操作命令Telnet
|
2天前
|
Linux 数据安全/隐私保护
Linux常用命令实例带注释
Linux常用命令实例带注释
24 0
|
2天前
|
Linux 开发工具 数据安全/隐私保护
Linux(19)常用解压命令记录
Linux(19)常用解压命令记录
7 0
|
3天前
|
Linux Perl
Linux系统替换字符串常用命令
请注意,`sed`命令可以非常强大,可以根据不同的需求使用不同的选项和正则表达式来进行更复杂的字符串替换操作。
16 0