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

Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux

Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux

Kể từ khi thành lập, Linux đã được điều chỉnh để hỗ trợ môi trường nhiều người dùng. Với nhiều người dùng và nhóm trên một hệ thống làm việc, việc gặp phải các thư mục được chia sẻ giữa những người dùng trong cùng một nhóm là điều khá phổ biến và các vấn đề phát sinh từ việc chia sẻ tệp trong các thư mục. Trong bài viết này, chúng tôi sẽ thảo luận về cách bạn có thể sử dụng các bit cố định để tinh chỉnh quyền truy cập tệp trên các thư mục được chia sẻ.

Với mục đích minh họa, chúng tôi có một hệ thống với ba người dùng - john1, john2 và john3, tất cả đều là thành viên của nhóm chung “johns”

Giả sử “john1” tạo một thư mục mới có tên “shared-dir” nhằm chia sẻ cho tất cả người dùng của nhóm “johns”.

Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux

Với ls , chúng ta có thể xem quyền của "shared-dir", có thể được diễn giải trong bảng sau:

Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux

Chỉ “john1” mới có thể đọc nội dung của thư mục và cũng có thể ghi vào thư mục. Vì chúng tôi đang làm việc với một thư mục dùng chung, chúng tôi muốn tất cả người dùng của nhóm có thể ghi vào “shared-dir”.

Đối với điều này, chúng tôi sẽ sửa đổi các quyền bằng cách sử dụng chmod yêu cầu. Chúng tôi sẽ thêm quyền “ghi” cho tất cả người dùng của nhóm “johns” như được hiển thị bên dưới.

Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux

Chúng tôi có thể xem các quyền được cập nhật cho “shared-dir” như hình dưới đây. Phần được gạch chân màu vàng cho thấy rằng nhóm "johns" đã được cấp quyền "ghi".

Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux

Thêm tệp vào Thư mục được chia sẻ

Bây giờ “john1” thêm hai tệp (j1_file1.txt và j1_file2.txt) vào “shared-dir”

Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux

Để dễ hiểu, hai ký tự đầu tiên của tên tệp đồng nghĩa với tên người dùng.

Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux

Tương tự như vậy, “john2” cũng có thể “ghi” vào thư mục “shared-dir”

Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux

Hiện có bốn tệp trong “shared-dir”.

Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux

Có vấn đề gì với thiết lập hiện tại không?

Tệp “j1_file1.txt” được tạo bởi “john1”, đặt “john1” làm chủ sở hữu tệp. Bây giờ “john2” đăng nhập và cố gắng xóa tệp này và anh ấy sẽ có thể làm như vậy.

“John1” là chủ sở hữu tệp, nhưng “john2” đã có thể xóa tệp đó vì quyền “ghi” được cấp cho tất cả các thành viên của nhóm “johns”.

Kịch bản này không phải là lý tưởng. Chúng tôi muốn tất cả người dùng có thể ghi vào thư mục, nhưng chỉ chủ sở hữu tệp mới có thể xóa tệp. Làm thế nào để đạt được điều này?

Giới thiệu Sticky Bit

Bit dính là một quyền đặc biệt có thể được đặt trên một thư mục có quyền “ghi” được đặt cho nhóm có quyền truy cập vào nó. Bit này đảm bảo rằng tất cả các thành viên của nhóm đều có thể ghi vào thư mục, nhưng chỉ người đã tạo tệp, tức là chủ sở hữu tệp, mới có thể xóa tệp.

chmod lệnh bằng +t cờ có thể được sử dụng để đặt bit cố định trên một thư mục.

Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux

Quyền được cập nhật có thể được nhìn thấy bên dưới.

Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux

Bây giờ nếu “john2” cố gắng xóa tệp “j1_file2.txt” được tạo bởi “john1”, thì thao tác đó sẽ không được phép.

Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux

Nếu bạn xóa quyền "thực thi" đối với "người khác", như được hiển thị bên dưới:

Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux

sự tồn tại của bit dính trên thư mục được biểu thị bằng chữ hoa "T" trong phần "khác" của chuỗi quyền. Hành vi bit cố định trên thư mục vẫn giữ nguyên.

Cách sử dụng Sticky Bit để quản lý tệp trên thư mục dùng chung trong Linux

Biến thể của lệnh “chmod”

Dạng số của chmod lệnh cũng có thể được sử dụng để đặt bit cố định trên một thư mục.

chmod nxyz <file_name>

ở đâu,

  • n =1, đề cập đến bit dính. Các giá trị khác của “n” đề cập đến các quyền đặc biệt khác.
  • x:quyền được cấp cho chủ sở hữu tệp
  • y:quyền được cấp cho nhóm có quyền truy cập vào tệp
  • z:quyền được cấp cho người khác

Để đặt bit dính trên “shared-dir”, hãy sử dụng lệnh sau:

chmod 1755 shared-dir

tạo ra kết quả tương tự như sử dụng +t trên các quyền mặc định hiện có.

Việc sử dụng bit dính chỉ tốt cho các thư mục, sẽ không hợp lý nếu sử dụng nó cho các tệp.