Kể từ khi ra mắt, Linux đã được thiết kế để 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 các thư mục được chia sẻ giữa những người dùng cùng nhóm là điều khá phổ biến và các vấn đề cũng phát sinh từ việc chia sẻ file trong thư mục. | C-n.vn

Kể từ khi ra mắt, Linux đã được thiết kế để 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 các thư mục được chia sẻ giữa những người dùng cùng nhóm là điều khá phổ biến và các vấn đề cũng phát sinh từ việc chia sẻ file trong thư mục.

Trong bài viết này, Quantrimang.com sẽ thảo luận về cách bạn có thể sử dụng các sticky bit để tinh chỉnh quyền truy cập file trên những thư mục được chia sẻ.

Với mục đích minh họa, bài viết có một hệ thống với 3 người dùng – john1, john2 john3, tất cả đều là thành viên của nhóm chung.

Giả sử “john1” tạo ra một thư mục mới có tên là “shared-dir”, được chia sẻ giữa tất cả những người dùng của nhóm johns.

Với lệnh ls, ta có thể xem quyền cho “shared-dir”, được hiểu như sau: Chỉ “john1” có thể đọc nội dung cũng như ghi vào thư mục. Vì ta đang làm việc với một thư mục dùng chung, nên mục đích là làm cho tất cả người dùng của nhóm có thể ghi vào “shared-dir”.

READ:  Bạn có biết thời gian mình sử dụng máy tính trong bao lâu từ khi mở máy tính hay chưa? Để biết thời gian mở máy tính hay chính xác là thời gian sử dụng máy tính, trên Windows có công cụ kiểm tra thời gian đã sử dụng máy tính trong bao lâu từ khi khởi động. Khi đó bạn có thể kiểm soát thời gian dùng máy tính, nhất là gia đình có con trẻ khi, ngoài việc lên lịch tắt máy tính Windows. Hệ thống sẽ tính toán thời gian chính xác bạn bạn đã dùng máy tính trong bao lâu từ khi mở máy. Bài viết dưới đây sẽ hướng bạn đọc cách kiểm tra thời gian hoạt động của máy tính. | C-n.vn

Để làm như vậy, ta sẽ sửa đổi các quyền bằng cách sử dụng lệnh chmod. Ta sẽ bổ sung quyền ghi cho tất cả những người dùng của nhóm johns, như bên dưới.

Quyền ghi cho tất cả những người dùng của nhóm johns
Quyền ghi cho tất cả những người dùng của nhóm johns

Ta có thể xem các quyền được cập nhật cho “shared-dir” như được hiển thị bên dưới. 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.

Thêm file vào thư mục được chia sẻ

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

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

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

Hiện tại có 4 file trong “shared-dir”.

4 file trong “shared-dir”
4 file trong “shared-dir”

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

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

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

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

READ:  Chia sẻ màn hình máy tính trên Zalo là tính năng mới khi bạn gọi video trên Zalo. Như vậy khi chúng ta gọi video trên Zalo PC thì có thể gửi nội dung hiển thị trên máy tính tới người khác. Theo đó bạn có thể lựa chọn bất cứ màn hình nào hiển thị trên máy tính để chia sẻ tới người khác. Mọi thao tác hướng dẫn trên màn hình máy tính đều được hiển thị tại giao diện gọi video Zalo của bạn bè. Tính năng này khá giống với các phần mềm điều khiển máy tính từ xa như TeamViewer, tuy nhiên Zalo mới chỉ hỗ trợ chia sẻ màn hình, không có tùy chọn thao tác trên màn hình máy tính chia sẻ. Bài viết dưới đây sẽ hướng dẫn bạn đọc cách chia sẻ màn hình trên Zalo. | C-n.vn

Giới thiệu sticky bit

Sticky bit là một quyền đặc biệt, được thiết lập trên một thư mục cấp quyền ghi cho toàn bộ nhóm. Bit này đảm bảo rằng tất cả các thành viên của nhóm có thể ghi vào thư mục, nhưng chỉ người tạo file, hay chủ sở hữu file, mới có thể xóa nó.

Lệnh chmod với flag –t có thể được sử dụng để đặt sticky bit trên một thư mục.

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

Quyền được cập nhật
Quyền được cập nhật

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

Nếu bạn xóa quyền thực thi đối với những người khác, thì sự tồn tại của sticky bit trên thư mục được thể hiện bằng chữ T hoa trong phần “others” của chuỗi quyền. Các hành vi của sticky bit trên thư mục vẫn giữ nguyên.

Sự tồn tại của sticky bit trên thư mục được thể hiện bằng chữ T hoa
Sự tồn tại của sticky bit trên thư mục được thể hiện bằng chữ T hoa

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

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

chmod nxyz <file_name>

Trong đó:

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

Để thiết lập sticky bit trên “shared-dir”, hãy sử dụng lệnh sau:

chmod 1755 shared-dir

Lệnh 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ó.

READ:  Nếu sở hữu một chiếc Chromebook, bạn sẽ thấy rằng có đôi chút khác biệt về bàn phím giữa Chromebook với bàn phím laptop thông thường. Chẳng hạn, Thay vì các phím chức năng chung chung (F1, F2, F3), bàn phím Chromebook sẽ sở hữu một hàng phím chuyên biệt cho từng tính năng cụ thể, đặc trưng của Chrome OS. | C-n.vn

Việc sử dụng sticky bit chỉ phù hợp cho các thư mục và sẽ không có ý nghĩa khi sử dụng cho các file.

  • Tìm kiếm file và thư mục trong Linux sử dụng giao diện dòng lệnh
  • Cách sao chép (và dán) file, thư mục từ dòng lệnh Linux
  • Cách mount thư mục từ xa trong Linux với SSHFS
  • Cách tìm một từ cụ thể trong một file trên Linux
  • Cách đồng bộ hóa file và thư mục trên Linux
  • Tìm hiểu hệ thống tập tin và thư mục trên hệ điều hành Linux
Xem thêm bài viết thuộc chuyên mục: Công nghệ