Khi làm việc trong môi trường Linux nhiều người dùng, không phải mọi thứ đều mở cho tất cả mọi người — và điều đó có lý do của nó. Quyền truy cập tệp (file permissions) là nền tảng của bảo mật Linux, đảm bảo chỉ những người phù hợp mới có thể truy cập hoặc sửa đổi các tệp quan trọng. Dù bạn là một quản trị viên hệ thống mới hay một lập trình viên tò mò, việc hiểu cách Linux kiểm soát truy cập tệp là điều cần thiết để duy trì quyền kiểm soát và bảo mật.
Cùng tìm hiểu chi tiết nhé!
Giới thiệu về quyền truy cập tệp tin
Trong Linux, quyền truy cập tệp quyết định ai có thể đọc, ghi, hoặc thực thi các tệp và thư mục. Mỗi tệp hoặc thư mục được quản lý bởi 3 cấp độ quyền:
- Owner (User) – Người tạo ra tệp.
- Group – Những người dùng thuộc nhóm được chỉ định.
- Others – Tất cả những người còn lại.
Các quyền được biểu thị theo hai cách:
- Read (r hoặc 4) – Xem nội dung tệp.
- Write (w hoặc 2) – Sửa đổi nội dung tệp.
- Execute (x hoặc 1) – Chạy tệp như một chương trình hoặc script.
Thay đổi quyền bằng chmod
1. Chế độ ký hiệu (Symbolic Mode)
Bạn có thể thay đổi quyền bằng các ký hiệu:
-
- để thêm quyền
-
- để xóa quyền
- = để gán chính xác quyền
Ví dụ:
chmod u+x filename # Add execute for user chmod g-w filename # Remove write for group chmod o=r filename # Set read-only for others chmod u=rwx,g=rx,o= filename # Full for user, read/execute for group, none for others
2. Chế độ số (Octal Mode)
Mỗi quyền có một giá trị số:
- Read = 4
- Write = 2
- Execute = 1
Cộng các giá trị lại để xác định quyền truy cập.
Ví dụ:
chmod 755 filename # User (rwx), Group (r-x), Others (r-x) chmod 644 filename # User (rw-), Group (r--), Others (r--) chmod 700 filename # User (rwx), No access for group/others
Thay đổi chủ sở hữu bằng chown
Lệnh chown
dùng để thay đổi người sở hữu và nhóm của tệp.
Ví dụ:
chown newuser filename # Change owner chown newuser:newgroup filename # Change owner and group chown :newgroup filename # Change only group
Thay đổi đệ quy toàn bộ thư mục:
chown -R newuser:newgroup directory/
Thay đổi nhóm với chgrp
Sử dụng nếu chỉ muốn thay đổi nhóm mà không ảnh hưởng đến chủ sở hữu:
Ví dụ:
chgrp newgroup filename # Change group chgrp -R newgroup directory/ # Recursively change group
Sẵn sàng kiểm soát toàn bộ tệp tin của bạn?
Quyền truy cập trong Linux ban đầu có thể gây bối rối, nhưng với một chút thực hành, bạn sẽ sử dụng chúng như bản năng — và trở thành một phần sức mạnh không thể thiếu trong bộ công cụ quản trị hệ thống của bạn.