• # mauvais constats...

    Posté par (site web personnel, Mastodon) . En réponse au message useradd et shell. Évalué à 2.

    Le premier constat que tu fais...

    les shells sont maintenant dans le dossier /bin

    ...est un peu faux.
    C’est juste qu’on s’attend (par habitude d’une convention non tacite) à trouver ces binaires dans /bin/ ; mais il n’y a jamais eu d’obligation que ce soit là...

    J’ai souvent croisé des shells à divers emplacement selon les distributions. (Solaris, AIX, MacOS X, etc.)
    Les distributions GNU/Linux ont de plus fusionné /bin et /sbin avec /usr/bin

    Bref, une des raisons pour laquelle les shebang #!/bin/foo sont déconseillés au profit de #!/usr/bin/env foo (mais c’est un autre débat.)

    Concernant le second constat...

    le chemin /sbin/nologin ne donne pas d'alerte

    Je pense qu’il n’y a pas d’alerte parce-que philosophie Unix : root sait toujours ce qu’il-ou-elle fait.
    Quand tu es un autre compte, avec chsh ou chpass, la vérification est faite que que tu choisis bien un shell autorisé/listé dans /etc/shells

    À noter que sur mon Mac par exemple, /sbin/nologin est le bon chemin. Comme quoi.

    "It is seldom that liberty of any kind is lost all at once." ― David Hume