Phân quyền trên Linux hay lập trình Bash shell thực chiến bằng 2 cách

Phân quyền trên Linux là cấp các quyền đọc, ghi, chạy trên các file, thư mục cho đúng người, đúng quyền, đảm bảo người nào không có quyền thì sẽ không truy cập được vào file, thư mục đã qui định.

Phân quyền file trên Linux rất quan trọng nhất là trong lĩnh vực web hosting vì trên Linux web server mỗi khách hàng có 1 thư mục riêng để chứa các website của mình, không truy cập được vào thư mục chứa các website của khách hàng khác.

Bài tập lập trình Bash shell thực chiến.

Viết 1 bash script tên là all_dir_perms.sh tạo ra tất cả các thư mục đại diện cho tất cả các quyền trên Linux.

Kết quả chạy all_dir_perms.sh như hình dưới

Tạo ra tổng cộng 512 thư mục để có đầy đủ tất cả quyền trên Linux

Có 2 cách viết để tạo ra tất cả các thư mục đại diện cho tất cả các quyền trên Linux.

Để so sánh 2 cách viết xem cách nào tối ưu hơn ta sẽ đo thời gian chạy của 2 bash script này là biết.

Dễ thấy all_dir_perms1.sh chạy nhanh hơn all_dir_perms2.sh.

time ./all_dir_perms1.sh 

real	0m0,831s
user	0m0,557s
sys	0m0,311s

time ./all_dir_perms2.sh 

real	0m1,168s
user	0m0,772s
sys	0m0,456s