Il est là pour exécuter des choses qui ne nécessitent aucune autorisation spéciale. Il est généralement réservé aux services vulnérables (httpd, etc.), de sorte que s'ils sont piratés, ils subissent des dégâts minimes sur le reste du système.
Comparez cela avec l’exécution de quelque chose en tant que utilisateur réel, si ce service était compromis (les serveurs Web sont parfois exploités pour exécuter du code arbitraire), il s'exécuterait en tant qu'utilisateur et aurait accès à tout ce que l'utilisateur avait. Dans la plupart des cas, c'est aussi mauvais que d’obtenir la racine.
Vous pouvez en savoir un peu plus sur l’utilisateur de personne sur le wiki Ubuntu:
Pour répondre à vos suivis:
Pourquoi je ne peux pas accéder à ce compte avec su nobody
?
sudo grep nobody /etc/shadow
vous montrera que personne n'a pas de mot de passe et que vous ne pouvez pas su
sans mot de passe de compte. La manière la plus propre est de sudo su nobody
à la place. Cela vous laissera dans un joli shell sh
désolé.
Pouvez-vous donner un exemple particulier quand est-il indiqué d'utiliser ce compte?
Lorsque les autorisations ne sont pas requises pour les opérations d'un programme. Ce qui est le plus notable quand il n’ya jamais d’activité disque.
Un exemple de
monde réel est
memcached
(un cache / base de données / objet de valeur-clé en mémoire), assis sur mon ordinateur et mon serveur s'exécutant sous le compte nobody. Pourquoi? Parce qu'il n'a tout simplement pas besoin d'autorisations et que lui donner un compte qui avait un accès en écriture aux fichiers ne serait qu'un risque inutile.