大部分朋友可能知道UNIX提供了创建文件的Link的功能,而用过Windows的NTFS文件系统所支持的Link功能的朋友可能就没有那么多了(注意我说的不是Shortcut)。今天正好由于工作原因研究了一下相关内容,整理一下分享出来。本文简单介绍如何在Windows系统中使用NTFS文件系统所提供的功能创建Link。NTFS支持两种Link,Junction Point和Hard Link。
Junction Point
Junction Point是NTFS文件系统中Reparse Point的一种类型,支持对Folder的链接。
创建junction point可以使用Sysinternals所提供的Junction.exe工具来创建,其命令格式为:
(Sysinternals工具可以在http://www.microsoft.com/technet/sysinternals/default.mspx 下载)
比如我们可以创建一个对于C:\temp的Link,名为C:\Link_Temp:
C:\>junction C:\Link_Temp C:\temp
Junction v1.03 - Win2K junction creator and reparse point viewer
Copyright (C) 2000-2002 Mark Russinovich
Systems Internals - http://www.sysinternals.com
Created: C:\Link_Temp
Targetted at: C:\temp
|
那么,就可以像普通Folder一样的对Link_Temp进行操作了:
C:\>dir C:\link_Temp
Volume in drive C is Vista
Volume Serial Number is 0C8F-86E1
Directory of C:\link_Temp
07/15/2007 11:48 AM <DIR> .
07/15/2007 11:48 AM <DIR> ..
|
显然Shortcut是做不到这一点的。
如果我们不需要这个Link了,可以随时键入rmdir C:\link_temp来删除这个Link,即使C:\Temp不为空。
关于Conjunction Point的详细内容可以参看:http://en.wikipedia.org/wiki/NTFS_junction_point
Windows 2000 Resource Kit中也提供了一个类似工具用于创建Conjunction Point,可以参考下面这篇文章:
http://msdn2.microsoft.com/en-us/library/aa363878.aspx
在Windows Vista上提供了更强大的Symbolic Link功能,对文件也可以使用,具体可以参看:
http://msdn2.microsoft.com/en-us/library/aa363878.aspx
Hard Link
Hard Link和Conjunction Point不同的地方在于,Hard Link类似对实际文件内容的一个Reference,有几个不同的文件名对其引用那么就存在几个Reference。当所有的Reference都被删除的时候,文件内容则被删除。可以把通常情况下的文件名认为是Hard Link的一种特殊形式,即只有一个File Name引用实际的文件内容。任何对所有引用的文件名的操作都会改变文件内容。
创建Hard Link可以通过fsutil(在XP/2003/Vista上存在)来创建,格式如下:
fsutil hardlink create <link> <target>
|
C:\>fsutil hardlink create test_1.txt test.txt
Hardlink created for C:\test_1.txt <<===>> C:\test.txt
C:\>fsutil hardlink create test_2.txt test.txt
Hardlink created for C:\test_2.txt <<===>> C:\test.txt
|
C:\>fsutil hardlink create test_1.txt test.txt
Hardlink created for C:\test_1.txt <<===>> C:\test.txt
C:\>fsutil hardlink create test_2.txt test.txt
Hardlink created for C:\test_2.txt <<===>> C:\test.txt
|
大家可以自己试验一下,看删掉原来文件test.txt之后,test_1.txt和test_2.txt是否还存在,内容是否还存在。答案是肯定的。
关于Hard Link的具体内容可以参看:http://en.wikipedia.org/wiki/Hard_link
分享到:
相关推荐
Link Shell Extension 是一个可以在 NTFS 文件系统中创建“硬连接”的 Windows 资源管理器扩展。“硬连接”让一个文件在多个目录下重复出现,但只占用一份文件的空间。例如,一个大小为 10MB 的“E:\a.doc”的文件,...
Link Shell Extension 是一个可以在 NTFS 文件系统中创建“硬连接”的 Windows 资源管理器扩展。 “硬连接”让一个文件在多个目录下重复出现,但只占用一份文件的空间。例如,一个大小为 10MB 的“E:\a.doc”的...
Link Shell Extension是一个可以在 NTFS 文件系统中创建“硬连接”的 Windows 资源管理器扩展。也许你会问,何为硬链接呢? 简单滴说“硬连接”就是让一个文件在多个目录下重复出现,但只占用一份文件的空间。例如,...
用于在ntfs分区上创建文件链接 类似于unix link
最好用的NTFS LINK工具,junction工具的可视版。
NTFS 文件系统支持称为硬链接(在此称为硬链接)的功能。硬链接提供保持文件的一个副本尚未有它出现在多个文件夹(目录)的能力。可以使用 Windows 资源工具包中包含的 POSIX ln.exe,Windows 中包含的 fsutil 命令...
-n:一般而言,mount挂上后会在/etc/mtab中写入一笔资料,在系统中没有可写入文件系统的情况下,可以用这个选项取消这个动作。 4.应用技巧 在Linux 和Unix系统上,所有文件都是作为一个大型树(以/为根)的一部分...
在这一讲中,我们主要是了解一下 Linux 的概况,以及对 Linux 有一个初步的感性认识。 一.什么是Linux? Linux 是一个以 Intel 系列 CPU(CYRIX,AMD 的 CPU也可以)为硬件平台,完全免费的 UNIX 兼容系统,完全...
无盘符方式下,用rdutil创建ram目录指向虚拟盘(只能在NTFS分区里): rdutil link C:\ramdisk 连接 C:\ramdisk 到虚拟盘根目录 rdutil link C:\TEMP TEMP 连接 C:\TEMP 到虚拟盘的 \TEMP 下 rmdir C:\...
后面是IDE设备的类型和硬件参数,TYPE用来说明硬盘设备的类型,我们可以选择AUTO、USER、NONE的工作模式,AUTO是由系统自己检测硬盘类型,在系统中存储了1-45类硬盘参数,在使用该设置值时不必再设置其它参数;...
重要1: 如果您的机器中同时安装了双系统并且有VISTA或2008系统,请勿必在您的VISTA或 2008系统中安装MaxDOS否则可能不能正常启动MaxDOS,请至我们网站下载专用版本. 重要2: 7.1 版需要专用网刻服务端支持,网刻前请先...
8.支持系统盘为NTFS分区及读写NTFS分区内容,并且操作NTFS文件及文件夹. 9.内置常用软件如:DISKGEN,SPFDISK,GHOST,NTFSDOS,AEFDISK,NETCOPY等软件. 10.支持DOS下清除 WINDOWS 2000/XP/2003 登陆密码,且不会对系统...
重要1: 如果您的机器中同时安装了双系统并且有VISTA或2008系统,请勿必在您的VISTA或 2008系统中安装MaxDOS否则可能不能正常启动MaxDOS,请至我们网站下载专用版本. 重要2: 7.1 版需要专用网刻服务端支持,网刻前请先...
重要1: 如果您的机器中同时安装了双系统并且有VISTA或2008系统,请勿必在您的VISTA或 2008系统中安装MaxDOS否则可能不能正常启动MaxDOS,请至我们网站下载专用版本. 重要2: V7版需要专用网刻服务端支持,网刻前请先...
后会在您指定的位置创建一个MaxBAK的系统隐藏文件夹,如果您删除了该分区的MaxBAK文件 夹将造成全自动备份与还原功能失效.另:该功能默认自动备份为硬盘的第一分区,如果您想 修改备份/还原源或目标,请使用开始菜单-...