Các loại liên kết khác nhau trong Windows là gì? Làm thế nào để tôi tạo ra chúng?


54

Có thể liên kết hai tệp hoặc thư mục mà không có phần mở rộng khác nhau trong Windows không?

Tôi đang tìm kiếm chức năng tương đương với các liên kết mềm và cứng trong Unix.



bài viết tuyệt vời tại đây cects.com/ Hãy coi chừng các phiên bản trước w7
barlop

Câu trả lời:


57

Xin lưu ý rằng sự khác biệt đáng tiếc duy nhất là bạn cần quyền Quản trị viên để tạo các liên kết tượng trưng. IE, bạn cần một dấu nhắc nâng cao. (Một cách giải quyết là SeCreateSymbolicLinkPriv đặc quyền có thể được cấp cho Người dùng bình thường thông qua secpol.msc.)

Lưu ý về thuật ngữ: Phím tắt Windows không được gọi là "symlinks"; chúng là các liên kết shell , vì chúng đơn giản là các tệp mà trình bao Windows Explorer xử lý đặc biệt.


Symlinks: Làm cách nào để tạo chúng trên hệ thống tệp NTFS?

Windows Vista và các phiên bản mới hơn hỗ trợ các liên kết kiểu Unix trên các hệ thống tệp NTFS. Hãy nhớ rằng chúng cũng tuân theo cùng độ phân giải đường dẫn - các liên kết tương đối được tạo tương đối với vị trí của liên kết, không phải với thư mục hiện tại. Mọi người thường quên điều đó. Chúng cũng có thể được thực hiện bằng cách sử dụng một đường dẫn tuyệt đối; EG c: \ windows \ system32 thay vì \ system32 (đi đến thư mục system32 được kết nối với vị trí của liên kết).
Các liên kết tượng trưng được thực hiện bằng cách sử dụng các điểm lặp lại và thường có hành vi tương tự như các liên kết tượng trưng Unix.

Đối với các tệp bạn có thể thực thi:

mklink  linkname  targetpath

Đối với các thư mục bạn có thể thực thi:

mklink / d linkname  targetpath

Hardlinks: Làm cách nào để tạo chúng trên hệ thống tệp NTFS?

Tất cả các phiên bản Windows NT đều hỗ trợ các liên kết cứng kiểu Unix trên các hệ thống tệp NTFS. Sử dụng mklink trên Vista trở lên:

mklink / h linkname  targetpath

Đối với Windows 2000 và XP, hãy sử dụng fsutil.

liên kết cứng fsutil tạo đường dẫn  đích tên liên kết

Đây cũng làm việc theo cách tương tự như liên kết cứng Unix - nhiều mục bảng tập tin trỏ đến cùng một inode .


Các mối nối thư mục: Làm cách nào để tạo chúng trên các hệ thống tệp NTFS?

Windows 2000 trở lên hỗ trợ các mối nối thư mục trên các hệ thống tập tin NTFS. Chúng khác với các liên kết tượng trưng ở chỗ chúng luôn tuyệt đối và chỉ trỏ đến các thư mục, không bao giờ vào các tệp.

mklink / j linkname  targetpath

Trên các phiên bản không có mklink, tải xuống junctiontừ Sysiternals:

đường nối  tên  đích

Các mối nối được thực hiện bằng cách sử dụng các điểm lặp lại .


Làm cách nào tôi có thể gắn kết âm lượng bằng cách sử dụng điểm lặp lại trong Windows?

Để hoàn thiện, trên Windows 2000 trở lên , các điểm lặp lại cũng có thể trỏ đến các ổ đĩa , dẫn đến việc gắn đĩa kiểu Unix liên tục :

mountvol  mountpoint \\? \ Volume { volumeguid }

Khối lượng GUID được liệt kê bởi mountvol; chúng là tĩnh nhưng chỉ trong cùng một máy.


Có cách nào để làm điều này trong Windows Explorer không?

Có, bạn có thể sử dụng tiện ích mở rộng Shell Link Link , điều này giúp bạn dễ dàng tạo các liên kết đã được mô tả ở trên. Bạn có thể tìm thấy các tải xuống ở dưới cùng của trang .

Hệ thống tệp NTFS được triển khai trong NT4, Windows 2000, Windows XP, Windows XP64 và Windows7 hỗ trợ một cơ sở được gọi là liên kết cứng (được gọi ở đây là Hardlinks ). Hardlinks cung cấp khả năng giữ một bản sao của một tập tin nhưng nó xuất hiện trong nhiều thư mục (thư mục). Chúng có thể được tạo bằng lệnh POSIX lntrong Bộ tài nguyên Windows, tiện ích lệnh fsutil có trong Windows XP hoặc tiện ích ln.exe dòng lệnh của tôi .

