Hướng dẫn đầy đủ về quyền sở hữu và nhóm tệp Linux
Khi bạn gặp sự cố với quyền đối với tệp trên Linux, thường thì nguồn gốc của sự thất vọng của bạn sẽ liên quan đến cài đặt liên quan đến chủ sở hữu hoặc nhóm của tệp. Rất nhiều điều không thể tránh khỏi nếu bạn sử dụng Linux thường xuyên, vào lúc này hay lúc khác, bạn sẽ phải thay đổi cài đặt chủ sở hữu hoặc nhóm của tệp hoặc thư mục để khắc phục sự cố.
Trong bài viết này, chúng tôi sẽ làm sáng tỏ các khái niệm về nhóm và chủ sở hữu tệp Linux và 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.
Mục Lục
Cách tìm chủ sở hữu và nhóm của tệp 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 ls -l (đó là một dấu gạch ngang với lệnh L viết thường). Các -l switch sẽ định dạng danh sách trong các cột cung cấp cho bạn nhiều thông tin chi tiết về tệp của bạn hơn 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). Hình 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 đại diện cho các bit xác định quyền đối với 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 bit sau (được đánh dấu ở trên) đại diện cho quyền của chủ sở hữu tệp—r để đọc, w để viết, và x để thực thi.
Bất kỳ quyền nào không đượ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 bit thứ hai trong cột đầu tiên đó (được đánh dấu ở trên) đại diện cho các quyền đối với nhóm có quyền truy cập vào tệp này. Chúng hoạt động tương tự như trên. Chúng sẽ là một dấu gạch ngang hoặc một trong các 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 sẽ cần phải là người dùng root hoặc người dùng có đặc quyền quản trị (tức 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 tệp hoặc thư mục cho bất kỳ người dùng nào sẽ cho phép người dùng đó 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 nó, sửa đổi nó, 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 băm nhỏ lệnh có đị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 tệp đó thành bất kỳ nhóm nào hiện có. 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 chgrp lệnh có định dạng sau:
chgrp <groupname> <file or directory>
Điều này sẽ 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 tệp và nhóm cùng lúc
Nếu bạn cần sửa đổi cả cài đặt chủ sở hữu và nhóm của 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 có các đặc quyền của người dùng siêu cấp.
Để thực hiện điều này, hãy sử dụng băm nhỏ lệnh 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ó dấu cách.
sudo chown <newowner>:<newgroup> <file or directory>
Cách tạo nhóm bằng Linux Terminal
Nhóm cho phép bạn gán đặc quyền truy cập cho nhiều người dùng một cách nhanh chóng và 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 groupadd yêu cầu.
sudo groupadd <groupname>
Để đảm bảo rằng nhóm của bạn đã được tạo, bạn có thể sử dụng getent lệnh liệt kê tất cả các nhóm hoặc kết hợp nó với grep để tìm kiếm một nhóm cụ thể.
getent group
getent group | grep <groupname>
Nếu đầu ra từ lệnh hiển thị tên của nhóm bạn đang cố gắng 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 chúng tôi để 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
Thêm người dùng vào một nhóm được hoàn thành với usermod yêu cầu. Một lần nữa, bạn sẽ cần các đặc quyền của người dùng siêu cấp và cả người dùng và nhóm đều 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ác -Một switch trong lệnh trên là viết tắt của nối thêm và 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 -Một cờ, 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ác -G cờ 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 với gpasswd yêu cầu. 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 mọi tư cách thành viên khác của nhóm.
Cách xóa nhóm bằng thiết bị đầu cuối Linux
Cuối cùng, điều cuối cùng bạn cần biết để quản lý các nhóm trên hệ thống của mình là xóa một nhóm. Đầu tiên, điều quan trọng 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 hơn một số ít thành viên và bạn cần xóa họ trước khi xóa nhóm, bạn có thể xóa tất cả họ cùng một lúc với nhóm yêu cầu. Nhập lệnh có định dạng sau để xóa tất cả người dùng khỏi một nhóm cụ thể:
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 với groupdel lệnh, như sau.
sudo groupdel <groupname>
Nhóm người dùng Linux cung cấp cho bạ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 của chủ sở hữu và nhóm cho bất kỳ tệp hoặc thư mục nào trên hệ thống Linux của mình.
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 một thứ gì đó, thì việc đảm bảo quyền của chủ sở hữu và nhóm được đặt đúng thường là bước đầu tiên tốt để tìm ra giải pháp.
Đọc tiếp
Thông tin về các Tác giả