[BusyBox 0003964]: bug: who command not working

bugs at busybox.net bugs at busybox.net
Sat Sep 20 16:34:49 UTC 2008


A NOTE has been added to this issue. 
====================================================================== 
http://busybox.net/bugs/view.php?id=3964 
====================================================================== 
Reported By:                mebarton
Assigned To:                BusyBox
====================================================================== 
Project:                    BusyBox
Issue ID:                   3964
Category:                   Kernel Module Support
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     assigned
====================================================================== 
Date Submitted:             07-06-2008 10:33 PDT
Last Modified:              09-20-2008 09:34 PDT
====================================================================== 
Summary:                    bug: who command not working
Description: 
The who command print the following, but does not show the user info. Note
that I has 3 users login. One on ssh server (dropbear) one on telnet and
the console RS232 port.

~ # who
USER       TTY      IDLE      TIME            HOST
~ # ps
  PID USER       VSZ STAT COMMAND
    1 root      1076 S    init
    2 root         0 SW<  [kthreadd]
    3 root         0 SW<  [ksoftirqd/0]
    4 root         0 SW<  [watchdog/0]
    5 root         0 SW<  [events/0]
    6 root         0 SW<  [khelper]
   46 root         0 SW<  [kblockd/0]
   73 root         0 SW   [pdflush]
   74 root         0 SW   [pdflush]
   75 root         0 SW<  [kswapd0]
  119 root         0 SW<  [aio/0]
  139 root         0 SW<  [mtdblockd]
  164 root         0 SW<  [kondemand/0]
  174 root         0 SW<  [rpciod/0]
  208 root      1072 S    /sbin/syslogd
  211 root      1072 S    /sbin/klogd
  218 daemon     696 S    portmap
  224 root         0 SWN  [jffs2_gcd_mtd3]
  252 root       804 S    /usr/sbin/dnsmasq
  288 root      1076 S    /usr/sbin/telnetd -l /bin/sh
  291 root      1084 S    /usr/sbin/inetd
  294 root      1076 S    /usr/sbin/httpd -h /www
  302 root      1364 S    /usr/sbin/ntpd
  309 root       948 S    /usr/sbin/dropbear
  314 nobody    1280 S    proftpd: (accepting connections)
  316 root      1096 S    -/bin/sh                             # Console
  753 root      1004 S    /usr/sbin/dropbear
  754 mebarton  1092 S    -sh                                  # SSH user
  768 root      1096 S    /bin/sh                              # Telnet
user
  773 root      1076 R    ps
~ #

SVN revision 22654 BusyBox v1.10.4 (2.6.24 and 2.6.24.4)

BusyBox v1.10.4 (2008-07-05 16:16:47 EDT) built-in shell (ash)
Enter 'help' for a list of built-in commands.

$ svn info
Path: .
URL: svn://uclibc.org/trunk/buildroot
Repository Root: svn://uclibc.org
Repository UUID: 69ca8d6d-28ef-0310-b511-8ec308f3f277
Revision: 22654
Node Kind: directory
Schedule: normal
Last Changed Author: correa
Last Changed Rev: 22654
Last Changed Date: 2008-07-05 11:14:11 -0400 (Sat, 05 Jul 2008)


$ uname -a
Linux ngw.example.net 2.6.24 http://busybox.net/bugs/view.php?id=1 Sat Jul 5
18:58:22 EDT 2008 avr32 unknown

====================================================================== 

---------------------------------------------------------------------- 
 vda - 07-06-08 13:59  
---------------------------------------------------------------------- 
1. please attach busybox .config to this bug.

2. please run "strace -o who.log who" and attach resulting who.log file to
this bug too. 

---------------------------------------------------------------------- 
 mebarton - 07-08-08 18:26  
---------------------------------------------------------------------- 
added the files 

---------------------------------------------------------------------- 
 vda - 09-20-08 09:34  
---------------------------------------------------------------------- 
who.log shows the problem:

execve("/usr/bin/who", ["who"], [/* 6 vars */]) = 0
ioctl(0, TCGETS, {B115200 opost isig icanon echo ...}) = 0
ioctl(1, TCGETS, {B115200 opost isig icanon echo ...}) = 0
getuid()                                = 0
open("/var/run/utmp", O_RDWR)           = -1 ENOENT (No such file or
directory)
open("/var/run/utmp", O_RDONLY)         = -1 ENOENT (No such file or
directory)
close(-1)                               = -1 EBADF (Bad file descriptor)
write(1, "USER       TTY      IDLE      TI"..., 51) = 51
open("/var/run/utmp", O_RDWR)           = -1 ENOENT (No such file or
directory)
open("/var/run/utmp", O_RDONLY)         = -1 ENOENT (No such file or
directory)
close(-1)                               = -1 EBADF (Bad file descriptor)
_exit(0)                                = ?

"who" can't figure out who is logged on because "/var/run/utmp" doesn't
exist. Probably because "/var/run" does not exist either, and therefore
getty and such can't recreate "/var/run/utmp". 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
07-06-08 10:33  mebarton       New Issue                                    
07-06-08 10:33  mebarton       Status                   new => assigned     
07-06-08 10:33  mebarton       Assigned To               => BusyBox         
07-06-08 13:59  vda            Note Added: 0009074                          
07-07-08 08:12  mebarton       File Added: busybox.config                    
07-07-08 08:13  mebarton       File Added: who.log                          
07-08-08 18:26  mebarton       Note Added: 0009094                          
07-21-08 10:50  mebarton       Issue Monitored: mebarton                    
09-20-08 09:34  vda            Note Added: 0011744                          
======================================================================




More information about the busybox-cvs mailing list