Question re fsck_hfs process at start up - how to disable / speed up process?

Discussion in 'macOS' started by michaelmk, Sep 21, 2009.

  1. michaelmk macrumors newbie

    Joined:
    Sep 21, 2009
    #1
    Dear all,

    I have a Mac Pro with several raid array and single drives attached (1x Wiebetech RTX600 Raid 5 through SCSI; 1x CalDigit HDElement Raid 5 through miniSAS; 4x internal drives).

    Unfortunately, due to various reasons (electricity outtage and software crashes), I'm experiencing system crashes and need to hard re-start the system. Upon restart, I am able to boot back into Mac OS X, but sometimes one, or both of the raid arrays will not mount.

    However, after a period of 0.5 - 2 hours, the array would magically re-appear again. Sometimes this might even happen to internal drives that I had mounted inside the chassis of the Mac Pro.

    I've also noticed that when a drive / array is down, a process named fsck_hfs will run - sometimes utilizing upwards to 99% of CPU processing power. It is only when this process is completed would the drive re-appear.

    I've read up on this process and understand that fsck_hfs checks and repairs (a damaged) the file system. I gather likely the hard re-start had damaged the array / drive some what, and this process is trying to fix it. However, there doesn't seem to have a progress status to show how much longer it'd have to run before the drive would mount again.

    I am wondering the following:

    1. Is it necessary to run fsck_hfs fully all the way until it completes? If I kill the process through activity monitor, will I be causing damages to my drives; risk the array never mounting again; or are array fine anyway, and this is more of a redundant process that I can skip?

    2. Is there a process status that I can look at to see how much of the process had been completed, or still have to go?

    3. I understand disk utility would run the same process to verify / repair the disk. To follow up on #1, if it is indeed necessary to run fsck_hfs before my drive would mount, is it possible for me to kill the fsck_hfs process that autostarted at start up, and run it through disk utility instead. The procession bar indication is a reassurance that I like - even if it does take the same amount of time (ie very long).

    4. At what point would one kill a fsck_hfs process - I've had instances where the process had gone on for >24 hours. The drive finally mounted, but I felt that the time it took was way too long.

    5. On a follow up to #4, if I feel that the fsck_hfs process is running too long, are there alternative I can approach? For example, would running disk warrior provide same / faster results? And if I'd like to run disk warrior, should I kill the fsck_hfs process first?

    Thanks for your help in advance!

    Yours,
    Michael
    ---
    [www.dvshortfilms.com]
    [www.mksiu.com]
     
  2. rnolds81 macrumors newbie

    Joined:
    Nov 22, 2009
    #2
    Also looking for an answer to these questions

    I have a very similar setup and exactly the same experience.
    I was wondering the same thing. Does anyone know the answer?
     
  3. joaoferro37 macrumors 6502

    joaoferro37

    Joined:
    Jul 31, 2008
    Location:
    Vogon Planet Destructor
    #3
    I had clients using cal digit Hd element and got the same problem.
    It may be the poor power supply design or their RAID card.
    Since they have Accusys which is another low end raid card manufacture, the quality and performance is slow.

    Here is what you can do
    Find the VOLUME ID, open your Mac OS Disk Utility and “COMMAND+CLICK” on the volume name…NOT the Disk name (see attached file).
    Locate the volume ID (Example: disk1s2) and write it down for later reference.
    Boot into OS X Command Line interface (reboot, hold APPLE+S while booting)
    Once you have booted in the Unix command interface you will see the main root line.
    Now type fsck_hfs -r /dev/rdisk1sX. (rdiskXsX - X will be the VOLUME ID in question)
    Click Enter or Return5. Mac OS will notify you upon successful repair.
    For assurance, run the same command again.
    you may want to write this down and put it on a sticker attach to cal digit hd element.
     
  4. Governor22 macrumors newbie

    Joined:
    Apr 13, 2010
    #4
    I know this thread is old but I just want to thank you guys something CHRONIC !!!

    My dad's 1.5TB hard drive had packed it in after a power outage (had backups, family/wedding movies etc) and I finally figured out it had something to do with fsck_hfs after checking out Activity Monitor.

    I knew the HD still worked, since it showed up in our Seagate FreeAgent Theater media player, and I could see it in Disk Utility, it just wouldn't mount. And trying to repair it in DUtil just hung forever.

    The command prompt repair worked PERFECT and now the HD is back to good.

    Thank you, thank you, thank you. :)
     
  5. spidey3 macrumors regular

    Joined:
    Jul 1, 2010
    #5
    FYI, fsck is the file system consistency check, and fsck_hfs is a specialization of fsck for HFS filesystems. It is critical that it run after a crash, as this is how the OS cleans up any potential corruption in the filesystem. As you mention, Disk Utility too uses fsck_hfs to verify or repair filesystems.

    If it is taking a long time to run, that usually means that either there are a large number of issues to clean up, that access to the drive is slow for some reason, or both.

    The suggestions to boot to single user mode and run checks manually are good. Even better would be to boot from the OSX Installation CD/DVD, and run the checks from there, without even trying to mount the filesystems.

    As for options to use when running in this mode, I usally use fsck_hfs -f. You can do man fsck_hfs to learn about other options.

    Note that the amount of time needed for the filesystem check differs depending upon the filesystem type. Checks on journaled filesystems generally complete much faster -- assuming the integrity of the journal is not compromised in any way.

    You can see details on what fsck_hfs is doing by looking at /var/log/fsck_hfs.log.

    Spidey!!!
     

Share This Page