Trong bài viết này, FUNiX sẽ giải thích các khái niệm về nhóm và chủ sở hữu tệp Linux, đồng thời cho bạn thấy chúng ảnh hưởng như thế nào đến những người có thể truy cập và thao tác dữ liệu trên hệ thống của bạn.
Cách tìm chủ sở hữu của tệp và nhóm trong Linux
Tại dòng lệnh Linux, bạn có thể xem cả cài đặt quyền của chủ sở hữu và nhóm bằng cách sử dụng lệnh ls -l (dấu gạch ngang với chữ L viết thường). Công tắc (Switch) -l sẽ định dạng danh sách trong các cột cung cấp cho bạn nhiều chi tiết hơn về các tệp so với đầu ra lệnh ls tiêu chuẩn.
Cột đầu tiên hiển thị loại tệp và cài đặt quyền của nó. Cột thứ hai hiển thị số lượng liên kết đến tệp (thường là 1). Cột thứ ba và thứ tư lần lượt hiển thị chủ sở hữu và nhóm. Chúng thường (nhưng không phải luôn luôn) giống nhau.
Các cài đặt được hiển thị trong cột đầu tiên biểu thị các phần xác định quyền của tệp trong Linux. Ký tự đầu tiên đại diện cho loại tệp. Ví dụ: “-” biểu thị một tệp thông thường và “d” biểu thị một thư mục. Ba phần sau (được đánh dấu ở trên) đại diện cho quyền của chủ sở hữu tệp— r (read) để đọc, w (write) để ghi và x (execute) để thực thi.
Mọi quyền chưa được bật sẽ hiển thị dưới dạng dấu gạch ngang. Sau đó, trong cột thứ ba của danh sách thư mục, bạn sẽ thấy người dùng sở hữu tệp.
Bộ ba thứ hai trong cột đầu tiên đó (được đánh dấu ở trên) thể hiện các quyền đối với nhóm có quyền truy cập vào tệp này. Chúng cũng hoạt động tương tự như trên. Chúng sẽ là dấu gạch ngang hoặc một trong số các chữ cái r, w và x.
Cách thay đổi chủ sở hữu tệp trên Linux
Với hầu hết các bản phân phối Linux, bạn cần phải là người dùng root hoặc người dùng có quyền quản trị (nghĩa là bạn có thể sử dụng sudo) để thay đổi chủ sở hữu của tệp hoặc thư mục.
Trao quyền sở hữu một tệp hoặc thư mục cho bất kỳ người dùng nào sẽ giúp người đó hoàn toàn tự do làm bất cứ điều gì họ muốn với tệp. Họ sẽ có thể đọc, sửa đổi, xóa nó và thay đổi các quyền quy định những gì người dùng hệ thống khác có thể làm với nó.
Để thay đổi chủ sở hữu của tệp hoặc thư mục, hãy sử dụng lệnh chown với định dạng sau:
sudo chown <user> <file or directory>
Thay đổi chủ sở hữu của tệp sẽ không ảnh hưởng đến cài đặt nhóm hoặc quyền của tệp đó.
Cách thay đổi cài đặt nhóm của tệp trên Linux
Nếu bạn là chủ sở hữu của một tệp, bạn có thể thay đổi cài đặt nhóm của nó thành bất kỳ nhóm hiện có nào. Nếu bạn không phải là chủ sở hữu, bạn sẽ cần quyền root hoặc sudo.
Để thay đổi quyền truy cập của nhóm vào một tệp hoặc thư mục, hãy sử dụng lệnh chgrp:
chgrp <groupname> <file or directory>
Lệnh này sẽ cung cấp cho tất cả các thành viên của nhóm đã chọn quyền truy cập vào tệp hoặc thư mục theo cài đặt quyền nhóm của mục.
Cách thay đổi chủ sở hữu và nhóm của tệp cùng một lúc
Nếu bạn cần sửa đổi cả cài đặt chủ sở hữu và nhóm của một tệp hoặc thư mục, bạn có thể làm như vậy bằng một lệnh duy nhất. Vì nó liên quan đến việc thay đổi chủ sở hữu, bạn sẽ cần phải có đặc quyền siêu người dùng (superuser).
Để thực hiện việc này, hãy sử dụng lệnh chown như trên nhưng chỉ định cả chủ sở hữu mới và nhóm mới, được phân tách bằng dấu hai chấm, không có khoảng trắng.
sudo chown <newowner>:<newgroup> <file or directory>
Cách tạo nhóm bằng terminal
Nhóm cho phép bạn gán quyền truy cập cho nhiều người dùng một cách dễ dàng. Người dùng trên hệ thống Linux có thể là thành viên của nhiều nhóm cùng một lúc. Bạn sẽ cần phải là người dùng root hoặc có đặc quyền sudo để tạo nhóm.
Để thêm một nhóm mới vào hệ thống, hãy sử dụng lệnh groupadd .
sudo groupadd <groupname>
Để đảm bảo rằng nhóm của bạn đã được tạo, bạn có thể sử dụng lệnh getent để liệt kê tất cả các nhóm hoặc kết hợp với lệnh grep để tìm một nhóm cụ thể.
getent group
getent group | grep <groupname>
Nếu đầu ra hiển thị tên của nhóm mà bạn đang cố tạo, điều này cho biết rằng nhóm đã được tạo thành công và bạn có thể thêm người dùng vào nhóm. Bạn cũng có thể xem hướng dẫn quản lý nhóm trên Linux của FUNiX để biết thêm thông tin chi tiết về cách thiết lập nhóm mới.
Cách thêm người dùng vào nhóm trên Linux
Việc thêm người dùng vào một nhóm được thực hiện bằng lệnh usermod. Một lần nữa, bạn sẽ cần các đặc quyền siêu người dùng và cả người dùng và nhóm phải tồn tại. Lệnh sau sẽ thêm người dùng vào một nhóm:
sudo usermod -a -G <groupname> <username>
Công tắc (Switch) -a trong lệnh trên là viết tắt của append (thêm) và rất quan trọng. Nếu bạn thêm người dùng vào một nhóm mà không sử dụng cờ -a , thì người dùng đó sẽ bị xóa khỏi bất kỳ nhóm nào khác mà họ có thể đã tham gia. Cờ -G biểu thị rằng bạn muốn thêm người dùng vào tên nhóm sau khi chuyển đổi.
Cách xóa người dùng khỏi nhóm
Xóa người dùng khỏi nhóm được thực hiện bằng lệnh gpasswd. Nhập lệnh (sử dụng sudo) theo định dạng sau.
sudo gpasswd -d <username> <groupname>
Thao tác này sẽ xóa người dùng được chỉ định khỏi nhóm được chỉ định, giữ nguyên tư cách thành viên nhóm khác.
Cách xóa nhóm bằng terminal
Cuối cùng, bạn cần biết cách xóa một nhóm. Đầu tiên, cần lưu ý là một nhóm phải trống. Nếu nhóm bạn muốn xóa nhỏ, bạn có thể sử dụng lệnh trên để xóa từng thành viên theo cách thủ công.
Nếu nhóm có nhiều thành viên và bạn cần xóa các thành viên trước khi xóa nhóm, bạn có thể xóa tất cả họ cùng một lúc bằng lệnh groupmems. Nhập lệnh với định dạng sau để xóa tất cả người dùng khỏi một nhóm:
sudo groupmems -p -g <groupname>
Khi tất cả các thành viên đã bị xóa khỏi nhóm, bạn có thể xóa nhóm khỏi hệ thống bằng lệnh groupdel như sau.
sudo groupdel <groupname>
Nhóm người dùng Linux mang đến quyền kiểm soát tốt hơn
Với các lệnh ở trên, bạn sẽ có thể quản lý cài đặt quyền truy cập nhóm và chủ sở hữu cho bất kỳ tệp hoặc thư mục nào trên hệ thống Linux .
Nếu bạn hoặc người dùng trên hệ thống của bạn gặp sự cố khi truy cập thứ gì đó, thì việc đảm bảo quyền của chủ sở hữu và nhóm được đặt đúng cách thường là bước đầu tiên để tìm ra giải pháp.
Tìm hiểu ngay chương trình học công nghệ thông tin trực tuyến tại FUNiX ở đây:
Vân Nguyễn
Dịch từ: https://www.makeuseof.com/linux-file-ownership-groups-guide/














Bình luận (0
)