linux软硬链接命令 linux 软硬链接( 三 )


(3)软连接可以对一个不存在的文件名进行连接。
(4)软连接可以对目录进行连接 。
备 注:I节点 :它是UNIX内部用于描述文件特性的数据结构.我们通常称I节点为文件索引结点(信息结点).i节点含有关于文件的大部分的重要信息,包括文件数据块在 磁盘上的地址.每一个I节点有它自己的标志号,我们称为文件顺序号.I节点包含的信息 1.文件类型 2.文件属主关系 3.文件的访问权限 4.文件的时间截.
最后 删除符号链接,有创建就有删除
rm -rfsymbolic_name注意不是rm -rfsymbolic_name/
在Linux系统中,内核为每一个新创建的文件分配一个Inode(索引结点),每个文件都有一个惟一的inode号 。文件属性保存在索引结点里,在访问文件时,索引结点被复制到内存在,从而实现文件的快速访问 。
链接是一种在共享文件和访问它的用户的若干目录项之间建立联系的一种方法 。Linux中包括两种链接:硬链接(Hard Link)和软链接(Soft Link),软链接又称为符号链接(Symbolic link) 。符号连接相当于Windows下的快捷方式 。
硬链接说白了是一个指针,指向文件索引节点 , 系统并不为它重新分配inode 。可以用:ln命令来建立硬链接 。
【linux软硬链接命令 linux 软硬链接】语法:
ln [options] existingfile newfile(sexistingfile 待建立链接文件的文件,newfile是新创建的链接文件)
ln [options] existingfile-list directory
-f 建立时,将同档案名删除.
-i 删除前进行询问.
ln -s abc cde 建立abc 的软连接
ln abc cde 建立abc的硬连接,
用法:
第一种:为”existingfile”创建硬链接,文件名为”newfile” 。
第二种:在”directory”目录中,为”existingfile-list”中包含的所有文件创建一个同名的硬链接 。
常用可选[options] –f 无论”newfile”存在与否,都创建链接 。-n 如果”newfile”已存在,就不创建链接 。
下面举一些例子:
[ root@rekfan.comtest]# ls -il
总计 0
1491138 -rw-r–r– 1 root root 48 07-14 14:17 file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
[ root@rekfan.comtest]# ln file2 file2hand
[ root@rekfan.comtest]# ls -il
总计 0
1491138 -rw-r–r– 1 root root 48 07-14 14:17 file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2hand
[ root@rekfan.comtest]#
注意在创建链接前,file1 显示的链接数目为1,创建链接后file1和file1hard的链接数目都变为2;file1和file1hard在inode号是一样的file1和file1hard显示的文件大小也是一样 。可见进行了ln命令的操作结果:file1和file1hard是同一个文件的两个名字 , 它们具有同样的索引节点号和文件属性,建立文件file1的硬链接,就是为file1的文件索引节点在当前目录上建立一个新指针 。你可以删除其中任何一个,如rm file2 ,每次只会删除一个指针,链接数同时减一,当链接数减为0时 , 内核才会把文件内容从磁盘上删除 。
还可以在不同目录,但同一文件系统中建立文件的硬链接 。设file1、file2在目录/home/root/dir1中 , 下面的命令,在/home/root中建立file2的硬链接 。
ln file2 /home/root/file2hard
下面的程序,是将dir1目录中所有文件,在目录dir2中建立硬链接
如果使用了 ln –f existingfile newfile,如果newfile已经存在,则无论原来newfile是什么文件,只用当前用户对它有写权限,newfile就成为exisitngfile的硬链接文件 。
尽管硬链接节省空间,也是Linux系统整合文件系统的传统方式,但是存在一下不足之处:
(1)不可以在不同文件系统的文件间建立链接

推荐阅读