First post, by mrholub
- Rank
- Newbie
=== DOS OS deployment as painless as possible ===
Tinkering with old dos-compatible hardware to run games, music etc. I've found very painful to prepare OS and copy new software in the machine.
Old IDE drives cannot be operated via USB adapters, foppies are slow and altough it's possible to mount Windows share in DOS it's very crude.
I've decided to prepare most of things on Virtual machine VirtualBOX and then install DOS/linux system on real hardware and copy rest of files ofer ssh.
Note about network hardware:
I'd suggest to use cheap PCI rtl8139 common adapters as these are compatible with most of OSses although performance is low (which doesn't depends much in our case)
ISA cards must be set up manually as not being auto-detected (see example below and/or Linux docs).
Once dual boot of DOS linux works on VirtualBox, only major issues on real HW may be HW issues ;-)
Network settings assumes DHCP assign of IP.
VirtualBox:
create VM with bridged network adapter
install Dos from floppies (using img files)
install Damn smal linux on second partititon (the same way as on real HW below)
Real HW:
boot dos 6.22 from floppy including fdisk and sys utility.
create fat 16 and format (leave about 300MB for Linux partitions)
sys c:
download damn_small_linux-4.4.10-syslinux.iso and dsl_bootfloppy.img
*-syslinux.iso has chance to boot on Pentium1 BIOSes supporing CDROM boot!
boot using damn_small_linux and choose install option
create Linux ext2 and swap partition on the rest of drive
install DSL on your partition and choose GRUB loader
Confirm that hda1 has Windows installed
reboot and start DSL
press ctrl+c during X11 dialog to avoid X server start as we don't need this
You can shutdown X server by ctrl+alt+Backspace it itwill start anyway
switch in root using command:
su -
abort X11 config dialog by pressing ctrl+c again
change file /etc/inittab by replacing of top line (to not start X-server in next boot)
id:5:initdefault:
by
id:3:initdefault:
ISA network cards can be added in /opt/bootlocal.sh like this
# Loading of ISA 3COM card module (you need module for your particular model/make)
modprobe 3c509
# Bringing of adapter UP and atempt to DHCP configuration
pump -i eth0
# waiting for 3 seconds to configure card
sleep 3
add starting of SSH server in /opt/bootlocal.sh (this file serves as start-up)
/etc/init.d/ssh start
#add auto-mount of DOS volume
mkdir /mnt/dos
mount /dev/hda1 /mnt/dos && echo "dos vol. mounted in /mnt/dos"
#add printing out IP address on the screen in /opt/bootlocal.sh
ifconfig eth0
=== HERE IS EXAMPLE OF MY /opt/bootlocal.sh ===
#!/bin/bash
# put other system startup command here
/sbin/syslogd
echo "starting sshd in /opt/bootlocal.sh"
/etc/init.d/ssh start
#prints out assigned IP address
/sbin/ifconfig eth0
#creating dir to mount dos volume and mounts it
mkdir /mnt/dos
mount /dev/hda1 /mnt/dos && echo "dos vol. mounted in /mnt/dos"
==============================
copy pre-configured DOS from Virtual box in Real HW (run command on VirtualBOX machine)
scp -r -p /mnt/dos/* root@real.hw.add.ress:/mnt/dos/
= Usage =
You can use Windows app Winscp to copy files over ssh to Linux.
Disable "Transfer resume" in Preferences > Settings > Endurance
Connect to the server as root and copy files in /mnt/dos (DOS fat 16 partition)
Then you can reboot and choose Windows to boot in DOS.
Any CONSTRUCTIVE critique would be appreciated.
Please let me know in case of any questions or suggestions.
Mr.Holub