How can I restart Finder when it keeps "stopping" an stopped copy process?

Every now and then, mostly with USB sticks, Finder decides to copy forever, either at the end of the copy process (i.e. the files are already copied), or at the very beginning.

Stopping the process in the little window will make Finder announce that it is "stopping" and it will do that for a few hours.

Been "Stopping..." for hours, probably will keep at it forever!

I tried just killing and restarting Finder but the old Finder survives as a zombie and the new Finder never finished starting.

Is there another way of recovering from this problem other than restarting the computer?

Since I upgraded to Lion I found that restarts have become more common.

Update: In Mountain Lion it would appear you can't even restart to fix it!

THe Finder can't quit because some operations are still in progress. (And will be forever!)


Solution 1:

Next time this happens, look at the Finder process using ps: First run this in a terminal:

launchctl list | grep Finder

The output should be just one line, listing com.apple.Finder with a number at the beginning of the line. That number is the process ID (pid) of Finder. Now run

ps up xxx

replacing xxx by the pid found in the first step. Look under the STAT heading. If you see the letter U then the Finder is stuck in an uninterruptible system call, and cannot be killed. You will most likely need to restart your system to recover.

Processes stuck in an uninterruptible system call is often a symptom of a hardware problem. It would bear further investigations to find the cause.

Solution 2:

killall Finder

If you don't have killall

brew install killall

if you don't have brew

ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"

if you don't have ruby

You have it, it comes with OSX