Tiện ích mở rộng cho phép người dùng chọn một hoặc nhiều tệp hoặc thư mục, sau đó sử dụng chuột, hoàn thành việc tạo Liên kết bắt buộc - Liên kết cứng, Liên kết hoặc Liên kết tượng trưng hoặc trong trường hợp thư mục để tạo Bản sao bao gồm Liên kết cứng hoặc Biểu tượng. LSE được hỗ trợ trên tất cả các phiên bản Windows hỗ trợ phiên bản NTFS 5.0 trở lên, bao gồm Windows XP64 và Windows7. Liên kết cứng, liên kết và liên kết tượng trưng KHÔNG được hỗ trợ trên các hệ thống tệp FAT và cũng không phải là quá trình Sao chép và Sao chép thông minh được hỗ trợ trên các hệ thống tệp FAT.

Nguồn có thể được chọn đơn giản bằng cách sử dụng menu chuột phải.

Và tùy thuộc vào những gì bạn đã chọn , bạn nhấp chuột phải vào một thư mục đích và nhận một menu với các tùy chọn.

Điều này làm cho nó rất dễ dàng để tạo liên kết. Để có hướng dẫn mở rộng, hãy đọc tài liệu LSE .

Tải xuống có thể được tìm thấy ở dưới cùng của trang của họ .

URL MSDN có liên quan:


40

Trong câu trả lời này, tôi sẽ cố gắng để phác thảo những gì các loại khác nhau của các liên kết trong quản lý thư mục là cũng như lý do tại sao họ là hữu ích cũng như khi họ có thể được sử dụng. Khi cố gắng đạt được một tổ chức nhất định trên khối lượng tệp của bạn, biết các loại khác nhau cũng như tạo chúng là kiến ​​thức có giá trị.

Để biết thông tin về cách tạo một liên kết nhất định, hãy tham khảo câu trả lời của grawity .

Liên kết là gì?

Một liên kết là một mối quan hệ giữa hai thực thể; trong ngữ cảnh quản lý thư mục, một liên kết có thể được xem là mối quan hệ giữa hai thực thể sau:

  1. Bảng thư mục

    Bảng này theo dõi các tệp và thư mục nằm trong một thư mục cụ thể.

    Bảng thư mục là một loại tệp đặc biệt đại diện cho một thư mục (còn được gọi là thư mục). Mỗi tệp hoặc thư mục được lưu trữ trong nó được thể hiện bằng một mục 32 byte trong bảng. Mỗi mục ghi lại tên, phần mở rộng, thuộc tính (lưu trữ, thư mục, ẩn, chỉ đọc, hệ thống và âm lượng), ngày và giờ sửa đổi cuối cùng, địa chỉ của cụm đầu tiên của dữ liệu tệp / thư mục và cuối cùng là kích thước của tập tin / thư mục.

  2. Cụm dữ liệu

    Cụ thể hơn, cụm đầu tiên của tập tin hoặc thư mục.

    Một cụm là lượng không gian đĩa logic nhỏ nhất có thể được phân bổ để chứa một tệp.

Điều đặc biệt về mối quan hệ này là nó cho phép một người chỉ có một cụm dữ liệu nhưng có nhiều liên kết đến cụm dữ liệu đó, điều này cho phép chúng tôi hiển thị dữ liệu như hiện diện ở nhiều vị trí. Tuy nhiên, có nhiều cách để làm điều này và mỗi phương pháp làm như vậy có tác dụng riêng.

Để xem nguồn gốc này từ đâu, hãy quay về quá khứ ...

Liên kết shell là gì và tại sao không phải lúc nào cũng đủ?

Mặc dù nghe có vẻ không quen, nhưng tất cả chúng ta đều biết điều này! Phím tắt tệp chắc chắn là cách liên kết tệp được sử dụng thường xuyên nhất. Chúng được tìm thấy trong một số phiên bản đầu tiên của Windows 9x và đã có ở đó một thời gian dài.

Chúng cho phép bạn nhanh chóng tạo một lối tắt đến bất kỳ tệp hoặc thư mục nào, chúng được tạo cụ thể hơn để lưu trữ thông tin bổ sung dọc theo liên kết như ví dụ thư mục làm việc mà tệp được thực thi, các đối số để cung cấp cho chương trình cũng như các tùy chọn muốn tối đa hóa chương trình.

