刚开始系统学习linux,如果有错误的地方还请多多指出


一 linux下创建和删除软、硬链接

源文件:指定连接的源文件     创建硬连接时,则“源文件”参数只能是文件。     创建软链接时使用ln -s选项,则“源文件”可以是文件或者目录;   目标文件:指定源文件的目标连接文件

1、硬链接

ln [参数] (源文件)(目标文件)

ln /root/install.log /root/install.log.txt //(install.log 链接源文件,install.log.txt 新创建的链接文件)

2、软链接

ln [参数] (源文件或目录) (目标文件)

ln -s /etc/sysconfig/network-scripts/ifcfg-eth0 /app/IP //(ifcfg-eth0 链接源文件,IP 新创建的目标链接文件。)

3、删除链接

rm [参数] (链接名)

rm -rf /app/Ip //(删除链接文件IP)

二、软硬链接的区别

1、软链接创建时“源文件”可以是文件或目录; 硬链接只能是文件。 2、软链接可以跨驱动器或分区创建链接; 硬链接只能在同一文件系统或分区创建链接。 3、软链接以路径的形式存在,只记录用文件的路径,就像Windows系统里的快捷方式; 硬链接以文件形式存在,不占用实际空间只引用源文件的inode号,一文件系统来说只有一个物理文件。 4、软链接可以对不存在的文件或目录进行连接(错误链接); 硬链接不可以。 5、 软链接指向的是另一个文件的路径;其大小为指向的路径字符串的 长度; 硬链接的大小取决于源文件。 6、软链接不增加或减少目标文件inode的引用计数; 硬链接创建时链接数递增。

[root@centos6 /]# ls -l #用ls -l命令查看链接名称和引用的信息 total 102 lrwxrwxrwx. 1 root root 3 Jan 15 16:00 1 -> tmp #链接数为1 lrwxrwxrwx. 1 root root 3 Jan 15 16:01 2 -> tmp

[root@centos6 app]# ln 456 1 #创建四个硬链接 [root@centos6 app]# ln 456 2 [root@centos6 app]# ln 456 3 [root@centos6 app]# ln 456 4 [root@centos6 app]# ls -l #用ls -l命令查看链接名称和引用的信息 total 40 -rw-r--r--. 5 root root 24 Jan 14 13:12 1 #创建四个硬链接加上源文件,链接数为5 -rw-r--r--. 5 root root 24 Jan 14 13:12 2 -rw-r--r--. 5 root root 24 Jan 14 13:12 3 -rw-r--r--. 5 root root 24 Jan 14 13:12 4

7、硬链接删除文件时:rm命令递减计数的链接,文件要存在至少有一个链接数,当链接数为零时该文件inode号被清空(该文件被删除)。 软链接删除时不影响“源文件”的使用,若源文件被删除,则相关链接就成死链接。

[root@centos6 app]# ls -l #删除前查看链接数 total 20 -rw-r--r--. 5 root root 24 Jan 14 13:12 1 #链接数为5 -rw-r--r--. 5 root root 24 Jan 14 13:12 2 -rw-r--r--. 5 root root 24 Jan 14 13:12 3 -rw-r--r--. 5 root root 24 Jan 14 13:12 4 -rw-r--r--. 5 root root 24 Jan 14 13:12 456 [root@centos6 app]# rm -rf 1 #删除文件(硬链接)1 [root@centos6 app]# ll #查看链接数 total 16 -rw-r--r--. 4 root root 24 Jan 14 13:12 2 #链接数为4 -rw-r--r--. 4 root root 24 Jan 14 13:12 3 -rw-r--r--. 4 root root 24 Jan 14 13:12 4 -rw-r--r--. 4 root root 24 Jan 14 13:12 456 [root@centos6 app]# rm -rf 2 #删除文件(硬链接)2 [root@centos6 app]# ll #查看链接数 total 12 -rw-r--r--. 3 root root 24 Jan 14 13:12 3 #查看链接数为3 -rw-r--r--. 3 root root 24 Jan 14 13:12 4 -rw-r--r--. 3 root root 24 Jan 14 13:12 456 [root@centos6 app]# rm -rf 1 #删除文件(硬链接)1 [root@centos6 app]# rm -rf 2 #删除文件(硬链接)2 [root@centos6 app]# rm -rf 4 #删除文件(硬链接)4 [root@centos6 app]# rm -rf 456 #删除文件(硬链接)456 [root@centos6 app]# ls -l #删除后用ls -l命令查看链接名称和引用的信息 total 4 -rw-r--r--. 1 root root 24 Jan 14 13:12 3 #链接数为1

8、软链接创建时尽量使用相对路径,如果后期数据迁移,新的系统路径与创建时的原始路径会有差异,导致与软件或程序不能正常使用。 硬链接不会出现这些问题,它就是源文件的备份。