Trên hệ thống Linux, mỗi file liên kết với một owner (chủ sở hữu) và group owner (nhóm sở hữu). Khi không có quyền phù hợp, bạn không thể truy cập hoặc chỉnh sửa file/thư mục. Linux cung cấp công cụ "change owner" (chown) để thay đổi chủ sở hữu file/thư mục cũng như nhóm sở hữu. Bài viết này hướng dẫn sử dụng lệnh chown để quản lý file và thư mục hiệu quả.
Cách dùng lệnh chown trong Linux
Cú pháp lệnh:
sudo chown [new_owner]:[new_group_owner] filename
Kiểm tra quyền hiện tại của file
Trước khi thay đổi owner hoặc group owner, hãy liệt kê quyền hiện tại bằng ls -l. Lệnh này hiển thị owner và group owner của file bạn định thao tác.
Chỉ thay đổi owner của file/thư mục
Có thể chỉ thay đổi owner hiện tại. Theo cú pháp, hai cột cách nhau bằng dấu :. Cột đầu là owner mới, cột hai là group owner mới. Cần quyền superuser, tức là thêm sudo trước mọi lệnh chown.
sudo chown maketech: docker-machine
Kiểm tra kết quả bằng ls -l:
$ ls -l total 1964 -rw-r--r-- 1 userkubetrain user_kubetrain 2148 Mar 18 2019 certnew.cer -rw-r--r-- 1 maketech user_kubetrain 48 Jan 29 10:13 docker-machine
Bây giờ "maketech" là owner mới. Mặc định lệnh chỉ tác động lên một file/thư mục đơn lẻ. Để áp dụng đệ quy cho tất cả file và thư mục con, dùng tham số -R:
sudo chown -R maketech virtual-machine
Có thể thay đổi owner bằng UID của user:
sudo chown -R 1002 virtual-machine
Chỉ thay đổi group owner của file hoặc thư mục
Muốn cho user khác truy cập file, cho họ vào một group rồi thay đổi group ownership của file:
sudo chown :maketechpublic -R docker-machine
Kiểm tra kết quả. Dấu hai chấm : đặt trước tên group mới để chỉ rõ đây là tên nhóm, không phải user mới.
Thay đổi cả user và group của file
Để thay đổi owner và group owner cùng lúc, chỉ định cả hai giá trị:
sudo chown maketech:maketechpublic -R docker-machine
Điều này gán owner mới cho thư mục và group (nghĩa là user trong group) cũng có quyền thao tác.
Lệnh chown trong Linux chịu trách nhiệm thay đổi quyền sở hữu user và/hoặc group của file. Thường dùng kết hợp với lệnh chmod để quản lý quyền file tốt hơn.