own boot script

Hi all,
I have written an own startup script. But something is wrong, after the
system has started and all commands are processed, the final shells are
not started. The system is unable to locate
the shell. I am running 6.1 and I have checked the partitions. The RTP
is on t79 and QNX4 is
on t77. Theoretically the following image should be correct. Is anyone
able to give a hint?
Thanks
Andre Koppel

------------------- snip here ---------------------
########################################################################

Neutrino on an PC BIOS compatible system

This is for building a bootable neutrino image that will run from its

own filesystem partition.

########################################################################

[virtual=x86,bios +compress] boot = {
startup-bios -v -Nq4nto
PATH=/proc/boot:/bin:/usr/bin:/sbin:/usr/sbin
LD_LIBRARY_PATH=/proc/boot:/lib:/lib/dll:/usr/lib:/usr/photon/dll
procnto -v
}

[+script] startup-script = {

display_msg “Welcome to Neutrino on AKSO Rack-PC”

Populate the kernel resource database

seedres

Start the system logger

slogger &
waitfor /dev/slog

Start the pci server

display_msg “Starting pci-bios server …”
pci-bios &
waitfor /dev/pci

Start up some consoles

display_msg “Starting console driver …”
devc-con -n4 &
waitfor /dev/con1
reopen /dev/con1

Disk drivers (The default one and some fun others for your

pleasure…)
display_msg “Starting SCSI drivers …”
devb-aha8 blk auto=partition &
display_msg “Waiting for HD detection”
waitfor /dev/hd0t79 30
display_msg “Mounting Filesystems …”
mount -t qnx4 /dev/hd0t79 /
mount -t qnx4 /boot/fs/qnxbase.qfs /pkgs/base
mount -t qnx4 /dev/hd0t77 /fs/hd0-qnx4

starting Package Filesystem

display_msg “Starting Package Filesystem …”
fs-pkg -a/pkgs/base/safe-config/etc/system/package/packages

Some common servers

display_msg “Starting some common servers …”
pipe &
devc-ser8250 &
devc-pty &

Start a debug server for debugging programs

waitfor /dev/ser1

[+session] pdebug /dev/ser1 &

Start networking

display_msg “Starting networking drivers …”
io-net -d el900 connector=UTP,duplex=1,irq=10 -p tcpip
waitfor /dev/socket

These env variables inherited by all the programs which follow

SYSNAME=nto
TERM=qansi

Start the sysinit script

display_msg “Running /etc/system/sysinit”

[+session] /bin/ksh -c /etc/system/sysinit

Start some extra shells on other consoles

reopen /dev/con2
[+session] sh &
reopen /dev/con3
[+session] sh &

Start a high priority shell just in case…

reopen /dev/con4
[pri=25 +session] sh &

Start the main shell

reopen /dev/con1
[+session] sh
[+session] login -p

}

Redirect console messages for syslog

[type=link] /dev/console=/dev/con1

Programs require the runtime linker (ldqnx.so) to be at a fixed

location
[type=link] /usr/lib/ldqnx.so.2=/proc/boot/libc.so

add symbolic links for bin and lib (files in /usr/nto. e.g. with

devb-eide)
#[type=link] /bin=x86/bin
#[type=link] /lib=x86/lib
#[type=link] /dll=x86/dll
#[type=link] /sys=x86/sys

We need several shared libs

libc.so
libsocket.so
npm-tcpip.so
libcam.so
io-blk.so
cam-disk.so
fs-qnx4.so
cam-cdrom.so
fs-cd.so
devn-el900.so

The files above this line can be shared by mutiple processes

[data=c]
devc-con
devc-pty
devc-ser8250
devb-aha8
io-net
pci-bios
seedres
slogger
fesh
mount
pipe

Andre Koppel <akoppel@akso.de> wrote:

not started. The system is unable to locate
the shell. I am running 6.1 and I have checked the partitions. The RTP
is on t79 and QNX4 is
on t77. Theoretically the following image should be correct. Is anyone
able to give a hint?

The files above this line can be shared by mutiple processes

[data=c]
devc-con
devc-pty
devc-ser8250
devb-aha8
io-net
pci-bios
seedres
slogger
fesh
mount
pipe

I don’t see the shell in you image, perhaps that could be the cause. You should
include ksh (or replace it with esh and change your script). I also don’t see
login in your image either.

-Adam
amallory@qnx.com

“Operating System for Tech Supp” <os@qnx.com> wrote in message
news:9n2thf$brs$6@nntp.qnx.com

Andre Koppel <> akoppel@akso.de> > wrote:
not started. The system is unable to locate
the shell. I am running 6.1 and I have checked the partitions. The RTP
is on t79 and QNX4 is
on t77. Theoretically the following image should be correct. Is anyone
able to give a hint?

The files above this line can be shared by mutiple processes

[data=c]
devc-con
devc-pty
devc-ser8250
devb-aha8
io-net
pci-bios
seedres
slogger
fesh
mount
pipe

I don’t see the shell in you image, perhaps that could be the cause. You
should
include ksh (or replace it with esh and change your script). I also don’t
see
login in your image either.

The shell should be available from the HD. Do you see any error messages.
Can you add some display_msg statement to see where it stops?


-Adam
amallory@qnx.com

You are right, thats the idea behind. The shell should come from hd
because at
the moment the shells are started the full directory structure stays
available.
The last message I get is, that the shell command that should become
started could not be found.
This means the find runs just fine until the moment the finally shells
are started.
The script didn’t stop, it runs until the end, I do only get the error
message about
the missing sh-commands that I like to start. But no shell means no user
connection to the systerm.

Message by Mario Charest <mcharest@zinformatic.com> on: 04.09.01 13:33:36

The shell should be available from the HD. Do you see any error messages.
Can you add some display_msg statement to see where it stops?

Why do I need a shell within the image? The shell should come from disk
because at the
moment the shell is started, the complete filesystem is alive.

Message by Operating System for Tech Supp <os@qnx.com> on: 04.09.01 15:55:26

I don’t see the shell in you image, perhaps that could be the cause. You should
include ksh (or replace it with esh and change your script). I also don’t see
login in your image either.

Andre Koppel <akoppel@akso.de> wrote:

Why do I need a shell within the image? The shell should come from disk
because at the
moment the shell is started, the complete filesystem is alive.

Sorry I missed the fact you where mounting a disk earlier on, but it would be
a good thing to try. See if the system comes up with a shell in the image
and post the error messages you get from the boot up process.

-Adam
amallory@qnx.com