質問: / sbin / nologinと/ bin / falseの違いは何ですか 技術的には、pamがpam_shellsでシェルをチェックするように設定されていない限り、シェルを使用していない場合、これらのいずれも実際にログインを妨げることはありません。私のシステムではそれらのサイズは異なるため、実際に何かをしているのではないかと思います。違いは何ですか?なぜ両方存在するのですか?なぜどちらを使用するのですか?-rwxr-xr-x 1 root root 21k feb 4 17:01 /bin/false -rwxr-xr-x 1 root root 4.7k mar 2 14:59 /sbin/nologin
回答: linuxでは、/sbin/nologinは util-linux プロジェクトからのものですが、/bin/falseは gnu coreutils の一部です。それらは異なる役割を果たし、nologinには、ログインしているシェルとしてそれを持っている人にメッセージを出力するオプションがあります。linuxコマンドはbsdから来ており、異なるものである長い歴史があるようです。 freebsd falseは単に1 を返しますが、nologinは ttyで実行し、ログイン試行中にメッセージをsyslogに送信します。 linuxのバージョンは少し複雑です(falseは、 --helpの出力、私は仮定します)が基本的に同じ方法で実行します。