Project Home
Project Home
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - diskboot in 6.6 deprecated how to upgrade?: (1 Item)
   
diskboot in 6.6 deprecated how to upgrade?  
Hello,

We are using a PC104 as a development platform(target).
Normally we created a OS image with mkifs and copy it to a bootable compact flash drive, copy the contents of the file 
system of our Virtual Neutrino machine to the flash drive and then boot from the hard drive using the diskboot command. 
(script files at bottom of message).

However in version 6.6 of QNX diskboot is deprecated. I have now successfully created a bootable flash drive with an OS 
image using the QNX 6.6 generic x86 BSP. However due to this I do not have a file system anymore (with home folder and 
other parts) in which I can store my driver binaries and other components which I require for my target.

The question is, without the diskboot function which is deprecated, how can I get a properly functioning file system 
again on my harddrive? At this point after booting I cannot create directories or do anything with it.

Regards,
Jan Jaap



In version 6.5 we used to:
1. create a bootable compact flash file. and add the loaders with dloader
2. Create a OS image using mkifs and put it on the flashdrive.
====== mkifs script file =====

#
#
# GENERATED FILE - QNX System Builder Export
#   Image Type:     ifs
#   Image Sub-type:
#
[compress=3]
[virtual=x86,bios] .bootstrap = {
    startup-bios
    [module=aps] PATH=/proc/boot:/bin:/usr/bin:/usr/sbin:/sbin LD_LIBRARY_PATH=/proc/boot:/lib:/usr/lib:/lib/dll procnto
-instr -v

}
# Start-up script
[+script] .script = {
# Programs require the runtime linker (ldqnx.so) to be at a fixed location
procmgr_symlink ../../proc/boot/libc.so.3 /usr/lib/ldqnx.so.2

# Create a 10% debugging APS partition
sched_aps Debugging 10

# Start up some consoles
[pri=10o] PATH=/proc/boot:/bin LD_LIBRARY_PATH=/proc/boot diskboot -b1 -D0 -odevc-con,-n4

# These env variables inherited by all the programs which follow
SYSNAME=nto
TERM=qansi

# redefine PATH (optional)
PATH=/proc/boot:/bin:/usr/bin:/usr/sbin:/sbin
LD_LIBRARY_PATH=/proc/boot:/lib:/usr/lib:/lib/dll

display_msg Welcome to QNX Neutrino 6.4.0 on an PC compatible BIOS system
display_msg .boot build 25/06/2010
}

[dperms=0777 uid=0 gid=0]
# Components
[type=link] /tmp = /dev/shmem

[perms=0777]

libc.so
fpemu.so.2

[data=copy]

devc-con
pci-bios
seedres
/bin/sh = ksh
slogger
sloginfo
libhiddi.so
libusbdi.so
libcam.so
io-blk.so
cam-disk.so
fs-qnx4.so
devu-ehci.so
devu-ohci.so
devu-uhci.so
devh-usb.so
devh-ps2ser.so
devb-eide
diskboot
fesh
devc-con-hid
io-usb
io-hid

==========
3. Copy the contents of the virtual machine to the flash drive:
==== Our file copy script on the QNX Neutrino VM ======

#!/bin/sh
echo Mounting..
mount /dev/hd2t79 /mnt/cf

echo Copying...
cp -rc /usr/lib /mnt/cf/usr/lib
cp -rc /usr/bin /mnt/cf/usr/bin
cp -rc /usr/sbin /mnt/cf/usr/sbin
cp -rc /lib /mnt/cf/lib
cp -rc /bin /mnt/cf/bin
cp -rc /etc /mnt/cf/etc
cp -rc /sbin /mnt/cf/sbin
cp -rc /usr/include /mnt/cf/usr/include
cp -rc /usr/photon /mnt/cf/usr/photon
cp -rc /usr/share /mnt/cf/usr/share
cp -rc /usr/libexec /mnt/cf/usr/libexec
rm /mnt/cf/etc/system/setupisdone

#Special settings for terminal QNX target.
cp ./.diskroot /mnt/cf/.diskroot
touch /mnt/cf/etc/system/config/nophoton
cp -c ./rc.local /mnt/cf/etc/rc.d/rc.local
chmod +x /mnt/cf/etc/rc.d/rc.local
cp ./inetd.conf /mnt/cf/etc/inetd.conf
mkdir /mnt/cf/root
touch /mnt/cf/root/.profile

echo Unmounting...
umount /mnt/cf
echo Done...

=========
And insert the flash drive into the PC104 and boot, where we had a properly functioning file system.

Attachment: HTML sf-attachment-mime24777 4.54 KB