Quản lý người dùng khá đơn giản nếu bạn đang chạy Linux trên máy tính cá nhân của mình. Nhưng, đối với những người có một máy chủ với hàng nghìn người dùng, việc quản lý trở thành một vấn đề cần được quan tâm.
May mắn là hệ điều hành dựa trên Linux cung cấp một cách để kiểm soát và quản lý người dùng trên hệ thống của bạn. Bạn có thể tạo nhóm và thêm người dùng vào nhóm. Sau đó, thay vì chỉ định quyền cho từng người dùng trên hệ thống, bạn có thể dễ dàng cấp quyền cho các nhóm người dùng bằng cách cung cấp cho họ các đặc quyền liên quan đến quy trình làm việc của hệ thống.
Tạo nhóm người dùng trên Linux
Linux đi kèm với một lệnh mặc định để tạo nhóm người dùng. Bạn có thể sử dụng lệnh groupadd để thêm các nhóm mới vào hệ thống của mình. Cú pháp cơ bản của lệnh là:
groupadd [options] groupname
Để tạo một nhóm người dùng mới, ví dụ như ‘writers’:
groupadd writers
Chạy lệnh trên sẽ thêm một mục mới vào tệp /etc/group và /etc/gshadow trên hệ thống của bạn. Bạn có thể kiểm tra mục nhập (entry) nhóm mới trong tệp bằng cách nhập cat /etc/group và cat /etc/gshadow vào terminal của bạn.
Lưu ý rằng chỉ những người dùng có quyền quản trị mới có thể tạo nhóm người dùng. Đừng quên chuyển sang superuser trước khi thực hiện lệnh groupadd.
Nếu bạn cố gắng tạo một nhóm với tên đã tồn tại, bạn sẽ thấy một lỗi cho biết:
groupadd: group 'writers' already exists
Tuy nhiên, bạn có thể loại bỏ lỗi bằng cách sử dụng cờ -f hoặc –force với lệnh.
groupadd --force writers
groupadd -f writers
Tạo nhóm người dùng với GID duy nhất
Khi bạn tạo một nhóm người dùng mới, hệ thống sẽ tự động gán cho nhóm đó một ID nhóm (group ID hoặc GID). Nếu bạn muốn nhóm của mình có một ID nhóm cụ thể, bạn có thể làm điều đó bằng cách sử dụng cờ -g hoặc –gid .
groupadd -g 600 writers
groupadd --gid 600 writers
Nếu bạn cố gắng chỉ định một ID nhóm đã được sử dụng, lỗi sau sẽ xảy ra.
groupadd: GID '600' already exists
Mặc dù không được khuyến khích nhưng bạn có thể thêm cờ -o hoặc –non-unique (không phải là duy nhất) để bắt buộc gán ID nhóm.
groupadd -o -g 600 writers
Tạo nhóm người dùng bằng mật khẩu
Mặc dù bạn có thể thêm mật khẩu vào nhóm của mình, nhưng chúng không có giá trị thực tế gì cho người dùng. Cờ -p cho phép bạn chỉ định mật khẩu cho nhóm người dùng của mình.
groupadd -p secretpassword writers
Tạo nhóm hệ thống trong Linux
Có một sự khác biệt nhỏ giữa nhóm hệ thống và nhóm thông thường. Nhóm hệ thống là những nhóm đặc biệt bao gồm những người dùng chịu trách nhiệm thực hiện các hoạt động của hệ thống như sao lưu và bảo trì.
Sử dụng cờ -r hoặc –system để tạo nhóm hệ thống trên Linux:
groupadd -r hardwareteam
groupadd --system hardwareteam
Để lấy danh sách thành viên trong nhóm người dùng
Để biết có bao nhiêu thành viên là một phần của một nhóm cụ thể, bạn có thể sử dụng lệnh getent từ terminal của mình. Lệnh sau sẽ hiển thị danh sách tất cả các thành viên có mặt trong nhóm ‘writers’:
getent group writers
Thêm người dùng vào nhóm
Bây giờ bạn đã tạo một nhóm người dùng trên hệ thống của mình, đã đến lúc thêm một vài người dùng vào đó. Usermod là một tiện ích dòng lệnh mạnh mẽ vì nó chứa các tùy chọn khác nhau liên quan đến việc quản lý và kiểm duyệt người dùng. Nó cũng cho phép bạn thêm người dùng vào nhóm của mình một cách dễ dàng. Cú pháp cơ bản của lệnh là:
usermod [options] groupname username
Thêm người dùng hiện tại vào nhóm
Nếu bạn muốn thêm người dùng hiện có vào nhóm của mình, cờ -a và -G là những gì bạn cần. Cờ -G là viết tắt của groups (các nhóm), trong khi -a là viết tắt của append hoặc add (thêm)
usermod -a -G writers randomuser
Bạn cũng có thể thêm một người dùng vào nhiều nhóm. Tất cả những gì bạn phải làm là nhập tên nhóm được phân tách bằng dấu phẩy.
usermod -a -G writers,admin,owner randomuser
Thêm người dùng mới vào nhóm
Bạn có thể sử dụng lệnh useradd khi muốn thêm người dùng mới vào hệ thống Linux của mình. Useradd cung cấp cho bạn một cách để chỉ định một nhóm cho người dùng tại thời điểm tạo nhóm. Cờ -G cho phép bạn chỉ định một nhóm cho người dùng.
useradd -G writers randomuser
Thêm một người dùng vào nhiều nhóm cũng dễ dàng. Chỉ cần thêm các tên nhóm được phân tách bằng ký tự dấu phẩy vào lệnh mặc định.
useradd -G writers,admin,owner randomuser
Xóa người dùng khỏi nhóm
Bạn cũng có thể xóa người dùng khỏi một nhóm bằng usermod. Hãy nhớ rằng trong hệ thống Linux, nhiều nhóm có thể được chỉ định cho cùng một người dùng. Một trong những nhóm đó được chỉ định là nhóm Chính (primary group), trong khi những nhóm khác được gọi là nhóm phụ (secondary group).
Nếu bạn đang cố gắng xóa người dùng khỏi một nhóm, hãy đảm bảo rằng người dùng đó có ít nhất một nhóm chính sau khi xóa. Ví dụ: người dùng ‘random’ là một phần của nhóm quản trị viên, người ghi và người chỉnh sửa; trong đó quản trị viên là nhóm chính và các nhóm còn lại là nhóm phụ.
Bạn chỉ có thể xóa người dùng khỏi nhóm người ghi và người chỉnh sửa. Và để làm như vậy, bạn phải gõ tên nhóm mà bạn muốn người dùng tiếp tục là thành viên. Điều này có nghĩa là, để xóa người dùng ‘random’ khỏi nhóm chỉnh sửa, lệnh sau được sử dụng:
usermod -G writers random
Lưu ý rằng tất cả những gì bạn phải làm là loại bỏ cờ nối (-a) khỏi lệnh bạn sử dụng để thêm người dùng vào một nhóm.
Xóa nhóm trên Linux
Khi bạn không muốn giữ một nhóm người dùng trên hệ thống của mình nữa, bạn có thể xóa nhóm bằng lệnh groupdel. Cú pháp của lệnh là:
groupdel [options] groupname
Để xóa nhóm người dùng ‘writers’:
groupdel writers
Nếu bạn cố gắng xóa một nhóm không tồn tại, bạn sẽ nhận được thông báo lỗi:
groupdel: group 'writers' does not exist
Quản lý nhóm người dùng trên Linux
Quản lý người dùng có thể khó khăn nếu bạn không biết về các lệnh Linux mà bạn cần sử dụng. Nó trở nên thực sự dễ dàng khi bạn biết các lệnh liên quan đến kiểm duyệt và quản lý.
Dịch từ: https://www.makeuseof.com/how-to-manage-user-groups-with-groupadd-on-linux/
Vân Nguyễn
Bình luận (0
)