replacing .boot files

Hello everyone,

I’m experimenting with various QNX image configurations and trying to learn
what’s possible and what’s not. Instead of always using dinit with the -f
option, I’d like to be able to just replace my target system’s .boot file.
Assuming the .boot file is on a disk which wasn’t the boot disk, is it safe
to just copy a different .ifs file into .boot of the target disk? I’ve
tried this a few times and encountered problems after doing this. Sometimes
after just using “cp myimage.ifs /net/mytarget/targetdisk/.boot” and then
trying to boot with the new disk, QNX hangs while booting after showing the
long sequence of dots “…”. If I do everything from the very beginning
with dinit -h -f etc. then everything seems to be fine, but this is a whole
lot of work, as I then have to reload lots of other system files which don’t
need to be modified which takes time and uses up write-cycles on the flash
disk which I’m using.
What is the correct way to do this?
Is there a way to swap the .boot file of the partition which was booted
from?
Thanks in advance.
Regards,
Jason

Jason Wycoff <jason@socratec.de> wrote in article <ahlkpn$r1t$1@inn.qnx.com>…

Hello everyone,

I’m experimenting with various QNX image configurations and trying to learn
what’s possible and what’s not. Instead of always using dinit with the -f
option, I’d like to be able to just replace my target system’s .boot file.
Assuming the .boot file is on a disk which wasn’t the boot disk, is it safe
to just copy a different .ifs file into .boot of the target disk? I’ve
tried this a few times and encountered problems after doing this. Sometimes
after just using “cp myimage.ifs /net/mytarget/targetdisk/.boot” and then
trying to boot with the new disk, QNX hangs while booting after showing the
long sequence of dots “…”. If I do everything from the very beginning
with dinit -h -f etc. then everything seems to be fine, but this is a whole
lot of work, as I then have to reload lots of other system files which don’t
need to be modified which takes time and uses up write-cycles on the flash
disk which I’m using.

How big is your disk? Which kind of flash disk is? Which IPL are you using?

Eduard.
ed1k at ukr dot net

I’m using an IDE compatible Flash disk with 32MB (the manufacturer calls it
a “DiskOnModule”). This can be treated just like a normal IDE hard driver
and seems to work fine, except for the mentioned weirdness with swapping of
the .boot file.
As to the IPL, I’ve only used fdisk to set the “boot” option and with dinit
I send my image file over to the target device. Other than that I can’t
tell you more about the IPL, I’m more than a little over my head when it
comes to such issues. :frowning:
Thanks,
jason


“ed1k” <ed1k@spamerstrap.com> wrote in message
news:01c2331c$00fa4de0$106fa8c0@ED1K…

Jason Wycoff <> jason@socratec.de> > wrote in article
ahlkpn$r1t$> 1@inn.qnx.com> >…
Hello everyone,

I’m experimenting with various QNX image configurations and trying to
learn
what’s possible and what’s not. Instead of always using dinit with
the -f
option, I’d like to be able to just replace my target system’s .boot
file.
Assuming the .boot file is on a disk which wasn’t the boot disk, is it
safe
to just copy a different .ifs file into .boot of the target disk? I’ve
tried this a few times and encountered problems after doing this.
Sometimes
after just using “cp myimage.ifs /net/mytarget/targetdisk/.boot” and
then
trying to boot with the new disk, QNX hangs while booting after showing
the
long sequence of dots “…”. If I do everything from the very
beginning
with dinit -h -f etc. then everything seems to be fine, but this is a
whole
lot of work, as I then have to reload lots of other system files which
don’t
need to be modified which takes time and uses up write-cycles on the
flash
disk which I’m using.

How big is your disk? Which kind of flash disk is? Which IPL are you
using?

Eduard.
ed1k at ukr dot net

Jason Wycoff <jason@socratec.de> wrote in article <ahoufo$dqf$1@inn.qnx.com>…

I’m using an IDE compatible Flash disk with 32MB (the manufacturer calls it
a “DiskOnModule”). This can be treated just like a normal IDE hard driver
and seems to work fine, except for the mentioned weirdness with swapping of
the .boot file.
As to the IPL, I’ve only used fdisk to set the “boot” option and with dinit
I send my image file over to the target device. Other than that I can’t
tell you more about the IPL,

