/bin/find: stat() error <File> : No such file or directory

I propose the following:
Make a backup

ufsdump 0f - /var | gzip -c > /vardump.gz

Print the restore man page

man ufsrestore

boot to single user

reboot -- -s

Wait a minute to ensure mirror is in sync; then repair with

fsck -y /var
reboot

if something is missing

gunzip -c /vardump.gz | ufsrestore -i -f -

-i is an interactive restore.

Can i directly run fsck on the /var mirrored partition as below?

fsck -y /var

instead of

fsck -y /dev/md/dsk/d140 

Please assist as this is production environment.

Btw when i do metastat i dont see any warning messages.

>metastat d140
d140: Mirror
    Submirror 0: d141
      State: Okay         
    Submirror 1: d142
      State: Needs maintenance 
    Pass: 1
    Read option: roundrobin (default)
    Write option: parallel (default)
    Size: 16780224 blocks (8.0 GB)

d141: Submirror of d140
    State: Okay         
    Size: 16780224 blocks (8.0 GB)
    Stripe 0:
        Device     Start Block  Dbase        State Reloc Hot Spare
        c0t0d0s5          0     No            Okay   Yes 


d142: Submirror of d140
    State: Needs maintenance 
    Invoke: metareplace d140 c0t1d0s5 <new device>
    Size: 16780224 blocks (8.0 GB)
    Stripe 0:
        Device     Start Block  Dbase        State Reloc Hot Spare
        c0t1d0s5          0     No     Maintenance   Yes 


Device Relocation Information:
Device   Reloc  Device ID
c0t0d0   Yes    id1,sd@SSEAGATE_ST973401LSUN72G_41107NMY____________3LB07NMY
c0t1d0   Yes    id1,sd@SSEAGATE_ST973401LSUN72G_2510P90D____________3LB0P90D

---------- Post updated at 12:06 PM ---------- Previous update was at 12:04 PM ----------

Sorry the above output of metastat is from the different machine, sp posting the output from the machine we are having issue with

metastat d140
d140: Mirror
    Submirror 0: d141
      State: Okay         
    Submirror 1: d142
      State: Okay         
    Pass: 1
    Read option: roundrobin (default)
    Write option: parallel (default)
    Size: 16780224 blocks (8.0 GB)

d141: Submirror of d140
    State: Okay         
    Size: 16780224 blocks (8.0 GB)
    Stripe 0:
        Device     Start Block  Dbase        State Reloc Hot Spare
        c0t0d0s5          0     No            Okay   Yes 


d142: Submirror of d140
    State: Okay         
    Size: 16780224 blocks (8.0 GB)
    Stripe 0:
        Device     Start Block  Dbase        State Reloc Hot Spare
        c0t1d0s5          0     No            Okay   Yes 


Device Relocation Information:
Device   Reloc  Device ID
c0t0d0   Yes    id1,sd@SSEAGATE_ST973401LSUN72G_42114ZW2____________3LB14ZW2
c0t1d0   Yes    id1,sd@SSEAGATE_ST973401LSUN72G_42114QLS____________3LB14QLS
fsck -y /var

is correct.
It will pick the raw device from /etc/vfstab and that will be /dev/md/rdsk/d140
(BTW your other system has a broken disk.)

Thank you for your information, Btw the machine with a broken disk, can i directly run the same command by booting with the single user mode?

boot -s
fsck -y /var

No, fsck repairs *logical* errors in the file system - not *physical* errors.
A broken disk needs to be replaced then re-mirrored. With the Solaris LVM it is a bit complex because the new disk needs to be partitioned and metadb needs to be recreated, before it can be re-mirrored. But all this can be done on the running system.

Thanks for the information.

Can i run the below commands to fix the logical errors.

Firstly unmount the file system /var

umount /var

Then run fsck

fsck -y -F ufs /var

mount the file system back to online.

mount /var

or do i directly need to boot from the OK prompt using boot -s and then do umount on /var then run fsck and bring the /var online by using mount and then reboot the machine?
Please assist.

Yes, you can try

umount /var

If this works you can directly proceed with fsck and mount, as you suggested.
But it will likely fail with "device busy" unless it is in single-user mode.
--
In single-user mode and OK prompt you'll loose remote connection e.g. ssh connection. So make sure you access the system through a console (ILO/ALOM board, serial console, grahical console, etc.).
You can shutdown -y -i 0 -g 0 to the OK prompt and then type boot -s .

I'am not sure if u can run fsck /var with the OS running and i believe you would have to boot from cd and then mount /var, or change the /etc/hosts so it doesn't use /var, then reboot and then fsck var

Can you please assist?

I have tested the below scenario before deploying on Production machine:

When i try to unmount /var partition after booting with boot -s from OK prompt

Then i get

umount /var
umount: /var busy

Then run fsck

fsck -Y -F ufs /var
/dev/md/dsk/d140 IS CURRENTLY MOUNTED READ/WRITE.
CONTINUE?  yes

** /dev/md/dsk/d140
** Currently Mounted on /var
** Phase 1 - Check Blocks and Sizes
** Phase 2 - Check Pathnames
** Phase 3a - Check Connectivity
** Phase 3b - Verify Shadows/ACLs
** Phase 4 - Check Reference Counts
** Phase 5 - Check Cylinder Groups
FILESYSTEM MAY STILL BE INCONSISTENT.
27191 files, 3092944 used, 5161717 free (2965 frags, 644844 blocks, 0.0% fragmentation)

***** PLEASE RERUN FSCK ON UNMOUNTED FILE SYSTEM *****

Then rebooted the machine and it was fine, but not sure why i am unable to unmount /var when booting into Single user mode.

Please assist.