Nhược điểm của phương pháp liên kết này là chính xác, thông tin bổ sung yêu cầu loại liên kết này phải có một cụm dữ liệu riêng để chứa tệp đó. Vấn đề sau đó không nhất thiết là nó chiếm dung lượng ổ đĩa, mà đúng hơn là liên kết được truy cập gián tiếp vì Cụm dữ liệu trước tiên phải được yêu cầu trước khi chúng tôi nhận được liên kết thực tế. Nếu đường dẫn được đề cập trong liên kết thực tế đã biến mất, liên kết shell sẽ vẫn tồn tại.

Nếu bạn đã thao tác trên tệp đang được đề cập, trước tiên bạn thực sự sẽ phải tìm ra thư mục của tệp đó. Bạn không thể đơn giản mở liên kết trong trình chỉnh sửa vì khi đó bạn sẽ chỉnh sửa .lnktệp thay vì tệp được liên kết. Điều này khóa rất nhiều trường hợp sử dụng có thể cho các liên kết shell.

Làm thế nào để một liên kết điểm nối cố gắng giải quyết những vấn đề này?

Điểm giao tiếp NTFS cho phép người ta tạo một liên kết tượng trưng đến một thư mục trên các ổ đĩa cục bộ , theo cách mà nó hoạt động giống như một thư mục bình thường. Vì vậy, bạn có một thư mục tệp được lưu trữ trên đĩa của mình nhưng có thể truy cập nó từ nhiều vị trí.

Khi loại bỏ điểm giao nhau, thư mục gốc vẫn còn. Khi xóa thư mục gốc, điểm giao nhau vẫn còn. Sẽ rất tốn kém khi liệt kê đĩa để kiểm tra các điểm tiếp giáp phải xóa. Đây là một nhược điểm như là kết quả của việc thực hiện nó.

Điểm nối NTFS được triển khai bằng các điểm lặp lại NTFS , là các đối tượng hệ thống tệp NTFS được giới thiệu với Windows 2000.

Một điểm lặp lại NTFS là một loại đối tượng hệ thống tệp NTFS. Các điểm lặp lại cung cấp một cách để mở rộng hệ thống tệp NTFS bằng cách thêm thông tin bổ sung vào mục nhập thư mục, do đó, bộ lọc hệ thống tệp có thể diễn giải cách hệ điều hành sẽ xử lý dữ liệu. Điều này cho phép tạo các điểm nối, liên kết tượng trưng NTFS và điểm gắn kết âm lượng và là một tính năng chính của Hệ thống lưu trữ phân cấp của Windows 2000.

Đúng vậy, việc phát minh ra điểm lặp lại cho phép chúng ta thực hiện các cách liên kết tinh vi hơn.

Điểm giao tiếp NTFS là một liên kết mềm , có nghĩa là nó chỉ liên kết đến tên của tệp. Điều này có nghĩa là bất cứ khi nào liên kết bị xóa, dữ liệu gốc vẫn còn nguyên ; nhưng, bất cứ khi nào dữ liệu gốc bị xóa, dữ liệu gốc sẽ biến mất .

Tôi cũng có thể tập tin liên kết mềm? Có liên kết tượng trưng ?

Có, khi Windows Vista xuất hiện, họ quyết định mở rộng chức năng của (các) đối tượng hệ thống tệp NTFS bằng cách cung cấp liên kết tượng trưng NTFS , đây là một liên kết mềm hoạt động giống như điểm nối NTFS. Nhưng có thể được áp dụng cho tập tin và thư mục.

Họ một lần nữa chia sẻ cùng một hành vi xóa, trong một số trường hợp sử dụng, điều này có thể gây đau khổ cho các tệp vì bạn không muốn có một bản sao vô dụng của tệp treo xung quanh. Đây là lý do tại sao khái niệm liên kết cứng đã được thực hiện.

Liên kết cứng là gì và nó hoạt động như thế nào trái ngược với liên kết mềm?

Liên kết cứng không phải là đối tượng hệ thống tệp NTFS, mà thay vào đó chúng là liên kết đến một tệp (chi tiết, chúng đề cập đến mục MFT vì lưu trữ thông tin bổ sung về tệp thực tế). Mục nhập MFT có một trường ghi nhớ số lượng thời gian mà một tệp đang được liên kết cứng. Dữ liệu sẽ vẫn có thể truy cập được miễn là có ít nhất một liên kết trỏ đến nó vẫn tồn tại.

