Cách sử dụng lệnh Chown trong Linux để thay đổi quyền sở hữu tệp

Tác giả: VPS chính hãng 25 tháng 09, 2023

Linux là một hệ thống nhiều người dùng, mọi tệp và thư mục đều có một nhóm và chủ sở hữu được chỉ định cho nó. Chủ sở hữu mặc định của tệp là người dùng đã tạo tệp đó. Tuy nhiên, đôi khi bạn cần thay đổi quyền sở hữu tệp hoặc thư mục. Trong Linux, chúng tôi sử dụng quyền để giới hạn những gì người dùng có thể làm với tệp hoặc thư mục nhằm bảo vệ và bảo mật tệp hoặc thư mục đó. Với tư cách là chủ sở hữu tệp, bạn có thể đọc, ghi và thực thi tệp. Để thay đổi chủ sở hữu hoặc nhóm tệp, lệnh Chown sẽ được sử dụng. Lệnh Chown cho phép bạn thay đổi quyền sở hữu tệp, liên kết hoặc thư mục và định cấu hình chính xác các quyền của nó. Trong bài viết này, chúng ta sẽ tìm hiểu cách sử dụng lệnh Chown trong Linux để thay đổi quyền sở hữu tệp.  

Khi nào bạn nên thay đổi quyền sở hữu tệp?

Trước đây, bạn đã biết cách sử dụng lệnh find để tìm kiếm tệp và thư mục trong Linux. Ngoài ra, bạn có thể gặp phải một số tình huống cần thay đổi quyền sở hữu tệp trong Linux. Hãy xem ví dụ về những tình huống đó:

  • Người dùng và chủ sở hữu nhóm của tài khoản bạn muốn sử dụng các tệp trên máy tính Linux phải được thay đổi nếu bạn truyền dữ liệu qua các hệ điều hành Linux hoặc tương tự như Unix.
  • Bạn có thể tạo một tệp hoặc thư mục trong khi đăng nhập bằng root, nhưng bạn muốn một người dùng cụ thể có thể truy cập vào nó.
  • Nếu một người dùng rời khỏi nhóm của bạn, một cá nhân khác sẽ chịu trách nhiệm về tất cả các tệp. Nhân viên hiện đang phụ trách các tập tin đó phải được đổi thành chủ sở hữu và chủ nhóm.
  • Bạn có thể viết một tập lệnh sẽ được sử dụng bởi một người dùng cụ thể.

Lệnh Chown là gì và cách sử dụng nó trong Linux?

Lệnh Chown trong Linux là viết tắt của “Change Owner”. Đúng như tên gọi, lệnh này được sử dụng để thay đổi quyền sở hữu các tệp và thư mục trong hệ thống Linux. Vì vậy, nó được sử dụng để sửa đổi chủ sở hữu của tệp hoặc thư mục cho người dùng hoặc nhóm khác. Để kiểm soát quyền sở hữu tệp trong Linux, lệnh chown là một công cụ quan trọng.

Bạn có thể sửa đổi chủ sở hữu, nhóm hoặc cả hai của tệp hoặc thư mục bằng tính năng này. Bạn có thể xử lý các tệp và thư mục của mình hiệu quả hơn nếu bạn hiểu cú pháp và các tùy chọn cơ bản của lệnh chown. Lệnh chown là một bổ sung có giá trị cho hộp công cụ của bạn, bất kể mức độ kinh nghiệm của bạn ở đâu. Việc áp dụng đúng lệnh chown có thể giúp bảo mật các tệp của bạn khỏi người ngoài và ngăn người dùng trái phép thay đổi chúng. Chown theo mặc định trả về 0 sau khi thao tác thành công và không tạo ra đầu ra.

Lệnh Chown được sử dụng để thay đổi quyền sở hữu các tệp và thư mục trong Linux

Lệnh Chown được sử dụng để thay đổi quyền sở hữu các tệp và thư mục trong Linux

Điều kiện để sử dụng lệnh Chown trong Linux

Trước khi tìm hiểu cách sử dụng lệnh chown trong Linux, hãy đảm bảo rằng hệ thống của bạn đáp ứng các thông số kỹ thuật dưới đây:

  • Một server chạy VPS Linux để quản lý quyền sở hữu file và thư mục trên đó.
  • Người dùng không phải root có đặc quyền sudo. Để chạy và sử dụng lệnh chown, bạn sẽ cần có quyền siêu người dùng.
  • Truy cập vào dòng Terminal/Command.

Cú pháp cơ bản của lệnh Chown Linux

Hãy xem cú pháp lệnh Chown trong Linux được sử dụng để thay đổi chủ sở hữu tệp hoặc nhóm.

chown [OPTIONS] USER[:GROUP] FILE(s)

