OSX.3 and mapped drives

Fahrvergnuugen

I am the law!
I really hope that apple fixes the problems with mapping network drives.

When a drive disconnects because the server reboots, or the internet connection is lost, or for whatever reason, OSX.2 has a fit.

Not just the finder either...all applications seem to freeze for a minimum of 5 minutes until the finder finally pops up a message saying "server disconnected" or whatever it says.

This is so frustrating! I hate to say this but in windowz you have the option to run each explorer window in a seperate thread...I hope they do something similar with the Finder.

Anybody have any thoughts on this?
 
:mad: :mad: :mad:

This issue is a MASSIVE pain in my side. I regularly connect to different networks and if I mess up and forget to disconnect a share then life gets immediately bad. Not only does it take forever to timeout (and sometimes it is forever, like this morning, I left it for about four hours and it never came back), but it also slows the machine. Massive suckage.

Fahrvergnuugen one thing that helps matters (gets the finder back) is to right click on the finder in the dock, and select 'restart finder' (I think it only appears if the OS detects that the finder is hosed). While this gets the finder back, it's best to go ahead and shutdown and restart as things are still messed up, just not as bad. At times though things get so bad that the dock won't even work.

:mad: :mad: :mad:
 
Binary - edit your lookupd stuff in Netinfo. You need to set the timeout value shorter. It's lookupd that's causing everything to slow down until it times out looking for the host. Since the system uses lookupd for practically everything (even looking up local files), your system is going to be more or less hosed until it finishes whatever it's trying to do.

I wrote a small howto on speeding up DNS ...that gives some basic tips on NetInfo (first part of it), though it mostly goes to speeding up DNS stuff.

Here's my current lookupd config (this is output from the nidump command in the terminal):

Code:
{
  "ValidateCache" = ( "YES" );
  "LookupOrder" = ( "CacheAgent", "NIAgent", "DNSAgent", "NILAgent" );
  "ConfigSource" = ( "netinfo://localhost/local:/locations/lookupd" );
  "name" = ( "lookupd" );
  "LogFile" = ( "/var/log/lookupd.log" );
  "MaxIdleThreads" = ( "256" );
  "MaxThreads" = ( "256" );
  "MaxIdleServers" = ( "256" );
  "ValidationLatency" = ( "15" );
  "Timeout" = ( "30" );
  "DomainOrder" = ( "." );
  CHILDREN = (
    {
      "LookupOrder" = ( "CacheAgent", "NIAgent", "NILAgent" );
      "name" = ( "users" );
    },
    {
      "LookupOrder" = ( "CacheAgent", "NIAgent", "NILAgent" );
      "name" = ( "groups" );
    },
    {
      "LookupOrder" = ( "CacheAgent", "DNSAgent", "NIAgent", "NILAgent" );
      "name" = ( "networks" );
    },
    {
      "LookupOrder" = ( "CacheAgent", "NIAgent", "NILAgent" );
      "name" = ( "netgroups" );
    },
    {
      "LookupOrder" = ( "CacheAgent", "NIAgent", "NILAgent" );
      "name" = ( "services" );
    },
    {
      "LookupOrder" = ( "CacheAgent", "NIAgent", "NILAgent" );
      "name" = ( "protocols" );
    },
    {
      "LookupOrder" = ( "CacheAgent", "NIAgent", "NILAgent" );
      "name" = ( "rpcs" );
    },
    {
      "LookupOrder" = ( "CacheAgent", "NIAgent", "NILAgent" );
      "name" = ( "mounts" );
    },
    {
      "LookupOrder" = ( "CacheAgent", "NIAgent", "NILAgent" );
      "name" = ( "printers" );
    },
    {
      "LookupOrder" = ( "CacheAgent", "NIAgent", "NILAgent" );
      "name" = ( "bootparams" );
    },
    {
      "LookupOrder" = ( "CacheAgent", "NIAgent", "NILAgent" );
      "name" = ( "bootp" );
    },
    {
      "LookupOrder" = ( "CacheAgent", "NIAgent", "NILAgent" );
      "name" = ( "aliases" );
    },
    {
      "LookupOrder" = ( "CacheAgent", "NIAgent", "DNSAgent", "NILAgent" );
      "name" = ( "hosts" );
      "Timeout" = ( "30" );
      "ValidateCache" = ( "NO" );
    },
    {
      "name" = ( "agents" );
      CHILDREN = (
        {
          "name" = ( "NILAgent" );
          "TimeToLive" = ( "3600" );
          "Timeout" = ( "30" );
        },
        {
          "name" = ( "DNSAgent" );
          "Timeout" = ( "15" );
          "Retries" = ( "3" );
        },
        {
          "name" = ( "NIAgent" );
          "TimeToLive" = ( "14400" );
          "Timeout" = ( "30" );
          "ConnectTimeout" = ( "5" );
          "ValidationLatency" = ( "15" );
        },
        {
          "name" = ( "CacheAgent" );
          "TimeToLive" = ( "14400" );
          "ValidateCache" = ( "YES" );
        }
      )
    }
  )
}

Note that I don't connect to servers that often, so I'm not sure if the timeout values I have will work for you or not. I'd guess play with them until you find values that work for you.

Also, if you are able to launch applications still when this happens (sometimes you can't when lookupd gets hosed), you can force lookupd to relaunch & reload itself by doing this command in the terminal: /System/Library/SystemConfiguration/Kicker.bundle/Resources/restart-lookupd (note: you need to be root or use sudo to do that command). That may work to get responsiveness back.
 
Back
Top