Tạo liên kết tượng trưng trong Windows

0
1110
(Last Updated On: Th4 25, 2018)

Xin chào tất cả các bạn, hẳn những bạn nào sử dụng Linux đã từng biết đến việc tạo soft link hay hard link cho tập tin hay thư mục. Việc tạo các liên kết “cứng”, “mềm” tưởng chừng như rất đơn giản nhưng mang lại hiệu quả vô cùng to lớn cho nhiều việc. Đặc biệt đó là sử dụng cùng một gốc thư mục nhưng chứa được nhiều dữ liệu hơn trên ổ cứng khác.

Mình giả sử như bạn có ổ cứng /dev/sda với phân vùng /dev/sda1 được mount vào thư mục /data chẳng hạn. Dung lượng ổ cứng /dev/sda là 1TB.

Sau một thời gian lưu trữ dữ liệu, và chương trình mặc định lưu trữ trên thư mục /data và phân cấp ra theo năm và tháng kiểu như:

/data/uploads/2018/01/*

Dấu * tượng trưng cho các tập tin được lưu trữ. Đến một ngày nào đó dữ liệu của bạn ngày càng nhiều, và các tập tin trong năm 2018 nằm trong thư mục /data/uploads/2018/ dần chiếm hết dung lượng ổ cứng là 1TB.

Sau đó đến năm 2019 chẳng hạn, ổ cứng /dev/sda sắp hết dung lượng lưu trữ. Bạn đi mua thêm một cứng để gắn vào máy tính.

Nhưng câu hỏi đặt ra là bây giờ phải làm thế nào? Tạo một ổ LVM mới từ hai ổ cứng trên sao? Điều này cũng sẽ khá phức tạp so với những bạn nào mới tập tành Linux và các khái niệm Physical Volume, Volume Group rồi Logical Volume. Như vậy tạo một liên kết tượng trưng đến là nhanh nhất (cái gì cũng có hai mặt của nó cả, tùy bạn lựa chọn cách làm nào cho tiện lợi và đúng đắn nhất phù hợp với hoàn cảnh nữa).

Bây giờ ổ cứng mới là /dev/sdb với phân vùng /dev/sdb1 được mount vào thư mục /data2

Bây giờ chúng ta tạo một liên kết tượng trưng trên Linux, và tên thư mục là 2019.

ln -s /data2/uploads/2019 /data/uploads

Vậy là bây giờ thư mục /data/uploads/2019 thực chất là tượng trưng cho thư mục thật nằm ở /data2/uploads/2019.

Như thế là xong. Ở trên Linux là như vậy. Vậy trên Windows thì sao? Khi nào chúng ta cần dùng đến những liên kết tượng trưng như vậy?

Chẳng hạn như bạn muốn lưu trữ trên cùng một thư mục để tiện quản lý khi mà tập tin đó có thể được lưu trên phân vùng khác.

Để sử dụng lệnh tạo liên kết cứng hay mềm trong Windows các bạn mở CMD lên, chọn Run as adminitrator:

Trong cửa sổ CMD, các bạn dùng lệnh mklink để xem hướng dẫn:

mklink

Trong trường hợp của mình, trang https://video.vngeek.com chứa các tập tin video nằm ở thư mục /var/www/html/videos. Mình đã mount cả system vào ổ F trên máy tính của mình bằng trương trình SFTP Net Drive 2017. Và bây giờ mình muốn tạo một thư mục là D:\fadrive trên máy tính mình, khi mình vào thư mục này, thì mình cũng sẽ truy cập những tập tin nằm ở /var/www/html/videos trên server.

mklink /D D:\fadrive F:\var\www\html\videos

Giả sử mình phải tạo symbolic link bởi là net Drive không tạo được Directory Junction.

Những bạn nào ngại với những dòng lệnh trong CMD hay bất cứ trường hợp nào phải dùng đến dòng lệnh thì mình xin giới thiệu với các bạn công cụ Link Shell Extension.

Mình đã lưu lại một bản để đề phòng, các bạn có thể download cho Windows 32bit64bit.

Các bạn tải về đúng với phiên bản hệ điều hành của các bạn rồi cài đặt bình thường nhé. Để mọi thứ ổn định khi hoạt động, các bạn có thể khởi động lại máy sau khi cài đặt xong chương trình.

Việc tạo liên kết rất đơn giản, các bạn bấm chuột phải vào thư mục các bạn muốn tạo liên kết tượng trưng (liên kết mềm, cứng, junction) sau đó chọn Pick Link Source

Việc của bạn bây giờ chỉ là đi đến một thư mục khác lại tiếp tục bấm chuột phải vào vùng trống rồi tạo loại liên kết mong muốn.

Như vậy đỡ phải dùng dòng lệnh phức tạp mà dễ dàng cho đa số người dùng. Những ngày mới tập tành làm web. Mình tải LAMP cho Windows về cài cho khỏi lỗi. Nhưng sau này tìm hiểu được rồi thì chuyển sang Linux cho nhẹ. :).

Chúc các bạn thành công.

Bình luận