Tuesday, April 2, 2013


Phân Quyền Truy Cập File Bằng Lệnh Chmod

1.Các quyền và nhóm đối tượng truy cập file
- Mỗi đối tượng file được gắn với ba loại quyền: read (đọc), write (sửa đổi) và execute (thực thi). Và mỗi quyền này lại được chỉ định cho ba loại user:
owner : chủ sở hữu của đối tượng – mặc định ban đầu là user tạo ra đối tượng đó.
group : nhóm các user chia sẻ chung quyền hạn truy cập – mặc định ban đầu là group mà owner ở trên thuộc về.
others : tất cả các user không thuộc hai nhóm trên.
- User root (siêu người dùng) có đủ tất cả các quyền đối với mọi đối tượng trên hệ thống. Ngoài ra, root  có thể thay đổi quyền hạn truy cập đối tượng cho bất kỳ user nào và còn có thể chuyển quyền sở hữu đối tượng qua lại giữa các user.
- Ý nghĩa của ba loại quyền này là:
Read: cho phép đọc.
Write: cho phép chỉnh sửa nội dung, xóa file; cho phép tạo và xóa  các  đối tượng trong thư mục.
Excute: cho phép thực thi hoặc truy cập nếu đó là thư mục.
2. Sử dụng lệnh Chmod để phân quyền cho file
- Mỗi đặc quyền truy cập này tương ứng với một trị số:
read = 4
write = 2
execute = 1
- Những giá trị cho một số quyền truy cập tương ứng với mỗi nhóm được bổ sung cùng nhau để tạo thành một giá trị giữa 0 và 7 (có thể được sử dụng để thay đổi hay phân quyền bằng cách sử dụng lệnh chmod – change mode).

- Số đầu cho owner, số thứ hai cho group, số còn lại cho other. Mỗi một số nhận một trong tám giá trị sau:
0 : cấm tất cả các quyền
1 : execute
2 : write
3 : execute + write
4 : read
5 : read + execute
6 : read + write
7 : read + write + execute
Ví dụ: nhập lệnh chmod 755 [tên_file] để cấp quyền truy cập vào một file nào đó, trong đó trị số 755 được sinh ra từ:
rwe = 4 (read) + 2 (write) + 1 (execute) = 7
re = 4 (read) + 1 (execute = 5
re = 4 (read) + 1 (execute = 5
                 

-Bạn có thể sử dụng lệnh chmod để phân quyền cho file và thư mục, tuy nhiên bạn nên lưu ý nhập chính xác lệnh chmod, không được sử dụng các kí tự chữ in hoa trong lệnh.
-Để thay đổi quyền hạn truy cập cho các user sử dụng lệnh chmod (bạn phải là owner của file hoặc có quyền root) 
Cú pháp :
             $ chmod [trị_số] [tên_file]
Chú ý:
Trước khi thực hiện lệnh phân quyền cho một file ta phải di chuyển đến thư mục chứa file đó.
Có một cách khác là sử dụng chmod bằng cách sử dụng ký tự đại diện.
Các ký tự đại diện cho nhóm là:
u : user sở hữu file
g : group của user trên
o : others
a : tất cả ba ký hiệu ở trên
Các toán tử:
+ : thêm quyền
- : bớt quyền
= : gán quyền
Ví dụ: bạn thêm quyền thi hành cho một shell scripts có tên là demo.sh để bạn có thể chạy nó như sau:
$ chmod +x demo.sh  :mặc định là u nên ở đây không cần nữa
$ chmod u+rwx,go-rwx demo.sh  :bạn đoán thử xem!
3. Một số chmod thường dùng
Dưới đây là một số lệnh chmod thường dùng:
chmod 777 file_name: Cấp quyền truy cập đầy đủ cho mọi đối tượng người dùng.
chmod 775 file_name: Cấp quyền truy cập đầy đủ cho owner và group, đối tượng người dùng chỉ có quyền đọc (read) và chạy (execute) file.
chmod 755 dir_name: Đây là chmod thường dùng nhất cho thư mục. Cấp quyền truy cập đầy đủ cho owner, chỉ cho phép group và đối tượng người dùng đọc và chạy các file trong thư mục.
chmod 700 file_name: Chỉ cấp quyền truy cập đầy đủ cho owner và cấm truy cập với mọi đối tượng khác.
chmod 500 dir_name: Không cho phép group và người dùng truy cập vào file trong thư mục, đồng thời giới hạn quyền owner chỉ đọc và chạy để tránh xóa và thay đổi các file trong thư mục này.
chmod 660 file_name: Cho phép owner và group đọc, sửa, xóa và ghi dữ liệu vào file, nhưng không phân quyền truy cập cho những người dùng khác.
chmod 644 file_name: Đây là chmod thường dùng nhất cho file. Cho phép Owner: Đọc, sửa, xóa và thay đổi file còn group và người dùng chỉ có quyền đọc.

No comments:

Post a Comment