🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.os.linux.announce
Article #29

Script for formatting msdos disks under Linux

#29
From: Craig Metz
Date: Sun, 03 Jan 1993 03:37
58 lines
2342 bytes
	I'm not exactly sure when, but mformat got broken somewhere along
the lines for me, and probably for many others. Here's a quick little
script that will format a floppy disk and do the necessary things to make
it a msdos filesystem, all without having to resort to using a certain
defunct operating system to do it. The general premise of operation is
extremely naive, after all, it's just a hack. It may be/probably is 
possible to get this script to naively create other filesystems.

	Before using this script, one must do the following things:

	mkdir /etc/msdos
	chmod 700 /etc/msdos
	
	For each disk type in (360 1200 720 1440 or nonstandard) that you
wish to support, pop in a formatted DOS disk of that size and run:

	dd if=(disk device) of=/etc/msdos/(disk size).b bs=512 count=1

	i.e., to grab the boot sector off a 720k disk, pop one in and run:

	dd if=/dev/fd0D720 of=/etc/msdos/720.b bs=512 count=1

	The script simply does three things:

	1. fdformats the device
	2. Zeroes out the first 10k of the disk to make sure the FAT and
	   root directory contain all zeros 
	3. Copies a DOS boot sector image to the disk's boot sector

	It works for me, your mileage may vary.

							-Craig
----- mkdosfs -----

#!/bin/sh
if [ $# = 0 ];
then
	echo "usage: $0 <device> [bootsector]"
	exit 1
fi
DEVICE=$1
fdformat $DEVICE | tee /tmp/mkdosfs.tmp
SIZE=`head -1 /tmp/mkdosfs.tmp | cut -f8 -d' '`
if [ "X$2" = "X" ];
then 
	BOOT="/etc/msdos/$SIZE.b"
#	BOOT=`echo $DEVICE | sed 's/\/dev\/fd//g | cut -c3-'
else
	BOOT=$2
fi
rm -f /tmp/mkdosfs.tmp
echo -n "Zeroing ... "
dd if=/dev/zero of=$DEVICE bs=512 count=20 &> /dev/null
echo "done"
echo -n "Writing $BOOT ... "
dd if=$BOOT of=$DEVICE bs=512 &> /dev/null
echo "done"
exit 0
Technical Details
Message-ID: <1993Jan3.033700.858@klaava.Helsinki.FI>
Path: arc1-ca.pugleaf.net!sparky!uunet!mcsun!news.funet.fi!hydra!klaava!wirzeniu

Show Full Headers
Complete Article Headers
Newsgroups: comp.os.linux.announce,comp.os.linux
Path: arc1-ca.pugleaf.net!sparky!uunet!mcsun!news.funet.fi!hydra!klaava!wirzeniu
From: Craig Metz <cmetz@thor.tjhsst.edu>
Subject: Script for formatting msdos disks under Linux
Message-ID: <1993Jan3.033700.858@klaava.Helsinki.FI>
Followup-To: comp.os.linux
Keywords: mformat replacement, MS-DOS floppy, shell script
Sender: wirzeniu@klaava.Helsinki.FI (Lars Wirzenius)
Organization: University of Helsinki
Date: Sun, 3 Jan 1993 03:37:00 GMT
Approved: linux-announce@tc.cornell.edu (Lars Wirzenius)
Lines: 58