Jason,
That’s enough :slight_smile: But I’m afraid I can’t help you. I replaced the .boot file many times on my
“normal” IDE drive and it works fine. I think the image file is damaged somehow while copying. Such
damages is quite normal for DOS/Windows and ‘copy /b’ (copy binary files) often allows to avoid the
problem, but ‘cp’ across QNET should work just fine. You said “sometimes after just using” does it
mean you run into jam ocassinally, sometimes it works, but sometimes does not? Try to calculate
checksums of images on both hosts before rebooting target. I’m out of ideas.
Cheers,

Eduard.
ed1k at ukr dot net

Did you wait some time before rebooting the target? It takes some time to
write .boot file to flash device from filesystem cache.

Pavol Kycina

“ed1k” <ed1k@spamerstrap.com> wrote in message
news:01c233ec$f8d062e0$106fa8c0@ED1K…

Jason Wycoff <> jason@socratec.de> > wrote in article
ahoufo$dqf$> 1@inn.qnx.com> >…
I’m using an IDE compatible Flash disk with 32MB (the manufacturer calls
it
a “DiskOnModule”). This can be treated just like a normal IDE hard
driver
and seems to work fine, except for the mentioned weirdness with swapping
of
the .boot file.
As to the IPL, I’ve only used fdisk to set the “boot” option and with
dinit
I send my image file over to the target device. Other than that I can’t
tell you more about the IPL,

Jason,
That’s enough > :slight_smile: > But I’m afraid I can’t help you. I replaced the .boot
file many times on my
“normal” IDE drive and it works fine. I think the image file is damaged
somehow while copying. Such
damages is quite normal for DOS/Windows and ‘copy /b’ (copy binary files)
often allows to avoid the
problem, but ‘cp’ across QNET should work just fine. You said “sometimes
after just using” does it
mean you run into jam ocassinally, sometimes it works, but sometimes does
not? Try to calculate
checksums of images on both hosts before rebooting target. I’m out of
ideas.
Cheers,

Eduard.
ed1k at ukr dot net

I have had this problem sometimes when experimenting with copying an ifs
file to .boot on a floppy. I think it worked better if I didn’t have any
other files on the disk. Perhaps the problem is fragmentation of the .boot
file??

If you are looking to get the whole thing laid out quickly with other files
before burning it, why not make a image file in a ram disk, and arrange
things how you want them in it. Then send the image file down to your DOM.
Not sure how much time this will save, but it has to be better doing one
sequential write vs writing a file, updating the directory,and bitmap…
you have a limited number of write with flash.

“Pavol Kycina” <kycina@microstep-hdo.sk> wrote in message
news:3d40e198$1@asrpx.mshdo

Did you wait some time before rebooting the target? It takes some time to
write .boot file to flash device from filesystem cache.

Pavol Kycina

“ed1k” <> ed1k@spamerstrap.com> > wrote in message
news:01c233ec$f8d062e0$106fa8c0@ED1K…
Jason Wycoff <> jason@socratec.de> > wrote in article
ahoufo$dqf$> 1@inn.qnx.com> >…
I’m using an IDE compatible Flash disk with 32MB (the manufacturer
calls
it
a “DiskOnModule”). This can be treated just like a normal IDE hard
driver
and seems to work fine, except for the mentioned weirdness with
swapping
of
the .boot file.
As to the IPL, I’ve only used fdisk to set the “boot” option and with
dinit
I send my image file over to the target device. Other than that I
can’t
tell you more about the IPL,

Jason,
That’s enough > :slight_smile: > But I’m afraid I can’t help you. I replaced the .boot
file many times on my
“normal” IDE drive and it works fine. I think the image file is damaged
somehow while copying. Such
damages is quite normal for DOS/Windows and ‘copy /b’ (copy binary
files)
often allows to avoid the
problem, but ‘cp’ across QNET should work just fine. You said
“sometimes
after just using” does it
mean you run into jam ocassinally, sometimes it works, but sometimes
does
not? Try to calculate
checksums of images on both hosts before rebooting target. I’m out of
ideas.
Cheers,

Eduard.
ed1k at ukr dot net