Chown Command trong Linux: Cách sử dụng nó

Quản lý quyền sở hữu và quyền đối với tệp có lẽ là nhiệm vụ cần thiết nhất của người quản trị hệ thống. Trong bất kỳ hệ điều hành nhiều người dùng nào như Linux , việc chỉ định quyền sở hữu tệp và thư mục đúng cách là rất quan trọng.

Lệnh chown là công cụ hữu ích nhất cho việc này. Đừng nhầm với chmod , chown có thể sửa đổi quyền sở hữu của người dùng đối với các tệp và gán chúng cho các nhóm khác nhau. Đây là một lệnh cần thiết để thành thạo đối với bất kỳ người dùng Linux nghiêm túc nào .

Đây là hướng dẫn để bạn bắt đầu.

Làm thế nào để bạn kiểm tra quyền sở hữu(Ownership) của một tệp(A File) ?

Trước khi bắt đầu chuyển tệp xung quanh các chủ sở hữu và nhóm khác nhau, trước tiên bạn nên tìm hiểu cách kiểm tra chủ sở hữu hiện tại của tệp. Quá trình này rất đơn giản: thêm cờ a -l vào lệnh ls thông thường bao gồm thông tin quyền sở hữu của tệp hoặc thư mục được truy vấn.

Giả sử(Say) bạn có một tệp được gọi là example.txt. Đây là cách lệnh xem thông tin quyền sở hữu của nó sẽ trông như thế nào:

ls -l example.txt

Sử dụng chown trên một tệp duy nhất

Cách đơn giản nhất để sử dụng chown là thay đổi người dùng sở hữu một tệp cụ thể. Cú pháp là sudo chown tên tệp tên người dùng, trong đó tên người dùng là tên của người dùng bạn muốn cung cấp tệp và tên tệp là tên của tệp được đề cập. Đây là những gì nó trông giống như trong thực tế:

sudo chown someone_else example.txt

Lưu ý rằng điều này không thay đổi quyền sở hữu nhóm của các tệp, chỉ người dùng. Để thay đổi chủ sở hữu nhóm, bạn phải sử dụng một cú pháp khác - sudo chown: groupname filename

Trong trường hợp cụ thể này, điều này trở thành:

sudo chown: group2 example.txt

Bạn cũng có thể kết hợp cả hai lệnh thành một dòng để thay đổi người dùng cũng như quyền sở hữu nhóm của tệp:

sudo chown me: group1 example.txt

Thay đổi quyền sở hữu(Ownership) nhiều tệp(Multiple Files) với Chown

Thay đổi quyền sở hữu của từng tệp riêng lẻ khá tẻ nhạt khi xử lý số lượng tệp lớn hơn. Rất may, hầu hết các lệnh Linux đều(most Linux commands) cho phép bạn xâu chuỗi nhiều tên tệp được phân tách bằng dấu cách trong một lệnh duy nhất. Như thế này:

sudo chown someone_else: group2 example1.txt example2.txt

Sử dụng thủ thuật tương tự để kiểm tra quyền sở hữu của nhiều tệp:

ls -l example1.txt example2.txt

Ngay cả khi kết hợp nhiều tên tệp thành một lệnh duy nhất, quá trình này cũng quá bất tiện cho nhiều hơn một vài tệp. Một cách tiếp cận tốt hơn là thay đổi quyền sở hữu toàn bộ nội dung của một thư mục cùng một lúc.

Điều này đạt được bằng cách thêm cờ -R vào lệnh chown. Điều này khiến chown đi qua nội dung của thư mục và thay đổi đệ quy quyền sở hữu của mọi tệp bên trong. Đây là một minh chứng:

sudo chown -R someone_else: ví dụ nhóm2

Chúng ta có thể sử dụng lại cờ đệ quy để kiểm tra quyền sở hữu của các tệp trong thư mục ví dụ.

ví dụ ls -l -R

