Hướng dẫn này chỉ cho bạn cách quản lý các nhóm bằng lệnh gpasswd. Mỗi tệp và thư mục trong Linux đều có quyền của người dùng, nhóm và chủ sở hữu. Bằng cách kiểm soát người có quyền truy cập vào một nhóm, bạn có thể kiểm soát những gì xảy ra với tệp và thư mục trên hệ thống của mình mà không phải đặt quyền cho từng người dùng.
Một chút về quyền
Mở một thiết bị đầu cuối và trong thư mục chủ của bạn tạo một thư mục được gọi là các tài khoản bằng cách sử dụng lệnh mkdir như sau:
tài khoản mkdirBây giờ chạy lệnh ls sau đây sẽ cho bạn thấy các quyền cho thư mục mà bạn vừa tạo ra.
lt -ltBạn sẽ thấy một cái gì đó như thế này:
drwxr-xr-x 2 yourname yourname 4096 tài khoản ngàyCác bit chúng ta quan tâm là các điều khoản trong ví dụ trên là "drwxr-xr-x". Chúng tôi cũng quan tâm đến 2 giá trị "tên của bạn".
Hãy nói về các quyền đầu tiên. Chữ "d" là viết tắt của thư mục và cho chúng tôi biết rằng tài khoản là một thư mục.
Phần còn lại của quyền được chia thành 3 phần: "rwx", "rx", "rx". Phần đầu tiên của 3 ký tự là các quyền mà chủ sở hữu của một đối tượng có. Phần thứ hai của 3 ký tự là các quyền mà bất kỳ ai thuộc về nhóm đều có và cuối cùng, phần cuối cùng là các quyền mà mọi người khác có.
Chữ "r" là viết tắt của "read", chữ "w" là viết tắt của "write" và "x" là viết tắt của "execute".
Do đó trong ví dụ trên, chủ sở hữu đã đọc, viết và thực hiện các quyền cho thư mục tài khoản trong khi nhóm và mọi người khác chỉ có quyền đọc và thực thi.
Trong ví dụ, "tên của bạn" đầu tiên là chủ sở hữu của mục và "tên của bạn" thứ hai là nhóm chính cho thư mục tài khoản.
Để làm cho hướng dẫn này hữu ích hơn, hãy thêm một vài tài khoản vào hệ thống của bạn bằng các lệnh adduser sau đây:
sudo adduser tim sudo adduser tomBạn sẽ được yêu cầu đặt mật khẩu cho từng người trong số họ và nhập thông tin khác. Bạn có thể lấy đi chỉ với mật khẩu và trở lại thông qua phần còn lại của các lĩnh vực.
Bây giờ bạn có 3 tài khoản chạy lệnh sau để thay đổi chủ sở hữu của thư mục tài khoản của bạn.
sudo chown tom tài khoảnBây giờ chạy lệnh ls một lần nữa.
lt -ltCác quyền bây giờ sẽ như sau:
drwxr-xr-x tom tên của bạnBạn sẽ có thể điều hướng vào thư mục tài khoản bằng cách sử dụng lệnh cd như sau:
tài khoản cdBây giờ hãy thử tạo một tệp bằng lệnh sau:
kiểm tra cảm ứngBạn sẽ nhận được lỗi sau:
chạm: không thể chạm vào 'kiểm tra': Quyền bị từ chốiLý do cho điều này là Tom là chủ sở hữu và đã đọc, viết và thực thi quyền nhưng bạn chỉ là một phần của nhóm và bạn chỉ có quyền nhóm.
Điều hướng trở lại thư mục chính và thay đổi quyền cho tài khoản bằng cách nhập các lệnh sau:
cd .. sudo chmod 750 tài khoảnBây giờ chạy lệnh ls một lần nữa:
lt -ltCác quyền cho thư mục tài khoản bây giờ sẽ như sau:
drwxr-x ---Điều này có nghĩa là chủ sở hữu có đầy đủ quyền, người dùng có nhóm "yourname" sẽ có quyền đọc và thực thi và mọi người khác sẽ không có quyền.
Hãy dùng thử. Điều hướng đến thư mục tài khoản và chạy lại lệnh cảm ứng:
cd tài khoản cảm ứng kiểm traBạn vẫn có quyền để điều hướng đến thư mục nhưng không có quyền tạo tệp. Nếu bạn chỉ là một người dùng bình thường, bạn thậm chí không thể vào thư mục tài khoản.
Để thử công tắc này cho người dùng Tim và điều hướng đến thư mục tài khoản như sau:
su - tim cd / home / yourname / tài khoảnBạn sẽ nhận được một sự cho phép bị từ chối lỗi.
Vậy tại sao lại sử dụng quyền của nhóm và không đặt quyền riêng lẻ cho tất cả người dùng? Nếu bạn có một phòng tài khoản, tất cả mọi người đều có quyền truy cập vào các bảng tính và tài liệu nhất định nhưng không ai khác trong công ty nên thay vì đặt quyền cho tất cả mọi người trong tài khoản, bạn có thể đặt quyền cho thư mục vào nhóm được gọi là tài khoản và sau đó thêm người dùng vào nhóm.
Tại sao điều này tốt hơn thiết lập quyền người dùng cá nhân? Nếu một người dùng rời khỏi bộ phận, bạn có thể chỉ cần loại bỏ chúng khỏi nhóm như trái ngược với làm việc ra quyền của họ trên một loạt các thư mục.
Cách tạo nhóm
Bạn có thể sử dụng lệnh sau để tạo nhóm:
tài khoản sudo addgroupCách thêm người dùng vào nhóm
sudo gpasswd -a tài khoản người dùngLệnh trên có thể được sử dụng để thêm một người dùng vào nhóm tài khoản.
Để thêm danh sách người dùng khi các thành viên của nhóm chạy lệnh sau:
sudo gpassword -M yourname, tom, tim tài khoảnKhi người dùng đã được thêm vào tài khoản, người dùng có thể thêm nhóm vào danh sách nhóm phụ của họ bằng cách chạy lệnh sau:
tài khoản newgrpBất kỳ người dùng nào không thuộc về nhóm sẽ được yêu cầu nhập mật khẩu nhóm.
Làm thế nào để thay đổi nhóm chính cho một thư mục
Bây giờ chúng ta có một nhóm với một người dùng, bạn có thể gán nhóm đó vào thư mục tài khoản bằng cách sử dụng lệnh chgrp sau đây:
tài khoản tài khoản sudo chgrpCác tài khoản đầu tiên là tên của nhóm và tài khoản thứ hai là tên của thư mục.
Cách kiểm tra xem người dùng có thuộc nhóm không
Bạn có thể kiểm tra xem người dùng có thuộc về một nhóm hay không bằng cách chạy lệnh sau:
các nhómThao tác này sẽ trả về danh sách các nhóm mà người dùng thuộc về.
Cách thay đổi mật khẩu nhóm
Để thay đổi mật khẩu nhóm, bạn có thể chạy lệnh sau:
sudo gpasswdBạn sẽ được yêu cầu nhập mật khẩu cho nhóm và lặp lại nó.
Bây giờ bạn có thể thêm người dùng vào một nhóm theo cách được chỉ định ở trên hoặc một người dùng mới có thể tham gia nhóm đơn giản bằng cách chạy lệnh sau và cung cấp mật khẩu chính xác:
newgrpRõ ràng, bạn không muốn cung cấp mật khẩu nhóm cho bất kỳ ai, vì vậy tốt hơn nên tự thêm người dùng vào nhóm.
Làm thế nào để hạn chế nhóm để chỉ các thành viên được chỉ định
Nếu bạn không muốn bất kỳ ai biết mật khẩu để tham gia một nhóm, bạn có thể chạy lệnh sau:
sudo gpasswd -RĐặt người dùng làm quản trị viên
Bạn có thể đặt người dùng làm quản trị viên của một nhóm. Điều này cho phép người dùng thêm và xóa người dùng khỏi một nhóm cụ thể cũng như thay đổi mật khẩu
Để thực hiện việc này, hãy chạy lệnh sau:
sudo gpasswd -Một tài khoản tomCách xóa mật khẩu nhóm
Bạn có thể xóa mật khẩu khỏi nhóm bằng cách sử dụng lệnh sau:
sudo gpasswd -r tài khoảnCách xóa người dùng khỏi nhóm
Để xóa người dùng khỏi nhóm, hãy chạy lệnh sau:
sudo gpassword -d tài khoản tomLàm thế nào để cung cấp cho một nhóm đọc, viết và thực thi quyền trên một tập tin hoặc thư mục
Cho đến bây giờ, người dùng trong nhóm tài khoản có quyền truy cập vào thư mục tài khoản nhưng họ thực sự có thể làm bất cứ điều gì vì họ chỉ có quyền đọc và thực thi.
Để cung cấp quyền ghi vào nhóm, bạn có thể chạy lệnh sau:
sudo chmod g + w tài khoảnTóm lược
Hướng dẫn này đã giới thiệu một vài lệnh để giúp bạn thiết lập quyền trên hệ thống Linux của bạn. Bạn cũng có thể sử dụng lệnh useradd để thiết lập người dùng và người dùng nhóm.