Để biết cách sử dụng lệnh chown trong Linux, hãy đọc chi tiết bên dưới:

  • [OPTIONS] – Hiển thị các cờ mà người dùng có thể gửi bằng lệnh. Sử dụng lệnh man, bạn có thể tìm thấy danh sách đầy đủ các cờ.
  • [USER] – Nếu chỉ người dùng được chỉ định, quyền sở hữu nhóm đối với các tệp vẫn không thay đổi và người dùng được chỉ định sẽ có quyền sở hữu chúng.
  • [:] – Không có thay đổi nào được thực hiện nếu chỉ cung cấp dấu hai chấm (:) mà không xác định người dùng hoặc nhóm.
  • [GROUP] – Quyền sở hữu nhóm của tệp có thể được thay đổi nếu muốn.
  • USER:GROUP – Khi cả người dùng và nhóm đều được chỉ định (không có khoảng trắng ở giữa), quyền sở hữu các tệp sẽ được thay đổi tương ứng thành người dùng và nhóm được chỉ định.
  • FILE  – Tệp mục tiêu của bạn.
  • USER:: – Người dùng trở thành chủ sở hữu của các tệp khi tên người dùng đứng trước dấu hai chấm (:) và tên nhóm bị bỏ qua. Quyền sở hữu các tệp sau đó được thay đổi thành nhóm đăng nhập của người dùng.

Trước khi sử dụng lệnh chown, bạn có thể điều chỉnh quyền của người dùng và nhóm. Để thực hiện việc này, hãy đăng nhập vào VPS đã mua của bạn bằng SSH và chuyển sang thư mục bạn đang xem xét.

Lệnh chown có thể điều chỉnh quyền của người dùng và nhóm

Xem nhóm, UID và GID

Chạy lệnh sau để liệt kê các nhóm bạn đang tham gia:

groups

Và để xem danh sách các nhóm, ID số của họ cũng như UID và GID của bạn, hãy nhập:

id

Phiên bản Chown

Bạn có thể chạy lệnh bên dưới để kiểm tra lệnh chown trên hệ thống của mình.

chown --version

Kiểm tra quyền sở hữu tệp Linux

Trước khi xem quyền sở hữu tệp của người dùng và nhóm, hãy chạy lệnh sau để kiểm tra nhóm hoặc quyền sở hữu các tệp/thư mục Linux hiện tại:

ls -l

Thay đổi chủ sở hữu tệp Linux

Đầu tiên, hãy xem cú pháp cơ bản của lệnh đích để thay đổi quyền sở hữu tệp:

chown NewUser FILE

Vì vậy, bạn có thể sử dụng lệnh bên dưới để thay đổi quyền sở hữu một mẫu tệp thành chủ sở hữu mới có tên vpschinhhang:

chown vpschinhhang sample

Lưu ý: Bạn phải thay đổi quyền sở hữu cả tệp và thư mục bằng cùng một định dạng.

Một lần nữa, bạn có thể sử dụng lệnh ls -l để xác minh những thay đổi về quyền sở hữu.

Sử dụng UID để thay đổi chủ sở hữu tệp Linux

Để thay đổi quyền sở hữu tệp thay vì tên người dùng, hãy chỉ định ID người dùng:

chown 1000 sample2

Lưu ý: Đảm bảo rằng không có người dùng nào khác có cùng tên với UID. Nếu vậy, tên người dùng thay vì UID sẽ được ưu tiên bởi lệnh chown.

Sử dụng GID để thay đổi nhóm tệp Linux

Sử dụng ID nhóm (GID) như với UID để sửa đổi nhóm của tệp thay vì tên nhóm của nó.

Ví dụ:

chown :1000 sample

Chỉnh sửa quyền sở hữu nhóm Linux

Bạn có thể sử dụng lệnh chown trong Linux để chỉnh sửa/thay đổi nhóm. Đây là cú pháp cơ bản:

chown OWNER[:group] FILE(s)

Ví dụ: sử dụng lệnh sau để thay đổi chủ sở hữu và nhóm của cùng một tệp Sample thành chủ sở hữu mới (newowner ) và nhóm chủ sở hữu mới (newownergroup), như sau:

chown newowner:newownergroup Sample

Bạn có thể bỏ qua phần sở hữu nếu bạn chỉ xem xét việc thay đổi nhóm. Vì vậy, lệnh cần thiết để chỉ thay đổi nhóm của newownergroup sẽ như sau:

chown :newownergroup Sample

Thay đổi quyền sở hữu nhiều tệp Linux

Để sử dụng lệnh chown trong Linux nhằm thay đổi quyền sở hữu nhiều tệp, bạn cần liệt kê tên tệp mục tiêu theo người dùng mới. Ví dụ: để chọn root làm chủ sở hữu mới của tệp sample2 và sample3, hãy chạy:

chown root sample2 sample3

Và để thay đổi quyền sở hữu tên tệp và thư mục, hãy gõ:

chown root sample3 Dir1

Thay đổi quyền sở hữu thư mục Linux