Sửa đổi quyền sở hữu tệp bằng UID

Quản trị viên hệ thống quản lý nhiều người dùng sẽ nhanh chóng cảm thấy mệt mỏi với việc nhập tên người dùng liên tục. Một lỗi đánh máy duy nhất trong bất kỳ tên nào sẽ gây ra lỗi khi sử dụng chown, làm mọi thứ chậm lại đáng kể.

Một giải pháp thay thế tốt hơn là sử dụng ID người dùng để thay thế. UID là một số có bốn chữ số được gán cho mỗi người dùng đã tạo, bắt đầu từ 1000 trở lên. Điều này dễ nhập hơn nhiều so với một chuỗi và ít bị lỗi hơn nhiều.

Để sử dụng phương pháp này, chỉ cần thay thế tên người dùng bằng UID:

sudo chown 1001 example.txt

Nếu bạn không biết UID của người dùng, bạn có thể nhanh chóng kiểm tra nó bằng lệnh id. Chỉ cần(Just) nhập tên người dùng id -u để xem ID duy nhất của người dùng đó.

Phương thức này cũng có thể được mở rộng cho tên nhóm. Để lấy UID của nhóm đăng nhập của người dùng và các nhóm khác mà họ thuộc về, hãy sử dụng lệnh id không có cờ -u.

id ai đó_else

Như bạn có thể thấy, chúng tôi có nhiều id nhóm khác nhau mà người dùng được chỉ định thuộc về. Kết hợp tất cả lại với nhau, chúng ta có thể sử dụng chown như thế này để chỉ định chủ sở hữu mới và thay đổi nhóm của tệp:

sudo chown 1001: 1003 example.txt

Bạn có thể làm gì khác với lệnh(Command) chown ?

Chúng tôi đã chứng minh hầu hết các công dụng phổ biến của chown. Giờ đây, bạn có thể thay đổi người dùng và nhóm sở hữu tệp thông qua nhiều phương pháp khác nhau. Nhưng đó không phải là giới hạn hoàn toàn về khả năng của lệnh.

Bạn có thể tham khảo các trang người dùng chính thức để biết mô tả kỹ thuật và danh sách đầy đủ các đối số mà bạn có thể sử dụng với lệnh. Chỉ cần(Just) nhập man chown trong thiết bị đầu cuối để xem nó.

Chown có hữu ích không?

Nếu bạn là người dùng duy nhất của máy tính của mình, thì bạn sẽ không bao giờ cần sử dụng chown. Nhưng nếu bạn sử dụng hệ thống Linux trong môi trường chuyên nghiệp, có thể là máy chủ thương mại hoặc máy tính của trường đại học, thì việc thành thạo lệnh chown (ngoài chmod ) là điều tối quan trọng.

Khả năng gán và xóa tệp cho người dùng và nhóm là điều cần thiết trong việc duy trì các ranh giới nghiêm ngặt trong hệ thống nhiều người dùng. Phần tốt nhất về chown là tính linh hoạt của nó - bạn có thể làm việc với các tệp riêng lẻ hoặc toàn bộ thư mục bằng cùng một lệnh.

Bạn cũng có thể chỉ định quyền sở hữu cho người dùng và nhóm riêng biệt và trong một tuyên bố kết hợp. Được sử dụng với các UID(UIDs) thuận tiện hơn , nó giúp việc xử lý ngay cả các cấu trúc phân cấp người dùng phức tạp nhất trở nên dễ dàng.



About the author

Tôi là nhà tư vấn công nghệ với hơn 10 năm kinh nghiệm trong lĩnh vực phần mềm. Tôi chuyên về Microsoft Office, Edge và các công nghệ liên quan khác. Tôi đã làm việc trong nhiều dự án khác nhau cho cả các công ty lớn và nhỏ, và tôi cực kỳ am hiểu về các nền tảng và công cụ khác nhau hiện nay.



Related posts