Vì vậy, dữ liệu không còn phụ thuộc vào một mục MFT duy nhất tồn tại . Miễn là có một liên kết cứng xung quanh, dữ liệu sẽ tồn tại. Điều này ngăn việc vô tình xóa đối với các trường hợp người ta không muốn nhớ tệp gốc ở đâu.

Ví dụ, bạn có thể tạo một thư mục với "phim tôi vẫn phải xem" cũng như thư mục "phim tôi đi nghỉ" cũng như thư mục "phim yêu thích". Những bộ phim không thuộc loại nào trong số này sẽ bị xóa đúng cách trong khi những bộ phim thuộc loại này sẽ tiếp tục tồn tại ngay cả khi bạn đã xem phim.

Một liên kết điểm gắn kết khối lượng là gì?

Một số nhân viên CNTT hoặc doanh nghiệp có thể không thích phải nhớ hoặc nhập các ký tự ổ đĩa khác nhau mà hệ thống của họ có. Điều gì M:thực sự có nghĩa là gì? Có phải là Âm nhạc? Phim? Người mẫu? Bản đồ?

Microsoft đã nỗ lực trong năm qua để cố gắng di chuyển người dùng từ xa work in drive C:sang work in your user folder. Tôi chắc chắn có thể nói rằng những người dùng bị UAC và các vấn đề về quyền là những người không tuân theo các nguyên tắc này, nhưng điều đó không khiến họ tự hỏi:

Tại sao bạn thậm chí nên xem bất cứ thứ gì ngoại trừ các tệp cá nhân của bạn hàng ngày?

Điểm gắn kết âm lượng là cách CNTT chuyên nghiệp không bị giới hạn bởi các ký tự ổ đĩa cũng như có cấu trúc thư mục có ý nghĩa đối với chúng, nhưng ...

Các tập tin của tôi ở những nơi khác nhau, tôi có thể sử dụng các liên kết để tập hợp chúng lại không?

Trong Windows 7, Thư viện đã được giới thiệu chính xác cho mục đích này. Thực hiện với các tệp nhạc nằm trong thư mục này và thư mục đó và thư mục đó . Từ cấp độ xem thấp hơn, một thư viện có thể được xem dưới dạng nhiều liên kết. Chúng một lần nữa được thực hiện như một đối tượng hệ thống tệp có thể chứa nhiều tham chiếu. Về bản chất, đây là mối quan hệ một-nhiều ...

Não tôi nổ tung ... Bạn có thể tóm tắt khi nào nên sử dụng chúng không?

  • Liên kết phím tắt: Sử dụng chúng khi bạn cần truy cập nhanh vào một tệp thực thi hoặc trang web, một tệp mà bạn khởi chạy rất thường xuyên hoặc khi bạn cần chỉ định tham số cho một ứng dụng và một tệp bó là quá mức cần thiết. Không sử dụng nó khi bạn có ý định thao tác với tệp thông qua phím tắt của nó.

  • Điểm nối: Sử dụng chúng khi bạn muốn một thư mục ở nơi khác, điều này cho phép bạn di chuyển các thư mục đến các ổ đĩa nhanh hơn hoặc chậm hơn mà không mất khả năng truy cập đường dẫn gốc. Sử dụng khác là khi bạn muốn truy cập vào một thư mục thông qua một đường dẫn khác. Chúng không thể được sử dụng để liên kết đến một chia sẻ.

  • Liên kết mềm: Sử dụng chúng khi liên kết phím tắt không đủ, nó thường được sử dụng khi bạn có ý định thao tác với tệp thông qua phím tắt. Hoặc khi bạn muốn tệp nằm trên ổ đĩa nhanh hơn hoặc chậm hơn mà không mất khả năng truy cập đường dẫn gốc.

  • Liên kết cứng: Sử dụng chúng khi bạn chỉ muốn một tập tin biến mất khi tất cả các liên kết cứng đến nó bị xóa. Điều này không thể được sử dụng cho các thư mục.

  • Điểm gắn kết âm lượng: Sử dụng chúng khi bạn hết ký tự ổ đĩa hoặc khi bạn thấy khả thi hơn khi truy cập ổ đĩa thông qua một đường dẫn thay vì thông qua ký tự ổ đĩa.

  • Thư viện: Sử dụng chúng khi bạn có cùng loại tệp tại nhiều vị trí khác nhau và bạn cần chúng ở cùng nhau, điều này hỗ trợ các ổ đĩa di động để thuận tiện cho các thư mục trên các ổ di động của bạn hiển thị giữa các tệp trên máy tính của bạn khi bạn chèn nó Bạn có thể nhấp vào các thư mục riêng lẻ từ cây thư mục trong thư viện trong chế độ xem dạng cây, điều này tạo điều kiện cho việc di chuyển các tệp giữa cả hai.


