I'm trying to use UML to provide a "standard environment" for
computational jobs in a Grid computing setting.
So, I launch "linux mem=256M ubd0=apppot0.img con=null con0=fd:0,fd:1
root=/dev/ubda umid=my". The /etc/inittab within the UML
machine is set up to run a certain non-interactive script instead of
the regular multiuser boot.
Everything runs fine if I start the UML in a terminal. However, if I
redirect stdin from a non-tty stream (e.g., /dev/null), then all
output disappears as soon as control is passed to userspace, and the
CPU usage of the host machine goes up to 100%. These are the last
lines printed to stdout:
Initialized stdio console driver
Console initialized on /dev/tty0
console [tty0] enabled
Initializing software serial port version 1
console [mc-1] enabled
ubda: unknown partition table
registered taskstats version 1
Is there a way I can run a UML and have all its output redirected to a
stream, and stdin connected to /dev/null ? This is how
non-interactive jobs are run in a batch system, and it would be
difficult to work around.
I'm using the UML `linux` 18.104.22.168 from the Ubuntu 10.10 package
`user-mode-linux` version 2.6.35-1um-0ubuntu1. The UML filesystem
image contains a standard minimal Debian squeeze (except for the
Thanks for any help!