Lệnh Chgrp Linux dành cho người mới bắt đầu (5 ví dụ)

theanh

Administrator
Nhân viên
Tại HowtoForge, gần đây chúng tôi đã thảo luận về lệnh chown cho phép người dùng thay đổi chủ sở hữu cũng như nhóm của tệp (hoặc thư mục) trong Linux. Nhưng bạn có biết có một tiện ích dòng lệnh chuyên dụng mà bạn có thể sử dụng khi thay đổi thông tin liên quan đến nhóm không? Công cụ được đề cập đến là chgrp và trong hướng dẫn này, chúng ta sẽ thảo luận về công cụ này bằng các ví dụ dễ hiểu.

Nhưng trước khi thực hiện, cần lưu ý rằng tất cả các ví dụ và hướng dẫn được đề cập trong hướng dẫn này đều đã được thử nghiệm trên Ubuntu 22.04.

Lệnh chgrp của Linux​

Như bạn đã hiểu, nếu yêu cầu chỉ là thay đổi nhóm của tệp hoặc thư mục, thì bạn có thể sử dụng chgrp thay vì chown. Công cụ này cung cấp một số tùy chọn dòng lệnh mà bạn có thể sử dụng trong các tình huống khác nhau. Đây là cú pháp chung của chgrp:
Mã:
chgrp [OPTION]... GROUP FILE...
Các ví dụ kiểu Hỏi & Đáp sau đây sẽ giúp lệnh chgrp rõ ràng hơn.

Câu hỏi 1. Cách thay đổi nhóm tệp/thư mục bằng chgrp​

Cách sử dụng cơ bản của lệnh chgrp rất dễ. Giả sử bạn muốn thay đổi nhóm của tệp 'file1' có nhóm hiện tại là 'himanshu'. Yêu cầu là phải thay đổi quyền sở hữu nhóm thành 'root'. Đây là lệnh chúng ta cần chạy trong trường hợp này:
Mã:
chgrp root file1
Tùy thuộc vào cấp độ đặc quyền hiện tại của bạn, bạn có thể muốn chạy lệnh trên với 'sudo' (không chắc 'sudo' là gì, hãy đọc phần này).



Ảnh chụp màn hình ở trên xác nhận rằng quyền sở hữu nhóm đã được thay đổi thành 'root' thành công.

Câu hỏi 2. Cách chgrp xử lý các liên kết tượng trưng​

Theo mặc định, lệnh chgrp ảnh hưởng đến đối tượng tham chiếu của liên kết tượng trưng. Điều này có nghĩa là bất kỳ thay đổi nào được thực hiện thông qua công cụ sẽ không được áp dụng cho liên kết tượng trưng mà thay vào đó là cho tệp mà nó đang tham chiếu tới. Ví dụ, hãy xem xét liên kết tượng trưng 'file1symlink' liên kết đến 'file1'.



Cả 'file1' và 'file1symlink' đều có chủ sở hữu và nhóm được đặt thành 'himanshu'.



Bây giờ, nếu bạn thử thay đổi nhóm của tệp liên kết tượng trưng, bạn sẽ thấy rằng 'file1symlink' sẽ không bị ảnh hưởng, nhưng quyền sở hữu nhóm của 'file1' sẽ thay đổi.

sudo chgrp root file1symlink



Tuy nhiên, nếu muốn, bạn có thể thay đổi hành vi này bằng cách sử dụng tùy chọn dòng lệnh -h.

sudo chgrp -h root file1symlink

Ảnh chụp màn hình sau đây cho thấy lệnh đã đề cập ở trên đã thay đổi nhóm của liên kết tượng trưng lần này:


Câu hỏi 3. Làm thế nào để lệnh chgrp chọn thông tin nhóm từ tệp tham chiếu​

Nếu muốn, bạn có thể yêu cầu lệnh chgrp chọn thông tin nhóm từ tệp, giúp bạn tiết kiệm công sức chỉ định tên nhóm theo cách thủ công trên dòng lệnh. Có thể truy cập tính năng này thông qua tùy chọn dòng lệnh --reference, yêu cầu bạn chỉ định tên của tệp tham chiếu.
Mã:
chgrp --reference=[ref-file-name] FILENAME
Ví dụ:
Mã:
chgrp --reference=file2 file1
Lệnh đã đề cập ở trên sẽ làm cho quyền sở hữu nhóm của file1 giống với quyền sở hữu của file2.

Câu hỏi 4. Làm thế nào để yêu cầu chgrp thực hiện thay đổi đệ quy​

Trong trường hợp - khi xử lý các thư mục và thư mục con - bạn muốn thực hiện các thay đổi đệ quy, bạn có thể thực hiện bằng cách sử dụng tùy chọn dòng lệnh -R.
Mã:
chgrp -R GROUPNAME DIRECTORY-OR-PATH

Câu hỏi 5. Tại sao lại dùng chgrp khi chown cũng có thể dùng để thay đổi nhóm​

Người ta có thể lập luận rằng nếu lệnh chown cũng có thể dùng để chỉnh sửa thông tin liên quan đến nhóm, thì tại sao chgrp lại cần thiết ngay từ đầu? Vâng, trước tiên, chgrp dễ sử dụng hơn so với chown khi tất cả những gì bạn cần làm là thay đổi nhóm của một tệp/thư mục. Và thứ hai, vì chown cũng có khả năng thực hiện các công việc khác, nên người ta sẽ không muốn vô tình thực hiện các thay đổi khi đang làm việc trên, chẳng hạn, một máy chủ sản xuất. Để thay đổi thư mục, hãy dùng lệnh cd.

Kết luận​

Chgrp không phải là lệnh khó hiểu và khó sử dụng. Chúng tôi đã đề cập đến hầu hết các tùy chọn/tính năng chính của lệnh này tại đây. Hãy thử các ví dụ mà chúng tôi đã đề cập trong hướng dẫn này và bạn sẽ sẵn sàng sử dụng lệnh. Trong trường hợp có bất kỳ nghi ngờ hoặc thắc mắc nào, hãy truy cập trang hướng dẫn của công cụ.
 
Back
Bên trên