← Back to team overview

debcrafters-packages team mailing list archive

[Bug 2115838] Re: login command just Hangup immediately

 

This looks like this upstream bug: https://github.com/util-linux/util-linux/issues/859
The reason it doesn't affect releases before plucky is likely that there was a switch from shadow to util-linux.

The limitation appears intentional.

To quote the manpage:
If one uses the command login, then the surrounding shell gets killed by vhangup(2) because it’s no longer the true owner of the tty. This can be avoided by using exec login in a top-level shell or xterm.


How is the environment which you are trying to run login from? sudo, ssh, tty, other?
Wrapping the command (sudo -i login) seems to work around that limitation.

** Bug watch added: github.com/util-linux/util-linux/issues #859
   https://github.com/util-linux/util-linux/issues/859

-- 
You received this bug notification because you are a member of
Debcrafters packages, which is subscribed to util-linux in Ubuntu.
https://bugs.launchpad.net/bugs/2115838

Title:
  login command just Hangup immediately

Status in util-linux package in Ubuntu:
  New
Status in util-linux source package in Plucky:
  New
Status in util-linux source package in Questing:
  New

Bug description:
  login command just Hangup immediately.
  I see this issue with Plucky and Questing

  root@plucky:/home/ubuntu# login
  Hangup
  ubuntu@plucky:~$

  root@plucky:~# strace login
  execve("/usr/bin/login", ["login"], 0x7ffd0e2dc9c0 /* 20 vars */) = 0
  brk(NULL)                               = 0x56e0011a9000
  mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7d04a5962000
  access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
  openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
  fstat(3, {st_mode=S_IFREG|0644, st_size=36429, ...}) = 0
  mmap(NULL, 36429, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7d04a5959000
  close(3)                                = 0
  openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libpam.so.0", O_RDONLY|O_CLOEXEC) = 3
  read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
  fstat(3, {st_mode=S_IFREG|0644, st_size=72064, ...}) = 0
  mmap(NULL, 69648, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7d04a5947000
  mmap(0x7d04a594a000, 40960, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7d04a594a000
  mmap(0x7d04a5954000, 12288, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xd000) = 0x7d04a5954000
  mmap(0x7d04a5957000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x10000) = 0x7d04a5957000
  close(3)                                = 0
  openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libpam_misc.so.0", O_RDONLY|O_CLOEXEC) = 3
  read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
  fstat(3, {st_mode=S_IFREG|0644, st_size=22856, ...}) = 0
  mmap(NULL, 24656, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7d04a5940000
  mmap(0x7d04a5942000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7d04a5942000
  mmap(0x7d04a5944000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7d04a5944000
  mmap(0x7d04a5945000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7d04a5945000
  close(3)                                = 0
  openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libaudit.so.1", O_RDONLY|O_CLOEXEC) = 3
  read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
  fstat(3, {st_mode=S_IFREG|0644, st_size=153760, ...}) = 0
  mmap(NULL, 200880, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7d04a590e000
  mmap(0x7d04a5911000, 49152, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7d04a5911000
  mmap(0x7d04a591d000, 86016, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf000) = 0x7d04a591d000
  mmap(0x7d04a5932000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x24000) = 0x7d04a5932000
  mmap(0x7d04a5934000, 45232, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7d04a5934000
  close(3)                                = 0
  openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
  read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\245\2\0\0\0\0\0"..., 832) = 832
  pread64(3, "\6\0\0\0\4\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 840, 64) = 840
  fstat(3, {st_mode=S_IFREG|0755, st_size=2182752, ...}) = 0
  pread64(3, "\6\0\0\0\4\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 840, 64) = 840
  mmap(NULL, 2227832, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7d04a5600000
  mmap(0x7d04a5628000, 1662976, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x28000) = 0x7d04a5628000
  mmap(0x7d04a57be000, 323584, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1be000) = 0x7d04a57be000
  mmap(0x7d04a580d000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x20c000) = 0x7d04a580d000
  mmap(0x7d04a5813000, 52856, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7d04a5813000
  close(3)                                = 0
  openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libcap-ng.so.0", O_RDONLY|O_CLOEXEC) = 3
  read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
  fstat(3, {st_mode=S_IFREG|0644, st_size=31024, ...}) = 0
  mmap(NULL, 32816, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7d04a5905000
  mmap(0x7d04a5907000, 16384, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7d04a5907000
  mmap(0x7d04a590b000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7d04a590b000
  mmap(0x7d04a590c000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7d04a590c000
  close(3)                                = 0
  mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7d04a5903000
  mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7d04a5901000
  arch_prctl(ARCH_SET_FS, 0x7d04a59045c0) = 0
  set_tid_address(0x7d04a5904890)         = 256045
  set_robust_list(0x7d04a59048a0, 24)     = 0
  rseq(0x7d04a59044c0, 0x20, 0, 0x53053053) = 0
  mprotect(0x7d04a580d000, 16384, PROT_READ) = 0
  mprotect(0x7d04a590c000, 4096, PROT_READ) = 0
  mprotect(0x7d04a5932000, 4096, PROT_READ) = 0
  mprotect(0x7d04a5957000, 4096, PROT_READ) = 0
  mprotect(0x7d04a5945000, 4096, PROT_READ) = 0
  mprotect(0x56dff9b1b000, 4096, PROT_READ) = 0
  mprotect(0x7d04a59a4000, 8192, PROT_READ) = 0
  prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
  munmap(0x7d04a5959000, 36429)           = 0
  openat(AT_FDCWD, "/proc/sys/kernel/cap_last_cap", O_RDONLY) = 3
  fstatfs(3, {f_type=PROC_SUPER_MAGIC, f_bsize=4096, f_blocks=0, f_bfree=0, f_bavail=0, f_files=0, f_ffree=0, f_fsid={val=[0x18, 0]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_NOSUID|ST_NODEV|ST_NOEXEC|ST_RELATIME}) = 0
  read(3, "40\n", 7)                      = 3
  close(3)                                = 0
  prctl(PR_CAPBSET_READ, CAP_CHOWN)       = 1
  prctl(PR_GET_SECUREBITS)                = 0
  prctl(PR_GET_NO_NEW_PRIVS, 0, 0, 0, 0)  = 0
  prctl(PR_CAP_AMBIENT, PR_CAP_AMBIENT_IS_SET, CAP_CHOWN, 0, 0) = 0
  getpid()                                = 256045
  getrandom("\x65\x99\x4e\x8d\x18\x2d\xba\x42", 8, GRND_NONBLOCK) = 8
  brk(NULL)                               = 0x56e0011a9000
  brk(0x56e0011ca000)                     = 0x56e0011ca000
  openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
  fstat(3, {st_mode=S_IFREG|0644, st_size=3063024, ...}) = 0
  mmap(NULL, 3063024, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7d04a5200000
  close(3)                                = 0
  openat(AT_FDCWD, "/etc/login.defs", O_RDONLY) = 3
  fstat(3, {st_mode=S_IFREG|0644, st_size=5939, ...}) = 0
  read(3, "#\n# /etc/login.defs - Configurat"..., 4096) = 4096
  read(3, "# any combination of letters \"fr"..., 4096) = 1843
  read(3, "", 4096)                       = 0
  close(3)                                = 0
  openat(AT_FDCWD, "/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 3
  fstat(3, {st_mode=S_IFREG|0644, st_size=2996, ...}) = 0
  read(3, "# Locale name alias data base.\n#"..., 4096) = 2996
  read(3, "", 4096)                       = 0
  close(3)                                = 0
  openat(AT_FDCWD, "/usr/share/locale/en_US.UTF-8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
  openat(AT_FDCWD, "/usr/share/locale/en_US.utf8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
  openat(AT_FDCWD, "/usr/share/locale/en_US/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
  openat(AT_FDCWD, "/usr/share/locale/en.UTF-8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
  openat(AT_FDCWD, "/usr/share/locale/en.utf8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
  openat(AT_FDCWD, "/usr/share/locale/en/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
  openat(AT_FDCWD, "/usr/share/locale-langpack/en_US.UTF-8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
  openat(AT_FDCWD, "/usr/share/locale-langpack/en_US.utf8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
  openat(AT_FDCWD, "/usr/share/locale-langpack/en_US/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
  openat(AT_FDCWD, "/usr/share/locale-langpack/en.UTF-8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
  openat(AT_FDCWD, "/usr/share/locale-langpack/en.utf8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
  openat(AT_FDCWD, "/usr/share/locale-langpack/en/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
  rt_sigaction(SIGALRM, {sa_handler=0x56dff9b16ff0, sa_mask=[ALRM], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7d04a5645810}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
  rt_sigaction(SIGALRM, NULL, {sa_handler=0x56dff9b16ff0, sa_mask=[ALRM], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7d04a5645810}, 8) = 0
  rt_sigaction(SIGALRM, {sa_handler=0x56dff9b16ff0, sa_mask=[ALRM], sa_flags=SA_RESTORER, sa_restorer=0x7d04a5645810}, NULL, 8) = 0
  alarm(60)                               = 0
  rt_sigaction(SIGQUIT, {sa_handler=SIG_IGN, sa_mask=[QUIT], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7d04a5645810}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
  rt_sigaction(SIGINT, {sa_handler=SIG_IGN, sa_mask=[INT], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7d04a5645810}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
  setpriority(PRIO_PROCESS, 0, 0)         = 0
  getuid()                                = 0
  geteuid()                               = 0
  getgid()                                = 0
  getegid()                               = 0
  prctl(PR_GET_DUMPABLE)                  = 1 (SUID_DUMP_USER)
  close_range(3, 4294967295, 0)           = 0
  setpgid(0, 0)                           = 0
  ioctl(0, TCGETS, {c_iflag=ICRNL|IXON, c_oflag=NL0|CR0|TAB0|BS0|VT0|FF0|OPOST|ONLCR, c_cflag=B9600|CS8|CREAD, c_lflag=ISIG|ICANON|ECHO|ECHOE|ECHOK|IEXTEN|ECHOCTL|ECHOKE, ...}) = 0
  ioctl(0, TCGETS, {c_iflag=ICRNL|IXON, c_oflag=NL0|CR0|TAB0|BS0|VT0|FF0|OPOST|ONLCR, c_cflag=B9600|CS8|CREAD, c_lflag=ISIG|ICANON|ECHO|ECHOE|ECHOK|IEXTEN|ECHOCTL|ECHOKE, ...}) = 0
  ioctl(0, TCGETS, {c_iflag=ICRNL|IXON, c_oflag=NL0|CR0|TAB0|BS0|VT0|FF0|OPOST|ONLCR, c_cflag=B9600|CS8|CREAD, c_lflag=ISIG|ICANON|ECHO|ECHOE|ECHOK|IEXTEN|ECHOCTL|ECHOKE, ...}) = 0
  fstat(0, {st_mode=S_IFCHR|0600, st_rdev=makedev(0x88, 0x1), ...}) = 0
  readlink("/proc/self/fd/0", "/dev/pts/1", 4095) = 10
  newfstatat(AT_FDCWD, "/dev/pts/1", {st_mode=S_IFCHR|0600, st_rdev=makedev(0x88, 0x1), ...}, 0) = 0
  ioctl(0, TCGETS, {c_iflag=ICRNL|IXON, c_oflag=NL0|CR0|TAB0|BS0|VT0|FF0|OPOST|ONLCR, c_cflag=B9600|CS8|CREAD, c_lflag=ISIG|ICANON|ECHO|ECHOE|ECHOK|IEXTEN|ECHOCTL|ECHOKE, ...}) = 0
  newfstatat(AT_FDCWD, "/dev/pts/1", {st_mode=S_IFCHR|0600, st_rdev=makedev(0x88, 0x1), ...}, AT_SYMLINK_NOFOLLOW) = 0
  access("/dev/pts/1", R_OK|W_OK)         = 0
  ioctl(0, TIOCGWINSZ, {ws_row=116, ws_col=345, ws_xpixel=640, ws_ypixel=480}) = 0
  ioctl(0, TCGETS, {c_iflag=ICRNL|IXON, c_oflag=NL0|CR0|TAB0|BS0|VT0|FF0|OPOST|ONLCR, c_cflag=B9600|CS8|CREAD, c_lflag=ISIG|ICANON|ECHO|ECHOE|ECHOK|IEXTEN|ECHOCTL|ECHOKE, ...}) = 0
  fchown(0, 0, 0)                         = 0
  fchmod(0, 0600)                         = 0
  ioctl(0, TCGETS, {c_iflag=ICRNL|IXON, c_oflag=NL0|CR0|TAB0|BS0|VT0|FF0|OPOST|ONLCR, c_cflag=B9600|CS8|CREAD, c_lflag=ISIG|ICANON|ECHO|ECHOE|ECHOK|IEXTEN|ECHOCTL|ECHOKE, ...}) = 0
  ioctl(0, TCSETS, {c_iflag=ICRNL|IXON, c_oflag=NL0|CR0|TAB0|BS0|VT0|FF0|OPOST|ONLCR, c_cflag=B9600|CS8|CREAD, c_lflag=ISIG|ICANON|ECHO|ECHOE|ECHOK|IEXTEN|ECHOCTL|ECHOKE, ...}) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
  --- SIGTTOU {si_signo=SIGTTOU, si_code=SI_KERNEL} ---
  --- stopped by SIGTTOU ---

  root@oracular:~# ldd /usr/bin/login
          linux-vdso.so.1 (0x0000753d92a12000)
          libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x0000753d92913000)
          libpam.so.0 => /lib/x86_64-linux-gnu/libpam.so.0 (0x0000753d92902000)
          libpam_misc.so.0 => /lib/x86_64-linux-gnu/libpam_misc.so.0 (0x0000753d928fb000)
          libaudit.so.1 => /lib/x86_64-linux-gnu/libaudit.so.1 (0x0000753d928c9000)
          libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x0000753d928b3000)
          libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x0000753d92600000)
          libcap.so.2 => /lib/x86_64-linux-gnu/libcap.so.2 (0x0000753d928a4000)
          /lib64/ld-linux-x86-64.so.2 (0x0000753d92a14000)
          libcap-ng.so.0 => /lib/x86_64-linux-gnu/libcap-ng.so.0 (0x0000753d9289c000)
          libmd.so.0 => /lib/x86_64-linux-gnu/libmd.so.0 (0x0000753d9288d000)

  root@plucky:~# ldd /usr/bin/login
          linux-vdso.so.1 (0x00007cc5a1353000)
          libpam.so.0 => /lib/x86_64-linux-gnu/libpam.so.0 (0x00007cc5a1325000)
          libpam_misc.so.0 => /lib/x86_64-linux-gnu/libpam_misc.so.0 (0x00007cc5a131e000)
          libaudit.so.1 => /lib/x86_64-linux-gnu/libaudit.so.1 (0x00007cc5a12ec000)
          libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007cc5a1000000)
          libcap-ng.so.0 => /lib/x86_64-linux-gnu/libcap-ng.so.0 (0x00007cc5a12e3000)
          /lib64/ld-linux-x86-64.so.2 (0x00007cc5a1355000)

  
  root@oracular:/home/ubuntu/util-linux/util-linux-2.40.2# apt show login
  Package: login
  Version: 1:4.15.3-3ubuntu2
  Priority: required
  Protected: yes
  Section: admin
  Source: shadow
  Origin: Ubuntu
  Maintainer: Ubuntu Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
  Original-Maintainer: Shadow package maintainers <pkg-shadow-devel@xxxxxxxxxxxxxxxxxxxxxxx>
  Bugs: https://bugs.launchpad.net/ubuntu/+filebug
  Installed-Size: 672 kB
  Depends: libpam-modules, libpam-runtime, libaudit1 (>= 1:2.2.1), libbsd0 (>= 0.11.0), libc6 (>= 2.38), libcrypt1 (>= 1:4.1.0), libpam0g (>= 0.99.7.1), libsystemd0
  Conflicts: python-4suite (<< 0.99cvs20060405-1)
  Homepage: https://github.com/shadow-maint/shadow
  Task: cloud-minimal, minimal, server-minimal
  Download-Size: 133 kB
  APT-Manual-Installed: no
  APT-Sources: http://kr.archive.ubuntu.com/ubuntu oracular/main amd64 Packages
  Description: system login tools
   This package provides support for console-based logins and for
   changing effective user or group IDs, including:
    * login, the program that invokes a user shell on a virtual terminal;
    * nologin, a dummy shell for disabled user accounts;

  
  ubuntu@plucky:~/util-linux/util-linux-2.40.2$ apt show login
  Package: login
  Version: 1:4.16.0-2+really2.40.2-14ubuntu1
  Priority: required
  Protected: yes
  Section: admin
  Source: util-linux (2.40.2-14ubuntu1)
  Origin: Ubuntu
  Maintainer: Ubuntu Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
  Original-Maintainer: util-linux packagers <util-linux@xxxxxxxxxxxxxxxxxxx>
  Bugs: https://bugs.launchpad.net/ubuntu/+filebug
  Installed-Size: 202 kB
  Pre-Depends: login.defs (>= 1:4.16.0-1~)
  Depends: libpam-modules, libpam-runtime, libaudit1 (>= 1:2.2.1), libc6 (>= 2.38), libcrypt1 (>= 1:4.1.0), libpam0g (>= 0.99.7.1)
  Homepage: https://github.com/util-linux/util-linux
  Task: minimal
  Download-Size: 77.8 kB
  APT-Manual-Installed: no
  APT-Sources: http://kr.archive.ubuntu.com/ubuntu plucky/main amd64 Packages
  Description: system login tools
   This package provides support for console-based logins and for
   changing effective user or group IDs, including:
    * login, the program that invokes a user shell on a virtual terminal,
    * nologin, a dummy shell for disabled user accounts,
    * newgrp, a program to change the effective group IDs.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/util-linux/+bug/2115838/+subscriptions



References