[Linux] Tìm hiểu về umask trong linux


Giá trị umask là gì? 
umask được sử dụng để kiểm soát quyền mặc định của các files mới khi nó được tạo ra. umask gồm 4 chữ số trong hệ cơ số 8 (four-digit octal). Mỗi khi user tạo file/folder mới, linux dựa trên umask và base permission để tính ra phân quyền cho file/folder mới. Để kiểm tra umask hiện tại, gõ lệnh umask

Gán umask mặc định như thế nào? 
Bạn có thể gán umask mặc định trong /etc/bashrc hoặc /etc/profile cho tất cả các users.
Ví dụ gán umask = 123 cho user oracle
vim /home/oracle/.bashrc
thêm dòng:
umask 123

Cách OS sử dụng umask tính giá trị phân quyền như thế nào?
Quyền truy cập cho phép = "base permission" AND (NOT (Giá trị umask))
Như đã nói, phân quyền của file mới dựa trên base permission (quyền cơ bản) và umask
Base permission cơ bản của file/folder như sau:
- File = 666 (rw-rw-rw)
- Folder = 777 (rwx-rwx-rwx)
Giả sử umask = 0022 ~ 022 => file mới sẽ được phân quyền = 644, folder mới = 755
Cụ thể cách tính với đề bên dưới:
Đầu bài: umask = 123 tính quyền truy cập cho phép
Bài giải:
base permission: 666 = 110 110 110
Giá trị umask: 123 = 001 010 011
==> NOT (Giá trị umask) = NOT (001 010 011) = 110 101 100
Quyền truy cập cho phép = 110 110 110 AND 110 101 100 = 110 100 100 = 644



Nhận xét