Trang chủ » làm thế nào để » Tại sao một số người dùng hệ thống có / usr / bin / false là Shell của họ?

    Tại sao một số người dùng hệ thống có / usr / bin / false là Shell của họ?

    Khi bạn bắt đầu đào sâu vào một hệ thống Linux, bạn có thể tìm thấy một số điều khó hiểu hoặc bất ngờ, chẳng hạn như / usr / bin / false. Tại sao nó ở đó và mục đích của nó là gì? Bài hỏi và trả lời của SuperUser hôm nay có câu trả lời cho câu hỏi của người đọc tò mò.

    Phiên hỏi và trả lời hôm nay đến với chúng tôi nhờ sự hỗ trợ của SuperUser - một phân ngành của Stack Exchange, một nhóm các trang web Hỏi & Đáp do cộng đồng điều khiển.

    Câu hỏi

    Trình đọc SuperUser user7326333 muốn biết lý do tại sao một số người dùng hệ thống có / usr / bin / false làm vỏ của họ:

    Tại sao một số người dùng hệ thống có / usr / bin / false làm vỏ 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 vỏ của họ?

    Câu trả lời

    Những người đóng góp cho SuperUser 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. Đây là, một mặt, 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 đăng nhập shell trực tiếp.

    Nếu bạn xem xét kỹ hơn về tệp / etc / passwd, bạn sẽ tìm thấy lệnh / bin / false làm vỏ đăng nhập cho nhiều tài khoản hệ thống. Trên thực tế, false không phải là shell, mà là một lệnh không làm gì và sau đó cũng kết thúc bằng mã trạng thái báo hiệu lỗi. Kết quả rất đơ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 để trở thành chủ sở hữu của các tệp hoặc quy trình cụ thể và không có ý định trở thành tài khoản đăng nhập. Nếu giá trị của trường shell shell không được liệt kê trong / etc / shell, thì các chương trình như FTP daemon 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 trình bao 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ô lập quyền của chương trình hoặc người dùng chương trình sử dụng tệp mật khẩu để xác thực.


    Có một cái 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 chủ đề thảo luận đầy đủ ở đây.

    Tín dụng hình ảnh: Tài liệu OpenStack (Dự án OpenStack)