ฉันจะสร้างจุดเชื่อมต่อระบบไฟล์ NTFS ใน Windows XP ได้อย่างไร
ฉันจะสร้างจุดเชื่อมต่อระบบไฟล์ NTFS ใน Windows XP ได้อย่างไร
คำตอบ:
ตามค่าเริ่มต้น Windows XP จะไม่มีเครื่องมือในการสร้างจุดเชื่อมต่อ เครื่องมือนี้ ( linkd
) เป็นส่วนหนึ่งของ Windows ทรัพยากร Kit
เครื่องมืออีกอย่างคือทางแยกโดย Mark Russinovich
ลองใช้ยูทิลิตีjunctionจาก Sysinternals โดยมีให้ใน W2k +
คำจำกัดความของคุณเกี่ยวกับจุดเชื่อมต่อไดเร็กตอรี่เป็นไดเรกทอรีที่เชื่อมโยงไปยังอีกอันหนึ่งหรือไม่?
ถ้าเป็นเช่นนั้นมันง่าย
mklink /J <new directory to be linked> <target directory>
หลังจากนี้ไม่มีความแตกต่างระหว่างไดเรกทอรี พวกเขามี MFT_REF เดียวกัน (จากhttp://en.wikipedia.org/wiki/NTFS_symbolic_link )
fsutil
สามารถเป็นประโยชน์ในการสอบถามจุดแยกวิเคราะห์ใหม่และสร้างลิงก์
หากคุณต้องการทราบวิธีการทำสิ่งนี้โดยทางโปรแกรมคุณสามารถโทรหา IOCTL ของไดรเวอร์หน่วยเก็บข้อมูล NTFS บนตัวจัดการไดรฟ์ข้อมูล mklink
แต่มันอาจจะง่ายขึ้นเพียงแค่โทร
โปรดทราบว่าคุณจะต้องมีสิทธิ์ในการเขียนและแก้ไขสิทธิ์สำหรับไดเรกทอรีเป้าหมาย คุณจะต้องเรียกใช้ cmd.exe เพื่อให้มันทำงานได้
mklink
ไม่มีอยู่บน winxp ฉันเชื่อว่า
fsutil reparsepoint delete the_directory-junction_you_made_to_test_this
คุณสามารถทดสอบนี้โดยการแยกไดเรกทอรีแล้วใช้ คุณจะมีโหนดไดเรกทอรีที่แตกต่างและอาจว่างเปล่า
นอกจากนี้คุณยังสามารถใช้ Link Shell Extension เป็นส่วนต่อประสาน GUI ได้ มันสามารถสร้างทางแยกฮาร์ดลิงก์และแม้กระทั่ง symlink บน Windows XP หากคุณติดตั้งไดรเวอร์ฟิลเตอร์ NTFS 5 จาก Masatoshi Kimura ตามที่อธิบายไว้ http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html
นี่คือลิงก์ "สด" สำหรับ junction.exe
จุดแยกไดเรกทอรี :
mklink /J <oldpath(link)> <newpath(target)>
ทำแน่นอนคุณจะสามารถที่จะย้ายการเชื่อมโยงโดยไม่ทำลายตัวชี้ไปnewpath
newpath
หากคุณสร้างความnewpath
สัมพันธ์คุณจะสามารถป้องกันการทำลายลิงก์ได้ตราบใดที่คุณย้ายทั้งลิงก์และกำหนดเป้าหมายร่วมกันและรักษาเส้นทางที่สัมพันธ์กัน
คุณสร้างจุดเชื่อมต่อด้วย
REPARSE_MOUNTPOINT_DATA_BUFFER* pReparseInfo = // ...
pReparseInfo->ReparseTag = IO_REPARSE_TAG_MOUNT_POINT;
// ...
DeviceIoControl(..., FSCTL_SET_REPARSE_POINTFSCTL_SET_REPARSE_POINT, pReparseInfo, ...
การเรียก API pReparseInfo
ชี้ไปที่REPARSE_MOUNTPOINT_DATA_BUFFER
โครงสร้างที่คุณต้องการให้
บทความ MSDNมีชุมชนที่ให้ข้อมูลโค้ดไว้ที่ด้านล่างของหน้าซึ่งแสดงวิธีใช้ API
คุณสามารถสร้างทางแยก NTFS ด้วยซอฟต์แวร์พิเศษ ผมขอแนะนำให้เชื่อมโยงส่วนขยายเชลล์ (LSE) มันเป็นฟรีแวร์และใช้งานง่าย นอกจากนี้ยังมีเอกสารที่ดีพร้อมภาพหน้าจอทุกขั้นตอน