Set "mount" or "active" tooltype for SD0 to "0", then it will not be actively mounted on boot, and instead be mounted when you first access "SD0:" somehow (for example from CLI) after you have inserted a card. To "eject" a card, you need to issue two commands... "assign SD0: dismoaunt", and "assign <volume>: dismount", where volume is the voume name of whatever filesystem that is mounted in SD0:
Sadly there is no straight forward command in the OS to ask what the volume name of a specific device is (well, C:Info, but then parsing is needed), but there is an ugly workaround you can do... try saving the below as S:Dismount, for example, and do "protect S:Dismount +s"
.key DEVICE/A
.bra [
.ket ]
FailAt 10
CD [DEVICE]
If NOT WARN
Set _volume `cd`
CD ram:
Assign ${_volume} dismount
Assign [DEVICE] dismount
UnSet _volume
EndIF
Then you test it with "S:Dismount DS0:"
(the whole "if not warn ... endif" is a work-around for a bug in shell v46, in case you are using OS 3.1.4)