Có thể sử dụng lệnh chown trong Linux cho các thư mục. Bạn sẽ thấy phần đại diện cho quyền của người dùng, nhóm và thư mục khác cũng như chủ sở hữu thư mục ở đầu ra. Sau đó thay đổi chủ sở hữu và nhóm của thư mục. Ví dụ: để đặt người dùng newowner làm chủ sở hữu của Dir1Permissions, hãy chạy:

chown newowner /Dir1Permissions

Sử dụng lệnh bên dưới để thay đổi nhóm một mình:

chown :newownergroup /Dir1Permissions

Chạy lệnh bên dưới để thay đổi chủ sở hữu và nhóm của thư mục:

chown newowner:newownergroup /Dir1Permissions

Sau đó, bạn có thể đặt quyền cho nhiều tệp hoặc thư mục. Cú pháp cơ bản là:

chown [OPTIONS] [OWNER][:GROUP] file1 file2

Nói chung, lệnh bên dưới là cách bạn có thể đặt chủ sở hữu mới làm chủ sở hữu và nhóm chủ sở hữu mới làm nhóm cho thư mục Dir1Permissions cùng với tệp Sample bên trong:

chown newowner:newownergroup /home/Dir1Permissions/ /home/Dir1Permissions/Sample

Thay đổi nhóm tệp Linux

Để thay đổi nhóm cho một tệp hoặc thư mục, bạn có thể sử dụng lệnh chown trong Linux. Bằng cách này, bạn sẽ thực hiện việc này mà không cần thay đổi người dùng sở hữu.

chown :NewGroup FILE

Thay đổi chủ sở hữu và nhóm Linux

Bạn cũng có thể sử dụng lệnh chown trong Linux để chỉ định chủ sở hữu mới của tệp và thay đổi nhóm của tệp đó cùng một lúc. Đơn giản chỉ cần chạy:

chown NewUser:NewGroup FILE

Ví dụ: khi bạn muốn đặt linuxuser làm chủ sở hữu mới và nhóm 2 làm nhóm mới của tệp sample2, hãy chạy:

chown linuxuser:group3 sample3

Chuyển quyền sở hữu và cài đặt nhóm giữa các tệp

Bạn có thể sử dụng lệnh chown trong Linux để sử dụng chủ sở hữu và nhóm tệp tham chiếu thay vì thay đổi quyền sở hữu cho một người dùng cụ thể. Thêm tùy chọn –reference vào lệnh chown sẽ sao chép cài đặt từ tệp này sang tệp khác:

chown --reference=ReferenceFILE FILE

Chỉnh sửa chủ sở hữu của liên kết tượng trưng Linux

Liên kết tượng trưng hoặc Symlink đề cập đến một tệp thực đã tồn tại. Nó cũng có thể được coi là một phím tắt nâng cao tương tự như các phím tắt được tìm thấy trên Windows. bạn có thể sử dụng lệnh chown trong Linux để thay đổi chủ sở hữu và nhóm liên kết tượng trưng. Ví dụ: tạo một liên kết tượng trưng đến tệp chownSample.

ln -s chownSample mysymlink

Sử dụng lệnh ls -l để xác minh thông tin quyền sở hữu và nhóm. Một mục tương ứng với tệp vật lý và mục còn lại tương ứng với liên kết tượng trưng.

Để thay đổi chủ sở hữu thành chủ sở hữu mới cho liên kết tượng trưng mới tạo và thay đổi quyền sở hữu tệp chownSample, hãy chạy:

chown newowner mysymlink

Ngoài ra, bạn có thể thay đổi quyền sở hữu của liên kết tượng trưng bằng cách chạy lệnh sau:

chown -h newowner mysymlink

Kiểm tra chủ sở hữu và nhóm trước khi áp dụng thay đổi

Bạn có thể sử dụng lệnh chown trong Linux để kiểm tra chủ sở hữu và nhóm trước khi thực hiện thay đổi. Cú pháp cơ bản để kiểm tra cả người dùng và nhóm như sau:

chown --from=CurrentUser:CurrentGroup NewUser:NewGroup FILE

Cách chỉ kiểm tra chủ sở hữu

Để chỉ xác minh người dùng hiện tại của tệp, hãy sử dụng tùy chọn –from:

chown --from=CurrentUser NewUser FILE

Cách chỉ kiểm tra nhóm

Tương tự như phần trên, bạn có thể sử dụng tùy chọn –from để chỉ xác thực nhóm của tệp.

chown --from=:CurrentGroup :NewGroup FILE

=>> Lệnh truncate trong Linux: Cách để xóa hoặc cắt bớt nội dung tệp

Trong bài viết này, VPS Chính hãng đã chia sẻ cách sử dụng lệnh Chown trong Linux để thay đổi quyền sở hữu tệp. Sử dụng lệnh chown trong Linux, bạn có thể chỉ định các chủ sở hữu khác nhau và chỉ định nhóm cho các tệp/thư mục khác nhau. Chia sẻ ngay quá trình thực hiện của bạn trong phần bình luận của chúng tôi!