pam_mount + sshfs + ubuntu 11.10 login problems

Asked by Joe Collins on 2011-10-16

Hello all - first of all, great work on Ubuntu! Been using it for years and love it!

I'm not sure if this is a bug or a lack of knowledge on my part. The newest documentation that I've been able to find was from 2008 and it was mediocre at best and not ubuntu-specific. On a separate note, it would be helpful if someone knowledgeable on this topic could write a how-to.

Anyway, here it goes:
My user account information is stored on a remote LDAP server host name 'fileserver' running Ubuntu 11.10. I'm using pam_mount on my workstations to auto-mount a directory (also located on 'fileserver') when a user logs in to Ubuntu. User home directories are also on this network directory. Here's the problem. Sometimes it works, sometimes it doesn't.

On previous releases of Ubuntu, after typing my login credentials, I ALWAYS get an error indicating something to the effect that it couldn't access the .ICEAuthority file. If I wait a few seconds, then click close, everything works OK. If I click close immediately, it logs me in but without mounting the network directory (in effect, I get the desktop of a brand new user).

On Ubuntu 11.10, when I get the ICEAuthority error, my only choice is to log out - that brings me back to the login screen. No way to "pass go" it seems.

This sounds to me like some kind of timing issue. I'm guessing that my user account info (home directory, shell, etc) is pulled from LDAP much faster than pam_mount can mount the network directory. Ubuntu is probably expecting my home directory to exist immediately after I log in. Maybe I need some way to insert a delay between logging in and when Ubuntu looks for the existence of my home directory - to give pam_mount time.

Anyone have any ideas here?

Here's my pam_mount.conf.xml file in case it helps:

<!DOCTYPE pam_mount SYSTEM "pam_mount.conf.xml.dtd">
 See pam_mount.conf(5) for a description.


  <!-- debug should come before everything else,
  since this file is still processed in a single pass
  from top-to-bottom -->

<debug enable="1" />

  <!-- Volume definitions -->

  <!-- pam_mount parameters: General tunables -->

<luserconf name=".pam_mount.conf.xml" />

<!-- Note that commenting out mntoptions will give you the defaults.
     You will need to explicitly initialize it with the empty string
     to reset the defaults to nothing. -->
<mntoptions allow="nosuid,nodev,loop,encryption,fsck,nonempty,allow_root,allow_o
ther" />
<mntoptions deny="suid,dev" />
<mntoptions allow="*" />
<mntoptions deny="*" />
<mntoptions require="nosuid,nodev" />

<logout wait="0" hup="0" term="0" kill="0" />

<!--<fusemount>mount.fuse %(VOLUME) %(MNTPT) -o %(OPTIONS)</fusemount>-->
<volume fstype="fuse" path="sshfs#%(USER)@fileserver:/data" mountpoint="/data" o
ptions="nonempty,reconnect,idmap=user,password_stdin,allow_other" />

<mkmountpoint enable="1" remove="true" />


Question information

English Edit question
Ubuntu Edit question
No assignee Edit question
Last query:
Last reply:
Joe Collins (jgc26) said : #1

Any ideas anyone? Is more information needed?

Should I convert this into a bug?

Fabio Marconi (fabiomarconi) said : #2

I can only suggest to post on irc on freenode #ubuntu-server

Can you help with this problem?

Provide an answer of your own, or ask Joe Collins for more information if necessary.

To post a message you must log in.