Computer >> Máy Tính >  >> Hệ thống >> Linux

Cách quản lý liên kết biểu tượng trong Linux

Cách quản lý liên kết biểu tượng trong Linux

Liên kết tượng trưng là các tệp liên kết trực tiếp đến các tệp khác. Trong hệ thống Linux, các liên kết tượng trưng đóng vai trò như các phím tắt.

Thuật ngữ “liên kết biểu tượng” là từ ghép nối giữa “tượng trưng” và “liên kết”, nêu bật tiện ích của các tệp như tham chiếu tượng trưng đến những thứ khác.

Cái gọi là liên kết “cứng” có chức năng giống như bản sao của các tệp mà chúng tham chiếu hơn là liên kết theo nghĩa đen. Các liên kết "mềm" hoặc liên kết tượng trưng chỉ đơn giản là trỏ vào mục tiêu của chúng. Việc xóa các liên kết này không ảnh hưởng gì đến các tệp chúng trỏ tới và có thể tạo nhiều liên kết tượng trưng nếu cần để thuận tiện. Điều này làm cho chúng tuyệt vời để trỏ đến các tệp trên các hệ thống tệp và phân vùng như nhau.

Việc sử dụng các liên kết tượng trưng

Thay đổi cấu trúc cơ bản của một hệ thống tập tin để một ứng dụng chạy hiệu quả hơn sẽ là một công việc nghiêm túc. Thay vào đó, các liên kết tượng trưng thường được sử dụng để làm cho vấn đề trở nên đơn giản hơn và tạo phân cấp tệp nhân tạo để các chương trình tham chiếu mà không ảnh hưởng đến vị trí của các tệp gốc.

Việc sử dụng các liên kết tượng trưng làm cho việc điều chỉnh các chương trình khác nhau dễ dàng hơn, nhưng nó cũng làm phức tạp việc phân tích hệ thống tệp.

Sự cố với Liên kết tượng trưng

Khi các liên kết tượng trưng hoạt động bình thường, chúng đánh dấu một đường dẫn rõ ràng đến một tệp thực sự tồn tại. Tuy nhiên, các liên kết tượng trưng không thành công trỏ đến các tệp không tồn tại hoặc đã bị xóa. Các liên kết tượng trưng này tạo ra sự nhầm lẫn cho cả người dùng và các chương trình phụ thuộc vào độ chính xác của chúng.

Nếu các tệp được nhắm mục tiêu bởi liên kết tượng trưng bị hoán đổi, liên kết sẽ tiếp tục trỏ đến tệp mới, hoàn toàn không quan tâm đến nội dung của nó. Chức năng tin tưởng mù quáng này làm cho việc xâu chuỗi liên kết và liên kết tương đối trở thành khả năng.

Đặc biệt, chuỗi liên kết có thể dẫn đến các liên kết theo chu kỳ (các vòng liên kết có độ dài vô hạn) nếu một liên kết tham chiếu đến liên kết thứ hai, đến lượt nó, lại trỏ về liên kết đầu tiên.

Những câu hỏi hóc búa như vậy không nhất thiết phải do sự can thiệp của con người mà thôi; các tiêu chuẩn lắp đặt thiết bị tối ưu và các quy trình tự động nhất định có thể góp phần tạo ra những gì được gọi là “liên kết chết” trong sự thừa thãi đáng tiếc. Đây chính là lúc mà các kỹ thuật quản lý trở nên hữu ích.

Quản lý các liên kết tượng trưng

Trong các hệ thống Linux, có rất nhiều tiện ích được tạo sẵn để xử lý các liên kết tượng trưng. Bao gồm mặc định trong coreutils là ln , tạo điều kiện thuận lợi cho việc tạo các liên kết như vậy từ thiết bị đầu cuối.

Tuy nhiên, để quản lý đầy đủ các liên kết tượng trưng, ​​bạn sẽ cần phải có khả năng tìm thấy chúng và phân tích chúng một cách nhanh chóng. Một tùy chọn dòng lệnh đơn giản đáng xem xét cho mục đích này được đặt tên phù hợp là symlinks .

