possible head crash :-(

John B. Milton jbm at uncle.UUCP
Thu Jan 11 22:26:25 AEST 1990


In article <1108 at ursa-major.SPDCC.COM> gst at ursa-major.spdcc.COM (Gary Trujillo) writes:
[bad news]
>  Test: Hard disk test (Drive 0)
>  Subtest: Read all the disk.
>  Pass: 4
>  Error: WINCHESTER: Error on check - Read Response=40, Start Block=5080
Partition 0: start Track=0, size (in Blocks)=72
Partition 1: start Track=9, size (in Blocks)=5000
Partition 2: start Track=634, size (in Blocks)=60952

These are the sizes of the partitions on my disk, which seem to match yours
The diagnostics say "Start Block=5080", 5080-(72+5000)=8, as in the 8th
logical (1k) block into the file system partition

[...]
>system looks OK, but when I tried doing an fsck, I got:
>
>  CAN NOT READ BLOCK 2 (or some such)
rut roh

>I suspect what happened is that there was a head crash with the heads
>positioned over track zero.
Well, some kind of error

[...]
>In article <1108 at ursa-major.SPDCC.COM> gst at ursa-major.spdcc.COM
>	(Gary Trujillo [me]) writes:
>> Well, it may have finally happened...
>> [details of possible head crash deleted]
>
>Here's an update on the situation I described recently.
>
[...]
>1. What's down there at block 2, which fsck reports it gets a read
>   error on?  I would have assumed that the bootstrap loader (or
>   whatever it's called) lives there.
Nope, first few blocks of the file system. The UNIXpc is unlike old UNIX
systems (which did have a boot loader at the beginning of the file system), in
that it has only one boot loader at the begining of partition 0 (5000 blocks
away)

[ldrcpy]
Nothing will change, as its 5000 blocks away
>5. Here's a puzzler for you all-- given the conditions I've described,
>   how can I get files off the machine?
Hmm, well you could use my board and another drive...
"Oh shut up Milton, I don't have it"

I seem to remember someone (over Icus way maybe) that found out that the
ROM boot loader checks EVERY partition looking for a file system with UNIX
on it. Hmm. How about we boot off the swap partition?:

Do this ahead of time: (unpack and run as root)

---
#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of shell archive."
# Contents:  mkrecov
# Wrapped by jbm at uncle on Thu Jan 11 06:16:27 1990
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'mkrecov' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'mkrecov'\"
else
echo shar: Extracting \"'mkrecov'\" \(870 characters\)
sed "s/^X//" >'mkrecov' <<'END_OF_FILE'
X# this must be run as super user (mknod)
XPATH=/bin:/usr/bin:/etc
Xecho "Put a copy of the \"Floppy File System Disk\" in the drive and press Return"
Xread line
Xmount /dev/fp021 /mnt
Xfor i in cat cp cpio echo ln cp mv ls mkdir pwd rm wnlessmsg; do
X	rm /mnt/bin/$i
Xdone
Xfor i in convert dismount ldrcpy nospace.txt profile profile.fd profile.hd rm3.0stuff update.txt; do
X	rm /mnt/etc/$i
Xdone
Xrm -rf /mnt/etc/convert
Xcp /usr/bin/pcat /mnt/bin
Xcp /unix .; pack ./unix; mv ./unix.z /mnt
Xmknod /mnt/dev/rfp001 c 4 1	# add a raw device for the swap partition
Xln /mnt/dev/swap /mnt/dev/fp001	# this was already here
Xmkdir /mnt/new
Xcat >/mnt/etc/profile <<EOF
Xset -x
XPATH=:/mnt/bin:/bin:/etc; export PATH
Xmkfs /dev/rfp001
Xmount /dev/fp001 /new
Xpcat /unix.z > /new/unix
Xsync; sync; sync
Xumount /dev/fp001 > /dev/null 2>&1
Xreboot "Please open the floppy door."
XEOF
Xumount /dev/fp021
END_OF_FILE
if test 870 -ne `wc -c <'mkrecov'`; then
    echo shar: \"'mkrecov'\" unpacked with wrong size!
fi
# end of 'mkrecov'
fi
echo shar: End of shell archive.
exit 0
---

This will create a disk which when used as 3 of 12 (Floppy File System)
when booting will set up the swap partition with a copy of unix. When the
system is rebooted (part of the above program), the boot loader will find
a file system on the swap partition, and since it's the first one with a
file /unix, will load and run it. Since the root file system mount is hard-
coded, partition 2 will still be the root file system and partition 1 will
still be the swap partition. Lenny found out the "first file system" boot
(I think by accident) quite a while ago. I tested all this out on a 3.51
system. If you have 3.5 or 3.0, you will have to tune the shell script

Sorry I'm so late in responding to this, Gary.

[...]
>6. Can anyone recommend a good replacement unit, if it comes to that?
>   I have the WD2010, so I can run a drive with (what is it, John
>   Milton? - 1400 cylinders?).  I don't have the P5.1 upgrade, but
yes (/usr/include/sys/gdisk.h)

>   I'm sure I could get it easily enough.
[...]

Hard disk speed test results next...

John
-- 
John Bly Milton IV, jbm at uncle.UUCP, n8emr!uncle!jbm at osu-cis.cis.ohio-state.edu
(614) h:252-8544, w:469-1990; N8KSN, AMPR: 44.70.0.52; Don't FLAME, inform!



More information about the Comp.sys.att mailing list