Làm sao tạo liên kết tượng trưng (Symlink) trong Windows?
Nhiều người tin rằng liên kết tượng trưng (symlink) chỉ có tại hệ điều hành Linux mà không có trên hệ điều hành Windows, thực ra là Windows Vista, 7, 8 và 10 đã bổ sung liên kết tượng trưng. Trong bài này chúng ta cùng tìm hiểu làm sao để tạo liên kết tượng trưng trên Windows.
Liên kết tượng trưng là gì?
Symlink là chữ viết tắt của Symbolic Link và được dịch sang tiếng Việt là liên kết tượng trưng. Liên kết tượng trưng là đối tượng hệ thống tập tin trỏ đến đối tượng hệ thống tập tin khác, được xem như là đường tắt nâng cao (advanced shorcut). Các liên kết tượng trưng hoàn toàn vô hình đối với người dùng, Windows sẽ xem các liên kết này như là tập tin hoặc thư mục thông thường.
Có 3 dạng liên kết trên hệ thống tập tin NTFS đó là cứng (hard), mềm (soft) và cầu nối (junction). Một liên kết được tạo trên Windows chỉ có thể 1 trong 3 dạng liên kết trên.
- Liên kết mềm (soft link) còn được gọi là liên kết tượng trưng (symbolic link). Liên kết mềm chẳng có gì khác với đường tắt (shortcut) thông thường và có thể trỏ đến bất kỳ tập tin, thư mục ở máy tính hoặc ổ đĩa mạng. Ngoài ra, liên kết mềm sẽ không chiếm dung lượng trên ổ đĩa.
- Liên kết cứng (Hard Link) có sự khác biệt nhỏ đó là bạn không thể tạo ra một liên kết nằm ở phân vùng (partition) khác nhau. Tức là bạn không thể tạo ra liên kết từ ổ đĩa C: đến ổ đĩa E: hoặc ngược lại. Liên kết cứng không chiếm dung lượng trên ổ đĩa máy tính và rất giống các tập tin thông thường.
- Liên kết junction (tạm dịch là cầu nối), thực ra chỉ là thư mục có một liên kết cứng sang thư mục khác vì chúng ta không thể nào tạo được liên kết cứng đến tập tin. Không giống với liên kết cứng là bạn có thể tạo ra liên kết đến các phân vùng khác nhau trên ổ đĩa. Như 2 liên kết trên, liên kết junction không hề chiếm dung lượng trên ổ đĩa. Chúng ta khó phân biệt đâu là thư mục liên kết cứng và đâu là thư mục thông thường nếu không dùng lệnh dir trong Windows.
Tạo liên kết tượng trưng
Chúng ta có thể tạo ra liên kết tượng trưng với lệnh mklink, mklink là chữ viết tắt của make link. Mklink là một lệnh nội trú trong hệ điều hành Windows. Để chạy lệnh mklink, chúng ta mở Command Prompt lên và nhập lệnh mklink không có tham số, lệnh này sẽ hiển thị hướng dẫn sử dụng.
Cú pháp của lệnh mklink là:
[code]mklink <liên_kết> <mục_tiêu>[/code]Cũng cần phải giải thích sơ qua về các tham số của lệnh mklink:
- /D
- tạo liên kết tượng trưng (liên kết mềm) thư mục. Mặc định thì sẽ tạo ra liên kết tượng trưng tập tin.
- /H
- tạo ra liên kết cứng (chỉ có hiệu lực đối tập tin).
- /J
- tạo ra liên kết cứng (chỉ có hiệu lực đối thư mục).
- liên_kết
- tên của liên kết tượng trưng.
- mục_tiêu
- chỉ ra đường dẫn (tương đối hoặc tuyệt đối) mà liên kết trỏ đến.
Liên kết mềm
Ví dụ, ta muốn tạo một liên kết mềm từ C:\LinkToTutorials trỏ đến D:\Tutorials, ta dùng lệnh sau:
[code]mklink /D C:\LinkToTutorials D:\Tutorials[/code]Sau khi dùng lệnh mklink tạo liên kết mềm, ta có thể dùng lệnh dir để kiểm tra lại, mỗi thư mục liên kết mềm đều có <SYMLINKD>.
Ngoài ra, khi xem thuộc tính của C:\LinkToTutorials bạn sẽ thấy có tab Shorcut, đó là sự khác biệt giữa thư mục liên kết mềm và thư mục thông thường.
Ở trên chỉ là tạo liên kết mềm thư mục, đối với tập tin thì bạn không cần dùng đến tham số /D, vì mặc định là lệnh mklink sẽ tạo tập tin liên kết mềm. Giả sử ta muốn tạo một liên kết mềm từ C:\Cpuz.zip trỏ đến D:\Software\cpu-z_1.72.1-en.zip, ta dùng lệnh sau:
[code]mklink C:\Cpuz.zip D:\Software\cpu-z_1.72.1-en.zip[/code]Dùng lệnh dir để kiểm tra lại, mỗi tập tin liên kết mềm đều có <SYMLINK>.
Liên kết cứng
Đó là với liên kết mềm, còn muốn tạo một liên kết cứng từ D:\wget.exe trỏ đến D:\Software\wget.exe, ta dùng lệnh sau:
[code]mklink /H D:\wget.exe D:\Software\wget.exe[/code]Bạn không thể tạo ra một liên kết cứng nếu không cùng nằm trên 1 ổ đĩa, nếu bạn vẫn cố gắng thực thi thì sẽ nhận được kết quả như sau:
Liên kết junction
Tham số /H của lệnh mklink chỉ giúp bạn tạo được liên kết cứng cho tập tin thôi, còn nếu muốn tạo liên kết cứng cho thư mục thì bạn cần dùng đến tham số /J, giả sử bạn muốn liên kết cứng từ C:\Winrar trỏ đến D:\Software\WinRar, ta dùng lệnh sau:
[code]mklink /J C:\Winrar D:\Software\WinRar[/code]Bạn sẽ khó phân biệt giữa thư mục liên kết cứng và thư mục thông thường nếu như không dùng lệnh dir.
Nếu dùng lệnh dir kiểm tra thì sẽ thấy thư mục liên kết cứng đều có <JUNCTION>. Cũng phải nhắc lại là đối với thư mục liên kết cứng (dùng tham số /J) thì bạn được phép khác ổ đĩa không giống như tập tin liên kết cứng (dùng tham số /H).
Lưu ý: nếu bạn thực thi lệnh mklink mà không có quyền quản trị (Administrator) thì bạn sẽ nhận được thông báo “You do not have sufficient privilege to perform this operation”.
Xóa liên kết tượng trưng
Việc xóa liên kết tượng trưng vô cùng đơn giản, như đã nói ở trên là Windows sẽ xem các liên kết mềm và cứng như tập tin/thư mục thông thường. Nên bạn chỉ việc xóa các liên kết này như xóa các tập tin/thư mục là được.
Tổng kết
Tạo một liên kết mềm, liên kết cứng và liên kết junction trong Windows rất là dễ dàng, chỉ cần dùng lệnh mklink là sẽ tạo được tất cả những liên kết trên. So với lệnh ln bên Linux thì lệnh mklink bên Windows có ít tham số và cũng đơn giản hơn. Mục đích chung của lệnh ln và mklink cũng chỉ để tạo ra những liên kết trên hệ điều hành Linux và Windows thôi.
This comment has been removed by a blog administrator.
ReplyDelete