Quyền của người dùng * nix thực sự đơn giản, nhưng mọi thứ có thể trở nên lộn xộn khi bạn phải tính đến tất cả quyền truy cập thư mục mẹ trước khi tiếp cận một tệp đã cho. Làm cách nào để kiểm tra xem người dùng có đủ đặc quyền không? Nếu không, thì thư mục nào đang từ chối truy cập?
Ví dụ: giả sử người dùng joe
và tệp /long/path/to/file.txt
. Ngay cả khi file.txt
được mã hóa thành 777, joe vẫn phải có thể truy cập /long/
, và sau đó /long/path/
và /long/path/to/
trước đó . Những gì tôi cần là một cách để tự động kiểm tra này. Nếu joe
không có quyền truy cập, tôi cũng muốn biết nơi anh ta đã bị từ chối. Có lẽ anh ta có thể truy cập /long/
, nhưng không /long/path/
.
namei <path> || exit 1
cho phép bạn phát hiện vấn đề cấp phép dễ dàng trong tập lệnh.