RISC OS Open
A fast and easily customised operating system for ARM devices
ROOL
Home | News | Downloads | Bugs | Bounties | Forum | Documents | Photos | Contact us
Account

Raspberry Pi: Moving !Boot to another drive (changes)

Showing changes from revision #2 to #3: Added | Removed | Changed

category: Help, RaspberryPi

Introduction and rationale

Introduction and rationale

By default, RISC OS for the Raspberry Pi has !Boot on the SD card, along with the boot loader partition. This is a low-cost way of providing the necessary storage, but there are drawbacks.

Having !Boot on the SD card means that the SD card will see lots of writes (thanks largely to the presence of !Scrap inside !Boot). An SD card was designed for use by devices such as digital cameras which would be writing a series of (say) 2MB files rather than the 1kB (or smaller) blocks being written by Filecore: this can result in the SD card performing substantially more write operations than expected.

Also, the SD card does not understand Filecore format so does not know when a file has been deleted: this means that the wear levelling algorithms won’t work properly, leading to a reduced operating life.

In summary, you can improve SD card longevity by moving !Boot somewhere else.

Caveats

Caveats

If As the new boot disc is will be connected byUSB, it must be the only disc drive attached at boot time. This is becauseUSB drive attached at boot time. This is because RISC OS looks for !Boot by drive number not drive name, and drive numbers could change following a reboot (the first disc to start up gets the lowest drive number). If you have more than one drive attached, they could start up in any order and RISC OS could look for !Boot on the wrong drive.

Procedure

Preparatory work

Before you move !Boot, you have to make sure that nothing is mentioning the SD card by name.

  • If you have a Desktop Settings file, delete it. The file can be recreated, if necessary, after you have moved !Boot.
  • Check “Configure > Boot > Add to Apps”, “Configure > Boot > Run” and “Configure > Boot > Look at” to see if any of the entries mention SDFS (e.g. “SDFS::0.$.Utilities.SparkFS”). These entries should be removed until after !Boot has been moved (see below).

Procedure

  1. Use !HForm to format the chosen device (e.g. SCSI::4) to Filecore format
  2. Copy !Boot to the root directory of the chosen device
  3. You will probably want to copy the other directories (Apps, Utilities etc.) as well.
  4. Press F12 and issue the following two commands:
    *configure filesystem SCSI
    *configure SCSIFSDrive 4
  5. Reboot.

Remember that you must retain !Boot.Loader on the SD card, but you can get rid of everything else once you are sure that the system is using !Boot on SCSI::4. Indeed, you can go the whole hog and replace the SD card with a (4GB maximum) FAT16-formatted card1 containing only the files copied from !Boot.Loader.

After moving !Boot

1 A FAT32 format card will boot, but RISC OS won’t be able to access the card when it’s in the SD slot. Among other things, this means that (1) the system clock will “jump backwards in time” after a Ctrl-Break restart, and (2) changes to CMOS settings won’t survive a reboot. You can avoid these problems by ensuring that the first (or only) partition on the SD card is in FAT16 format (4GB maximum).

  • If you removed any entries from “Configure > Boot > Add to Apps” (etc.) now is the time to reinstate them. Remember to use the copy of the app at its new location.
  • You must retain !Boot.Loader on the SD card, but you can get rid of everything else once you are sure that the system is using !Boot on SCSI::4. Indeed, you can go the whole hog and replace the SD card with a (4GB maximum) FAT16-formatted card1 containing only the files copied from !Boot.Loader.
  • The copy of !Boot.Loader on the USB drive is surplus to requirements, so can be deleted.

1 A FAT32 format card will boot, but RISC OS won’t be able to access the card when it’s in the SD slot. Among other things, this means that (1) the system clock will “jump backwards in time” after a shutdown and restart, and (2) changes to CMOS settings won’t survive a reboot. You can avoid these problems by ensuring that the first (or only) partition on the SD card is in FAT16 format (4GB maximum).

Revised on October 20, 2020 11:19:25 by Stuart Painting (5389)? (2.30.134.220)
Edit | Back in time (2 revisions) | Hide changes | History | Views: Print | Source | Linked from: CMOS RAM on the Raspberry Pi, Raspberry Pi questions and answers

Search the Wiki

Social

Follow us on and

ROOL Store

Buy RISC OS Open merchandise here, including SD cards for Raspberry Pi and more.

Donate! Why?

Help ROOL make things happen – please consider donating!

RISC OS IPR

RISC OS is an Open Source operating system owned by RISC OS Developments Ltd and licensed primarily under the Apache 2.0 license.

Navigation

  • Home Page
  • All Pages
  • Recently Revised
  • Authors
  • Feeds
Site design © RISC OS Open Limited 2018 except where indicated
The RISC OS Open Instiki theme is based on Insitki's default layout

Valid XHTML 1.0  |  Valid CSS

Instiki 0.19.1(MML+)
This site runs on Rails

Hosted by Arachsys