Mặc dù một số bản phân phối Linux như Fedora đi kèm với công cụ này được cài đặt theo mặc định, những bản khác, chẳng hạn như Ubuntu, thì không. Để cài đặt “Symlinks” trong Ubuntu, chỉ cần mở cửa sổ dòng lệnh và nhập như sau:

sudo apt install symlinks
Cách quản lý liên kết biểu tượng trong Linux

Tạo liên kết biểu tượng

Tạo liên kết tượng trưng từ thiết bị đầu cuối của bạn thật dễ dàng trong Linux. Nhập mã sau đó, thay đổi “original-file.txt” thành tên và phần mở rộng tệp của mục tiêu bạn đã chọn, sau đó thay đổi “tên liên kết” thành bất kỳ tên nào bạn muốn.

Tên liên kết
ln -s original-file.txt linkname
Cách quản lý liên kết biểu tượng trong Linux

ln tiện ích dành cho việc tạo liên kết và nó sẽ làm như vậy khi bạn chạy nó. -s bao gồm trong lệnh trên làm cho liên kết được tạo tượng trưng.

Các liên kết tượng trưng tương đối cũng có thể được tạo bằng cách thêm -r đến cùng một lệnh như sau:

Tên liên kết
ln -rs original-file.txt linkname
Cách quản lý liên kết biểu tượng trong Linux

Các liên kết tương đối vẫn hoạt động bất kể thay đổi về điểm gắn kết.

Tìm các liên kết tượng trưng

Tiện ích Symlinks được đề cập ở trên cung cấp cho chúng ta một cách đơn giản để tìm các liên kết tượng trưng trong một thư mục nhất định. Lệnh cho việc này như sau:(Thay đổi “tên-thư mục” thành đường dẫn đầy đủ đến thư mục bạn muốn tìm kiếm.)

symlinks -v directory-name
Cách quản lý liên kết biểu tượng trong Linux

Thêm r lệnh này yêu cầu Symlinks kiểm tra đệ quy các tệp trong thư mục được chỉ định. Điều này trông giống như sau:

symlinks -rv directory-name
Cách quản lý liên kết biểu tượng trong Linux

Hãy cẩn thận khi sử dụng đệ quy nếu bạn lo lắng về các vấn đề phát sinh với các liên kết tuần hoàn. Các liên kết tuần hoàn là các liên kết kết thúc vòng lặp lại với chính chúng một cách sai lầm; chúng có thể khiến tiện ích Symlinks bị treo khi nó cố gắng đệ quy vào cấu trúc vô hạn của chúng.

Phiên bản không đệ quy của lệnh được hiển thị ở trên sẽ chỉ đơn giản tiết lộ bất kỳ liên kết tuần hoàn nào hiện có là “treo lơ lửng”, hay nói cách khác là bị hỏng. Đó là phân tích mà công cụ Symlinks có khả năng cho phép nó thực sự sửa các liên kết bị hỏng như vậy.

Sửa các liên kết tượng trưng

Việc sửa chữa các liên kết tượng trưng trong một thư mục nhất định tương đối đơn giản với Symlinks. Đây là lệnh để sử dụng:

symlinks -cds directory-name
Cách quản lý liên kết biểu tượng trong Linux

Lệnh trên thực hiện nhiều việc cùng một lúc. Nó chuyển đổi bất kỳ liên kết tuyệt đối nào mà nó tìm thấy thành các liên kết tương đối, loại bỏ các liên kết lơ lửng và rút ngắn các liên kết “dài dòng” (các liên kết có nhiều “../” trong đường dẫn của chúng).

Nếu bạn không chắc chắn về kết quả tiềm năng của việc chạy thao tác này, bạn có thể kiểm tra những gì -c một mình sẽ làm mà không thay đổi bất cứ điều gì bằng cách chạy như sau:

symlinks -t directory-name
Cách quản lý liên kết biểu tượng trong Linux

Hy vọng rằng bây giờ bạn đã hiểu rõ hơn về các liên kết tượng trưng là gì và cách bạn có thể quản lý chúng một cách hiệu quả. Kiểm tra phần còn lại của các khả năng của tiện ích Symlinks để chạy các hoạt động cụ thể hơn trên hệ thống tệp của bạn.