newgrp(1)

newgrp1

Change to a new group

Usage

newgrp [-l] [group]

Overview

The newgrp utility creates a new shell execution environment with modified real and effective group IDs.

The options are as follows:

-l

Simulate a full login. The environment and umask are set to what would be expected if the user actually logged in again.

If the group operand is present, a new shell is started with the specified effective and real group IDs. The user will be prompted for a password if they are not a member of the specified group.

Otherwise, the real, effective and supplementary group IDs are restored to those from the current user's password database entry.

Exit status

The newgrp utility attempts to start the shell regardless of whether group IDs were successfully changed.

If an error occurs and the shell cannot be started, newgrp exits >0. Otherwise, the exit status of newgrp is the exit status of the shell.

Examples

Create a new group, foo, with pw(8):

pw group add foo

Set the group password:

pw group mod foo -h 0

As a non-root user, switch to the group:

newgrp foo

Releases

56 releases since FreeBSD 5.0-RELEASE; the text changed 34 times.

  1. 5.0–5.5
  2. 6.0–6.3
  3. 6.4
  4. 7.0
  5. 7.1
  6. 7.2
  7. 7.3
  8. 7.4
  9. 8.0
  10. 8.1
  11. 8.2
  12. 8.3
  13. 8.4
  14. 9.0
  15. 9.1
  16. 9.2
  17. 9.3
  18. 10.0
  19. 10.1
  20. 10.2
  21. 10.3
  22. 10.4
  23. 11.0
  24. 11.1
  25. 11.2
  26. 11.3
  27. 11.4
  28. 12.0
  29. 12.1
  30. 12.2
  31. 12.3
  32. 12.4
  33. 13.0–13.2
  34. 13.3–15.0
  35. 15.1–16.0

Standards

The newgrp utility conforms to IEEE Std 1003.1-2001 (“POSIX.1”).

History

A newgrp utility appeared in Version 6 AT&T UNIX.

Bugs

For security reasons, the newgrp utility is normally installed without the setuid bit. To enable it, run the following command:

chmod u+s /usr/bin/newgrp

Group passwords are inherently insecure as there is no way to stop users obtaining the password hash from the group database. Their use is discouraged. Instead, users should simply be added to the necessary groups.

From base 16.0-CURRENT-20261027-61c70dc16a79 in FreeBSD 16.0-CURRENT (2026-10-27). Parsed by carta from the page's mdoc source.