Giới thiệu
Trong lab này, chúng ta sẽ khám phá lệnh umask
của Linux, được sử dụng để thiết lập các quyền mặc định cho các tệp và thư mục mới được tạo. Chúng ta sẽ bắt đầu bằng cách hiểu lệnh umask
và cách nó hoạt động, sau đó tìm hiểu cách sửa đổi quyền của tệp và thư mục bằng umask
trong các tình huống khác nhau. Lab này bao gồm các khía cạnh thiết yếu của việc quản lý người dùng và quyền trong môi trường Linux.
Lab sẽ hướng dẫn bạn quy trình kiểm tra giá trị umask
hiện tại, thay đổi umask
để đặt các quyền mặc định khác nhau và quan sát các tác động lên các tệp và thư mục mới được tạo. Đến cuối lab này, bạn sẽ hiểu rõ cách sử dụng lệnh umask
để quản lý quyền của tệp và thư mục một cách hiệu quả.
Tìm hiểu về lệnh umask
Trong bước này, chúng ta sẽ khám phá lệnh umask
của Linux, được sử dụng để đặt các quyền mặc định cho các tệp và thư mục mới được tạo.
Lệnh umask
chỉ định mặt nạ tạo chế độ tệp, xác định các quyền mặc định cho các tệp và thư mục mới. Giá trị umask
là một số bát phân 4 chữ số, biểu thị các quyền không nên được cấp.
Hãy bắt đầu bằng cách kiểm tra giá trị umask
hiện tại:
umask
Ví dụ về đầu ra:
0022
Giá trị umask
là 0022
có nghĩa là các quyền mặc định cho các tệp mới sẽ là 0644
(rw-r--r--) và các quyền mặc định cho các thư mục mới sẽ là 0755
(rwxr-xr-x).
Giá trị umask
được tính bằng cách trừ giá trị được chỉ định từ các quyền mặc định (0777
cho tệp và 0755
cho thư mục). Ví dụ: với umask
là 0022
, các quyền mặc định sẽ là:
- Tệp:
0777 - 0022 = 0755
(rw-r--r--) - Thư mục:
0755 - 0022 = 0733
(rwxr-xr--)
Bạn có thể thay đổi giá trị umask
bằng lệnh sau:
umask 0002
Điều này đặt umask
thành 0002
, có nghĩa là các quyền mặc định cho các tệp mới sẽ là 0775
(rw-rwxr-x) và các quyền mặc định cho các thư mục mới sẽ là 0775
(rwxrwxr-x).
Sửa đổi quyền của tệp và thư mục bằng umask
Trong bước này, chúng ta sẽ tìm hiểu cách sửa đổi quyền mặc định của tệp và thư mục bằng lệnh umask
.
Trước tiên, hãy tạo một tệp và thư mục mới để quan sát tác động của umask
:
touch ~/project/new_file.txt
mkdir ~/project/new_directory
Bây giờ, hãy kiểm tra quyền của tệp và thư mục mới được tạo:
ls -l ~/project
Ví dụ về đầu ra:
-rw-r--r-- 1 labex labex 0 Apr 12 12:34 new_file.txt
drwxr-xr-x 2 labex labex 4096 Apr 12 12:34 new_directory
Như bạn có thể thấy, các quyền mặc định cho tệp mới là 0644
(rw-r--r--) và các quyền mặc định cho thư mục mới là 0755
(rwxr-xr-x), tương ứng với giá trị umask
hiện tại là 0022
.
Bây giờ, hãy thay đổi giá trị umask
thành 0002
:
umask 0002
Hãy tạo lại một tệp và thư mục mới:
touch ~/project/another_file.txt
mkdir ~/project/another_directory
Và kiểm tra quyền:
ls -l ~/project
Ví dụ về đầu ra:
-rw-rw-r-- 1 labex labex 0 Apr 12 12:35 another_file.txt
drwxrwxr-x 2 labex labex 4096 Apr 12 12:35 another_directory
Như bạn có thể thấy, các quyền mặc định cho tệp mới là 0774
(rw-rw-r--) và các quyền mặc định cho thư mục mới là 0775
(rwxrwxr-x), tương ứng với giá trị umask
là 0002
.
Điều này chứng minh cách bạn có thể sử dụng lệnh umask
để sửa đổi các quyền mặc định cho các tệp và thư mục mới được tạo.
Áp dụng umask trong các tình huống khác nhau
Trong bước này, chúng ta sẽ khám phá cách áp dụng lệnh umask
trong các tình huống khác nhau để quản lý quyền của tệp và thư mục một cách hiệu quả.
Tình huống 1: Bảo mật các tệp nhạy cảm
Hãy tưởng tượng bạn có một tệp nhạy cảm mà bạn muốn đảm bảo chỉ chủ sở hữu có quyền đọc và ghi. Bạn có thể đạt được điều này bằng cách đặt giá trị umask
hạn chế hơn:
umask 0077
touch ~/project/sensitive_file.txt
Ví dụ về đầu ra:
-rw------- 1 labex labex 0 Apr 12 12:36 sensitive_file.txt
Giá trị umask
là 0077
đảm bảo rằng tệp mới có quyền là 0700
(rwx------), có nghĩa là chỉ chủ sở hữu có quyền đọc và ghi.
Tình huống 2: Cho phép cộng tác nhóm
Trong một tình huống mà bạn muốn tạo các tệp và thư mục có thể truy cập được cho một nhóm cụ thể, bạn có thể đặt giá trị umask
cho phù hợp:
umask 0007
mkdir ~/project/shared_directory
touch ~/project/shared_file.txt
Ví dụ về đầu ra:
drwxrwx--- 2 labex labex 4096 Apr 12 12:37 shared_directory
-rw-rw---- 1 labex labex 0 Apr 12 12:37 shared_file.txt
Giá trị umask
là 0007
đảm bảo rằng thư mục mới có quyền là 0770
(rwxrwx---) và tệp mới có quyền là 0660
(rw-rw----), cho phép các thành viên của nhóm truy cập và sửa đổi các tệp và thư mục.
Hãy nhớ rằng, giá trị umask
được trừ từ các quyền mặc định (0777
cho tệp và 0755
cho thư mục) để xác định các quyền cuối cùng. Thử nghiệm với các giá trị umask
khác nhau để hiểu cách chúng ảnh hưởng đến các quyền mặc định.
Tóm tắt
Trong lab này, chúng ta đã khám phá lệnh umask
của Linux, được sử dụng để đặt các quyền mặc định cho các tệp và thư mục mới được tạo. Chúng ta đã học được rằng giá trị umask
là một số bát phân 4 chữ số, biểu thị các quyền không nên được cấp. Chúng ta cũng đã học cách sửa đổi quyền mặc định của tệp và thư mục bằng lệnh umask
và cách tạo các tệp và thư mục mới để quan sát tác động của umask
. Lab đã cung cấp các ví dụ thực tế để giúp chúng ta hiểu cách sử dụng và ứng dụng lệnh umask
trong các tình huống khác nhau.