[BusyBox] Re: Some more busybox issues...

Andreas Neuhaus andy at fasta.fh-dortmund.de
Thu Mar 15 22:39:01 UTC 2001


> I expect you are using busybox.net for your anon cvs, right?
> busybox.net is an read only anon CVS mirror of the master CVS uClibc CVS
> tree, on cvs.uclinux.org.  The two respositories are synced once and hour
> (about 4 minutes ago)...

ops, you're right. thanks.

> > deleting while iterating is always horrible...
> I checked in a fix for this already...

the latest cvs tree looks good so far:

- compile sh.c with uClibc is ok
- using busybox as /linuxrc works
- ps output is ok

i still have 3 problems:

- init shows up as /linuxrc in ps and so halt/reboot/powerdown cannot find
the init process. i have no clue why argv[0]="init"; does not work. btw, all
other processes spawned by busybox init (i have several /bin/sh) also show
up as "/linuxrc". is this a "feature" of 2.4.x kernels?

- lash shell expansion is broken:
/bin # ls m*
ls: mkdirmknodmoremountmv: No such file or directory

- lash still duplicates environment settings. i'm running a linux 2.4.2
kernel, booted by syslinux 1.52. it boots in VMWare (virtual machine) and
contains only uClibc and busybox (latest cvs versions). there always seem to
be 2 entries for PATH:

init started:  BusyBox 0.50pre (2001.03.15-21:58+0000) multi-call binary --
GPL
2
Couldn't open file '/etc/profile'


BusyBox v0.50pre (2001.13.15-21:58+0000) Built-in shell (lash)
Enter 'help' for a list of built-in commands.

/ # env
HOME=/
PATH=/usr/bin:/bin:/usr/sbin:/sbin
SHELL=/bin/sh
TERM=linux
USER=root
HOME=/
initrd=base.gz
BOOT_IMAGE=kernel
PATH=/usr/bin:/bin:/usr/sbin:/sbin
/ #
/ # export PATH=/whatever
/ # env
HOME=/
SHELL=/bin/sh
TERM=linux
USER=root
HOME=/
initrd=base.gz
BOOT_IMAGE=kernel
PATH=/usr/bin:/bin:/usr/sbin:/sbin
PATH=/whatever
/ #
/ # export PATH=/oh_dear
/ # env
HOME=/
SHELL=/bin/sh
TERM=linux
USER=root
HOME=/
initrd=base.gz
BOOT_IMAGE=kernel
PATH=/whatever
PATH=/oh_dear
/ #

this problem does only occur with PATH, all other vars are ok. i guess
there's something wrong with the environment code in init.c in run().

regards,
andreas neuhaus

--
Life could be so much easier if we could just look at the source code...
  .~.
  /V\    Andreas Neuhaus, FaStA Informatik FH-Dortmund
 // \\    Sonnenstr. 96, D-44139 Dortmund, Tel 0231/9112-734
/(   )\    System-Administration FaStA FH-Dortmund
^^-^^
 LINUX - Don't fear the penguin








More information about the busybox mailing list