10

In some of my servers there is this strange line at the end of /etc/passwd/ consisting of just:

+::::::

Does anyone knows what it means?

I searched the net but only found the same, unanswered question by one Jim from 2012:

Anyone know what this means in Linux SLES 11 and can it be removed

(see https://www.cyberciti.biz/faq/understanding-etcpasswd-file-format/).

Servers in question run SLES 12, the other Ubuntu bionic.

6
  • 4
    Did you already see this link: unix.stackexchange.com/questions/106215/…? Aug 31, 2020 at 13:34
  • 1
    Lukas, thx for the pointer! I think this answers it. It really seems to be NIS specific, because since I removed the line I cannot login (via NIS). Lol.
    – dr0i
    Aug 31, 2020 at 13:43
  • 2
    Dear God, people are still using NIS? That's scary. Aug 31, 2020 at 14:12
  • It used to be useful for earlier LDAP databases too. Sep 1, 2020 at 2:03
  • 3
    @MichaelHampton I hear you, but there's still nothing that does what NIS did without the associated problems, and nothing else besides. So it gets used because there's still no simple replacement for it.
    – MadHatter
    Sep 1, 2020 at 6:14

2 Answers 2

11

I'm reposting the below from the following Unix stackexchange answer:

https://unix.stackexchange.com/questions/106215/whta-does-bin-bash-in-etc-passwd-mean

The answer lies in the nsswitch.conf(5) man page:

Interaction with +/- syntax (compat mode)

Linux libc5 without NYS does not have the name service switch but does allow the user some policy control. In /etc/passwd you could have entries of the form +user or +@netgroup (include the specified user from the NIS passwd map), -user or -@netgroup (exclude the specified user), and + (include every user, except the excluded ones, from the NIS passwd map).

You can override certain passwd fields for a particular user from the NIS passwd map by using the extended form of +user:::::: in /etc/passwd. Non-empty fields override information in the NIS passwd map.

Since most people only put a + at the end of /etc/passwd to include everything from NIS, the switch provides a faster alternative for this case (passwd: files nis) which doesn’t require the single + entry in /etc/passwd, /etc/group, and /etc/shadow. If this is not sufficient, the NSS compat service provides full +/- semantics. By default, the source is nis, but this may be overridden by specifying nisplus as source for the pseudo-databases passwd_compat, group_compat and shadow_compat. These pseudo-databases are only available in GNU C Library.

12

As Lukas Räpple pointed out in the comments, that line is a legacy entry for using NIS with ancient libc5.

If you want to keep using NIS but remove that line, change the passwd: compat line in /etc/nsswitch.conf to passwd: files nis first. You should also check the shadow: and group: lines (and /etc/group and /etc/shadow files) for similar legacy settings.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .