Đề XuấT, 2024

Editor Choice

Sự khác biệt giữa liên kết cứng và liên kết mềm

Các liên kết trong Unix về cơ bản là các con trỏ liên kết đến các tệp và thư mục. Sự khác biệt chính giữa liên kết cứng và liên kết mềm là liên kết cứng là tham chiếu trực tiếp đến tệp trong khi liên kết mềm là tham chiếu theo tên có nghĩa là nó trỏ đến một tệp theo tên tệp.

Liên kết cứng liên kết các tệp và thư mục trong cùng một hệ thống tệp, nhưng liên kết Mềm có thể đi qua ranh giới hệ thống tệp.

Trước khi hiểu các liên kết, trước tiên chúng ta nên hiểu inode, inode là cấu trúc dữ liệu bao gồm siêu dữ liệu về tệp như ngày tạo tệp, ủy quyền tệp, chủ sở hữu tệp và hơn thế nữa.

Biểu đồ so sánh

Cơ sở để so sánhLiên kết cứng
Liên kết mềm
Căn bảnMột tập tin có thể được truy cập thông qua nhiều tên khác nhau được gọi là liên kết cứng.Một tệp có thể được truy cập thông qua các tham chiếu khác nhau trỏ đến tệp đó được gọi là liên kết mềm.
Xác thực liên kết, khi tệp gốc bị xóaVẫn còn hiệu lực và tập tin có thể được truy cập.
không hợp lệ
Lệnh được sử dụng để tạoln
ln -s
số inodeTương tự
Khác nhau
Có thể được liên kếtĐể phân vùng riêng của mình.Để bất kỳ hệ thống tập tin khác thậm chí nối mạng.
Tiêu thụ bộ nhớÍt hơnHơn
Đường dẫn tương đốiKhông áp dụngĐược phép

Định nghĩa liên kết cứng

Liên kết cứng liên kết trực tiếp hai tệp trong cùng một hệ thống tệp và để nhận dạng, nó sử dụng số inode của tệp. Liên kết cứng không thể được thực hiện trên các thư mục (vì chúng trỏ đến inode). Khi lệnh lnvn được sử dụng để tạo một liên kết cứng, nó sẽ tạo một tệp khác trên dòng lệnh có thể được sử dụng để tham chiếu tệp gốc. Cả tệp gốc và tệp được tạo đều có cùng một nút và nội dung; do đó họ sẽ có cùng quyền và cùng chủ sở hữu.

Việc loại bỏ tệp gốc không ảnh hưởng đến tệp được liên kết cứng và tệp liên kết cứng sẽ vẫn còn. Inode giữ một bộ đếm, để tính toán số lượng liên kết cứng với chính nó. Khi bộ đếm chỉ ra giá trị 0, thì inode được làm trống. Bất cứ khi nào bạn thực hiện bất kỳ thay đổi nào đối với liên kết cứng, nó sẽ bắt chước trong tệp gốc.

Định nghĩa liên kết mềm

Liên kết mềm thường là một đường dẫn thay thế (hoặc bí danh) cho tệp gốc; chúng cũng được gọi là liên kết tượng trưng . Nó bao gồm tên của tệp mục tiêu của liên kết trực tuyến, cờ, chỉ định rằng đó là một liên kết mềm. Khi một tệp được truy cập, liên kết mềm sẽ chuyển hướng nó đến tệp đích thông qua đường dẫn được viết trong chủ đề của liên kết mềm.

Chúng rất tiện dụng trong trường hợp hệ điều hành windows nơi liên kết mềm hoạt động như các phím tắt. Tạo và xóa các liên kết mềm không ảnh hưởng đến tệp gốc. Nếu tệp mục tiêu bị xóa, các liên kết mềm sẽ bị treo, điều đó có nghĩa là nó sẽ không xuất hiện và tạo ra một thông báo lỗi khi tệp đích được truy cập. Liên kết mềm không sử dụng số inode, không giống như liên kết cứng. Một đường dẫn tuyệt đối hoặc tương đối có thể là một phần của các liên kết tượng trưng.

Sự khác biệt chính giữa liên kết cứng và liên kết mềm

  1. Một liên kết cứng là một tên bổ sung của tệp gốc có nghĩa là inode để truy cập tệp đích. Ngược lại, liên kết mềm là khác biệt với tệp gốc và là bí danh của tệp gốc nhưng không sử dụng inode.
  2. Khi một tệp gốc bị xóa liên kết mềm trở nên không hợp lệ trong khi đó, một liên kết cứng là hợp lệ ngay cả khi tệp đích bị xóa.
  3. Trong Linux, lệnh được sử dụng để tạo liên kết cứng là trực tiếp. Đối với lệnh này, lệnh được sử dụng cho một liên kết mềm là Đá ln -s .
  4. Liên kết cứng có cùng số inode giống với liên kết mềm, trong đó tệp đích và liên kết mềm của nó có số inode riêng biệt.
  5. Liên kết cứng bị giới hạn trong các phân vùng riêng, nhưng liên kết mềm có thể bao gồm các hệ thống tệp khác nhau.
  6. Hiệu suất của liên kết cứng tốt hơn liên kết mềm trong một số trường hợp.
  7. Đường dẫn tương đối và đường dẫn tuyệt đối cả hai đều được phép trong các liên kết mềm. Ngược lại, đường dẫn tương đối không được phép trong một liên kết cứng.

Phần kết luận

Liên kết cứng không yêu cầu thêm dung lượng và mat giải quyết nhanh hơn, nhưng những thay đổi được áp dụng cho liên kết cứng phản ánh trong tệp gốc. Mặt khác, liên kết mềm cần thêm dung lượng nhưng mọi thay đổi trong liên kết mềm không ảnh hưởng đến tệp gốc. Liên kết mềm được phép vào các thư mục không giống như liên kết cứng.

Top