Thanks to Joe Ledesma for a quick reply. His solution is nice because it
works whether you have a cluster or not. I will post his solution at the end
of this message
I was able to use the cluster emergency disk (standalone disk used to create
rest of cluster) and advscan -r dsk4 to recreate the fdmns structure. Then
mounted cluster_root#root to /mnt and was able to repair etc/fstab. One of
my local engineer's taught me about "wwidmgr -show reach" command from the
console to help locate the emergency disk.
I tried the same technique from the install cd and advscan was unable to
find the cluster_root domain. It was able to find the node specific domains
and I could mount them, but it always said, "no domains found" on the
cluster_root disk. Maybe someone at Compaq could comment on this phenomenon.
Original Post:
I fat fingered my /etc/fstab so that the root disk entry doesn't match
/etc/fdmns. The entry looks like
custer_root#root / advfs rw 0 1
and should be cluster_root#root...
I've booted the install cd and have a shell terminal session up. I haven't
been able to mount the disk to fix the problem. The disk is /dev/disk/dsk4b.
I checked it on the other cluster node running standalone.
I didn't find anything in the archives under fstab corrupt or cluster_root.
____________________________________________________________________________
_______________
Solution from Joe:
Missing root file system in fstab
Symptom:
Can't boot past single-user mode. In the boot sequence there are messages
about not being able to write certain files. / and /usr are mounted but for
the root file system df displays for example:
root_device 513608 85160 421520 17% /
instead of the expected:
root_domain#root 513608 85160 421520 17% /
Problem:
Root file system is mounted read-only. (/usr, however, is mounted
read-write.)
Cause:
The entry from the fstab for the root file system is missing.
Solution:
Copy the fstab to someplace where it can be written (in /usr) and edit it.
Overlay the current /etc by mounting a memory file system on it. Copy the
corrected fstab to the new in memory /etc. Also recreate in /etc the fdmns
directory and the subdirectory for the root file system. Mount the root file
system. Remove the memory file system, uncovering the original /etc on disk.
Overwrite the fstab in the original /etc with the corrected fstab from /usr.
Reboot.
Steps:
# cp /etc/fstab /usr/tmp
Edit the fstab in /usr/tmp, adding a first line such as:
root_domain#root / advfs rw,userquota,groupquota 0 1
# cd /usr/tmp
# mv fstab fstab.old
# echo 'root_domain#root / advfs rw,userquota,groupquota 0 1' \
| cat - fstab.old >fstab
Check which device the root_domain is on:
# ls /etc/fdmns/root_domain
re0a
or:
rz16a
Remember the device.
Create and mount a memory file system on /etc:
# /sbin/mfs -s1024 /etc
This creates a 512 K memory file system. (The size is specified in half K
segments.)
# cp /usr/tmp/fstab /etc
# mkdir -p /etc/fdmns/root_domain
# cd /etc/fdmns/root_domain
# ln -s /dev/re0a Use the device file remembered above.
Now you have to mount the root file system; however, you get a device busy
error. Make sure you are in the /etc file system.
# pwd
/etc
# umount /usr
# mount -u /
The root file system is now mounted read-write.
Next you need to unmount the temporary /etc; however you get a device busy
error because of the lock held by AdvFs, so remove the memory file system by
terminating its process.
# kill <PID of mfs process>
# mount /usr
# cp /usr/tmp/fstab /etc
# shutdown -r now
and a ufs solution is:
To change a file system's mount status, use the mount command with the -u
option. This is useful if you try to reboot and the /etc/fstab file is
unavailable.
If you try to reboot and the /etc/fstab file is corrupted, use a command
similar to the following:
# mount -u /dev/disk/dsk0a /
The /dev/disk/dsk0a device is the root file system.
_________________________________________________________________
Received on Wed Jun 20 2001 - 02:24:42 NZST