Thư viện là cấp độ vỏ như liên kết phím tắt, phải không?
Medinoc

@Medinoc: Không, họ tổng hợp nội dung của nhiều địa điểm.
Tamara Wijsman

1
Nhưng họ có làm như vậy ở cấp hệ thống tệp theo cách mà cmd.exe dircó thể liệt kê nội dung tổng hợp (trong trường hợp đó, trong hệ thống tệp là gì, tôi không thể tìm thấy nó) hoặc họ chỉ tổng hợp ở cấp độ vỏ, nơi chỉ có Windows Explorer và hộp thoại tệp có thể hiển thị chúng? Tôi đã theo ấn tượng đó là sau này, nhưng bạn "Không" thách thức này trừ khi tôi đã viết câu hỏi của tôi sai (tôi muốn nói "Libraries là vỏ cấp như liên kết tắt , phải không?" ).
Medinoc

@Medinoc: Chúng là các tập tin tại C:\Users\{User}\AppData\Roaming\Microsoft\Windows\Libraries.
Tamara Wijsman

1
@Pacerier: Windows sử dụng hệ thống định vị cũ, nơi bạn có thể di chuyển một thư mục nhạc từ các thuộc tính của nó. Thư viện là một bổ sung mới, do đó hệ điều hành hầu như không sử dụng. Vì vậy, tôi nghi ngờ nếu bất cứ điều gì sẽ phá vỡ; vì chúng chỉ nhằm mục đích hiển thị, ...
Tamara Wijsman

8

Nếu bạn đang dùng Windows Vista trở lên và có quyền quản trị viên, bạn có thể kiểm tra lệnh mklink (đây là công cụ dòng lệnh). Tôi không chắc nó thực sự như thế nào vì các cửa sổ cung cấp cho nó biểu tượng mũi tên nhỏ mà nó đặt trên các phím tắt, nhưng một bài kiểm tra notepad ++ nhanh trên một tệp văn bản cho thấy nó có thể hoạt động cho những gì bạn đang tìm kiếm.

Bạn có thể chạy mklink mà không có đối số cho hướng dẫn sử dụng nhanh.

Tôi hy vọng điều đó sẽ giúp.


mklink sử dụng các điểm giao tiếp NTFS (tôi tin đó là những gì họ được gọi) để liên kết theo kiểu Unix ít nhiều hoàn hảo. Windows có thể nói rằng đó là một ngã ba, tuy nhiên, vì vậy nó sẽ cung cấp cho nó biểu tượng mũi tên truyền thống. iirc bạn có thể loại bỏ điều này với một số vấn đề về đăng ký, nhưng tôi không nhớ là ở đâu.
jcrawfordor

2
@jcrawfordor: Các cấu trúc đĩa là "điểm lặp lại" . Các mối nối và liên kết tượng trưng là hai loại điểm khác nhau; khối lượng gắn kết là thứ ba.
grawity

1
Và vâng, @Gemini, các mklinkliên kết tượng trưng được tạo ra được thực hiện cụ thể để hoạt động giống như các liên kết Unix .
grawity

Cảm ơn grawity, cho xác nhận. Tôi chưa bao giờ chơi với họ nhiều, vì vậy tôi chỉ muốn bao gồm từ
chối.h

2

bài viết này có một số điểm khác biệt

Một điểm khác biệt quan trọng là ở một khía cạnh nào đó, các mối nối trước win7 hơi không an toàn, trong đó việc xóa chúng sẽ xóa thư mục đích.

http://cects.com/overview-to-under Hiểu-hard-links-jeft-points-and-symbolic-links-in-windows /

Không bao giờ nên loại bỏ Điểm nối trong Win2k, Win2003 và WinXP bằng Explorer, các lệnh del hoặc del / s hoặc với bất kỳ tiện ích nào đi qua các thư mục vì chúng sẽ xóa thư mục đích và tất cả các thư mục con của nó. Thay vào đó, sử dụng lệnh rmdir, tiện ích linkd hoặc fsutil (nếu sử dụng WinXP trở lên) hoặc công cụ của bên thứ ba để xóa điểm nối mà không ảnh hưởng đến mục tiêu. Trong Vista / Win7, việc xóa Điểm nối bằng Explorer hoặc bằng lệnh rmdir và del là an toàn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.