I'm from a windows background where I'm used to creating separate domain service accounts for running various services. I like to keep things need so I would name them


I'm about to create a daemon account for running hadoop on Centos linux, I'm just playing around on a home VM but would like to know if there is a commonly used naming convention for linux in industry?

e.g. hadoop.daemon or hadoop.d or dhadoop or hadoopd (the letter d seems to be used everywhere else in the unix world for service daemon stuff...)



Usually just the name of the package or program, so hadoop in this case.

Daemons are usually added as a system account using useradd -r, which gives them a userid lower than human users (on my system, system accounts start at 100, human users start at 1000).

Looking at the user names for system accounts in /etc/passwd seems to confirm the lack of any service, daemon, or d convention, e.g.


etc. are all accounts for system daemons.

  • Thanks Mikel, +1 for the -r option and info about userid numbering. I wonder what happens to the IDs when you get more than 900 system accounts? I'm still super new to linux, I'm from windows where I'm used to corporate Active Directory listings having hundreds or thousands of domain service accounts, so naming conventions are essential. I'm not even sure what the equivalent of Active Directory is. So maybe I'm missing something! PS will wait a day for any other answers before accepting – James Allen Jun 26 '15 at 16:04
  • 1
    System accounts also should have a shell of /bin/false, /sbin/nologin or similar. But of course that might happen for non-system accounts too. – Mikel Jun 27 '15 at 14:08
  • If you think you need more than 900, perhaps you should establish your own convention. – Mikel Jun 27 '15 at 14:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.