Linux không có lối tắt, nhưng nó có Liên kết tượng trưng – hay Liên kết tượng trưng, như chúng thường được gọi. Nhưng chính xác các liên kết tượng trưng là gì? Và làm thế nào để bạn tạo ra một? Hãy cùng tìm hiểu.
Chúng ta sẽ thử các lệnh trên bản cài đặt Ubuntu, mặc dù cú pháp hoạt động giống nhau trên tất cả các bản phân phối Linux. Thật thú vị, liên kết tượng trưng cũng có thể được tạo trên một Máy tính Mac.
Mục lục
Liên kết tượng trưng là gì?
Nếu bạn muốn có thể truy cập một tệp từ nhiều vị trí, thì việc chỉ sao chép tệp đó qua không phải là một giải pháp tốt. Bạn đang lãng phí dung lượng đĩa, chưa kể đến việc khó theo dõi các thay đổi do có nhiều tệp.
Trong GUI-dựa trên hệ điều hành, bạn sẽ khắc phục điều này bằng cách tạo lối tắt. Đối với HĐH dựa trên CUI (giống như bất kỳ bản phân phối Linux nào), câu trả lời là một liên kết tượng trưng. Ngay cả Microsoft Windows cũng có thể tận dụng các liên kết tượng trưng trong một số trường hợp.
Liên kết tượng trưng hoặc liên kết tượng trưng chỉ là một tệp trỏ đến một tệp hoặc thư mục khác – ngay cả trong một hệ thống tệp hoặc phân vùng hoàn toàn khác. Mở liên kết tượng trưng cho phép bạn truy cập vào cùng một tệp gốc, với mọi thay đổi cũng được phản ánh trong tệp chính.
Điều này cũng áp dụng cho quyền – sử dụng chmod để thay đổi quyền của tệp liên kết tượng trưng sẽ thực sự sửa đổi quyền của tệp đích.
Các loại liên kết tượng trưng
Liên kết tượng trưng còn được gọi là liên kết mềm. Như cái tên có thể gợi ý, đây không phải là loại hệ thống liên kết tệp duy nhất trên Linux. Liên kết cứng có thể được sử dụng thay thế cho liên kết tượng trưng trong một số trường hợp nhất định, mặc dù đi kèm với một số hạn chế.
Khó khăn lắm mới bắt đầu các liên kết chỉ đơn giản là các tên tệp trỏ đến cùng một nút. Mặc dù điều này làm cho chúng rất hiệu quả về tốc độ lưu trữ và truy cập, nhưng nó cũng giới hạn chúng ở các tệp trong cùng một hệ thống tệp hoặc phân vùng. Và do cách truy cập thư mục hoạt động trong Linux, bạn không thể sử dụng liên kết cứng cho các thư mục.
Mặt khác, liên kết mềm hoặc liên kết tượng trưng giống lối tắt trên màn hình hơn. Mỗi liên kết mềm về cơ bản là một tệp nhỏ trỏ đến dữ liệu gốc mà không thực sự được liên kết trực tiếp với nó. Điều này có nghĩa là các liên kết mềm có thể dễ dàng trỏ đến các tệp và thư mục trên các phân vùng và hệ thống tệp khác mà không có bất kỳ hạn chế nào.
Liên kết cứng VS Liên kết mềm – Nên sử dụng loại nào?
Liên kết mềm là dạng liên kết linh hoạt nhất vì chúng có thể được sử dụng trên cả tệp và thư mục trên nhiều hệ thống tệp mà không có bất kỳ hạn chế nào. Nhưng tại sao sau đó chúng ta thậm chí có liên kết cứng? Họ có mang lại cho bạn bất kỳ lợi thế nào so với các liên kết tượng trưng không?
Chà, trên lý thuyết, liên kết cứng hiệu quả hơn. Bởi vì chúng sử dụng các nút giống nhau, chúng không chiếm thêm dung lượng đĩa và có thể được truy cập nhanh hơn nhiều so với các liên kết mềm. Đây là lý do tại sao nhiều quản trị viên hệ thống sẽ khuyên bạn nên sử dụng liên kết cứng bất cứ khi nào bạn có thể.
Tuy nhiên, điều đó đang được nói, nhược điểm của việc sử dụng các liên kết tượng trưng là rất ít. Các máy tính hiện đại đặc biệt không thực sự quan tâm đến một vài kilobyte dung lượng lưu trữ bổ sung và trừ khi bạn lấp đầy hệ thống bằng hàng triệu liên kết mềm, kích thước tệp bổ sung hiếm khi quan trọng.
Tạo liên kết tượng trưng
Liên kết tượng trưng – hay nói đúng hơn là liên kết tệp nói chung – được tạo bằng lệnh ln. Theo mặc định, lệnh tạo liên kết cứng. Để tạo liên kết tượng trưng, bạn cần thêm cờ-s vào lệnh ln.
Cú pháp đơn giản. Lệnh ln nhận hai tham số – đường dẫn của tệp (hoặc thư mục) được liên kết tới và đường dẫn của tệp liên kết được tạo.
Giống như thế này:
ln-s user_names.txt tên
Điều này sẽ tạo một liên kết tượng trưng có tên là tên được kết nối với tệp văn bản user_names. Để xem liên kết tượng trưng có thực sự được tạo hay không, chỉ cần sử dụng lệnh ls.
Như bạn có thể thấy, Ubuntu hiển thị các màu khác nhau cho các loại tệp khác nhau, với các thư mục được biểu thị bằng màu xanh đậm và các liên kết tượng trưng có màu xanh lam nhạt hơn (thực tế là màu lục lam).
Chúng ta cũng có thể sử dụng cú pháp tương tự để tạo liên kết tượng trưng cho thư mục:
ln-s ví dụ example_folder
Để tạo liên kết tượng trưng đến các tệp và thư mục trong các thư mục khác, chỉ cần sử dụng đường dẫn đầy đủ của chúng. Ví dụ:
ln-s ví dụ/example3.txt far_example
Hạn chế của Liên kết tượng trưng
Liên kết tượng trưng là một cách tuyệt vời để kết nối các tệp trên toàn hệ thống của bạn mà không cần phải tạo bản sao, nhưng chúng có những hạn chế riêng. Vâng, mặc dù liên kết mềm ít hạn chế hơn liên kết cứng, nhưng vẫn có một số điều cần lưu ý.
Đầu tiên, lệnh ln không thực sự xác minh các liên kết được tạo. Điều này có nghĩa là bạn có thể nhập tên tệp không thực sự tồn tại và bạn sẽ không gặp phải bất kỳ lỗi nào. Cách duy nhất để xác nhận liên kết là thử sử dụng nó và xem liệu nó có dẫn đến đúng tệp hay không.
Thứ hai, trong khi truy cập hoặc thay đổi quyền của liên kết tượng trưng sẽ thay đổi các thuộc tính của tệp gốc, thì việc xóa tệp cũng không xảy ra. Bạn có thể xóa liên kết tượng trưng một cách an toàn mà không ảnh hưởng đến tệp hoặc thư mục được liên kết.
Tạo liên kết tượng trưng trong Linux
Khó khăn lớn nhất khi sử dụng thiết bị đầu cuối để tạo liên kết tượng trưng là khó truy cập các tệp quan trọng trải rộng trên nhiều thư mục khác nhau. Giải pháp thông minh là tạo các liên kết tượng trưng đến các tệp như vậy từ chính thư mục chính của bạn, chẳng hạn như các phím tắt trên màn hình.
Và không giống như các liên kết cứng, các liên kết tượng trưng có thể được tạo dễ dàng mà không có bất kỳ hạn chế nào, ngay cả khi kết nối với các thư mục hoặc tệp trong các phân vùng và hệ thống tệp khác nhau. Hãy nhớ rằng điều này cũng có nghĩa là một liên kết tượng trưng có thể trỏ đến một tệp không tồn tại – bạn sẽ phải thử truy cập liên kết để xác minh xem tệp có tồn tại hay không.