Một khi bạn bắt đầu đào sâu vào hệ thống Linux, bạn có thể thấy một số điều khó hiểu hoặc không mong muốn, chẳng hạn như / usr / bin / false. Tại sao nó ở đó và mục đích của nó là gì? Bài đăng Hỏi & Đáp của SuperUser hôm nay có câu trả lời cho câu hỏi của một độc giả tò mò.
Phiên Hỏi & Đáp hôm nay đến với chúng tôi với sự hỗ trợ của SuperUser — một phần của Stack Exchange, một nhóm các trang web Hỏi & Đáp do cộng đồng điều hành.
Câu hỏi
Trình đọc SuperUser user7326333 muốn biết tại sao một số người dùng hệ thống có / usr / bin / false làm shell của họ:
Tại sao một số người dùng hệ thống có / usr / bin / false làm trình bao của họ? Điều đó nghĩa là gì?
Tại sao một số người dùng hệ thống có / usr / bin / false làm trình bao của họ?
Câu trả lời
Các cộng tác viên của SuperUser là duDE, Toby Speight và bbaassssiiee có câu trả lời cho chúng tôi. Đầu tiên, duDE:
Điều này giúp ngăn người dùng đăng nhập vào hệ thống. Đôi khi bạn cần một tài khoản người dùng cho một nhiệm vụ cụ thể. Tuy nhiên, không ai có thể tương tác với tài khoản này trên máy tính. Một mặt, đây là các tài khoản người dùng hệ thống. Mặt khác, đây là tài khoản có thể truy cập FTP hoặc POP3, nhưng không cần đăng nhập trực tiếp shell.
Nếu bạn xem xét kỹ hơn tệp / etc / passwd, bạn sẽ thấy lệnh / bin / false như một trình bao đăng nhập cho nhiều tài khoản hệ thống. Trên thực tế, false không phải là một trình bao, mà là một lệnh không làm gì cả và sau đó cũng kết thúc bằng một mã trạng thái báo hiệu lỗi. Kết quả là đơn giản. Người dùng đăng nhập và ngay lập tức thấy lại lời nhắc đăng nhập.
Tiếp theo là câu trả lời từ Toby Speight:
Những người dùng này tồn tại là chủ sở hữu của các tệp hoặc quy trình cụ thể và không nhằm mục đích là tài khoản đăng nhập. Nếu giá trị của trường “shell” không được liệt kê trong / etc / shell, thì các chương trình như daemon FTP không cho phép truy cập. Ngoài ra, đối với các chương trình không kiểm tra / etc / shell, chúng sử dụng thực tế là / bin / false sẽ ngay lập tức trả về và từ chối một shell tương tác.
Và câu trả lời cuối cùng của chúng tôi từ bbaassssiiee:
Một số người dùng có / usr / bin / false, những người khác có / sbin / nologin, hoặc thậm chí họ có thể có / usr / bin / passwd. Họ có thể là người dùng hệ thống cần thiết để cách ly quyền chương trình hoặc người dùng con người của chương trình sử dụng tệp mật khẩu để xác thực.
Có điều gì đó để thêm vào lời giải thích? Tắt âm thanh trong các ý kiến. Bạn muốn đọc thêm câu trả lời từ những người dùng Stack Exchange am hiểu công nghệ khác? Kiểm tra toàn bộ chủ đề thảo luận ở đây.
Tín dụng hình ảnh: OpenStack Docs (OpenStack Project)