Encontrei alguns problemas com a configuração dos diretórios home dos usuários em nosso sistema aqui.
Nosso servidor é um XServe, usando o Open Directory para gerenciar as contas de usuários.
A maioria de nossas estações de trabalho são OS X, mas existem alguns Linux em execução (Centos 5.3) e, conforme o tempo passa, esperamos que a proporção de estações de trabalho Linux aumente (em algum momento, esperamos mover a lado do servidor para o Linux também, mas por enquanto estamos correndo com o que já temos)
Para garantir que as estações de trabalho Linux e OS X visualizem os diretórios base do usuário no mesmo local, compartilhei os diretórios base usando o NFS.
No final do servidor, os diretórios pessoais são armazenados em:
/Volumes/data/company_users
Isso é montado nas estações de trabalho para:
/mount/company_users
Funciona bem nas estações de trabalho Linux, mas há algumas estranhezas no OS X.
Para o usuário que está logado através da GUI, tudo funciona muito bem. No entanto, se um usuário tentar fazer o SSH em uma máquina na qual ele não é o usuário principal, ele geralmente não terá acesso ao seu próprio diretório pessoal.
Parece que o OS X está tentando fazer outra coisa no ponto de montagem dos diretórios iniciais do usuário quando você faz login através da GUI ....
Por exemplo, nesta máquina (nv001), eu (hugh) estou logado na GUI.
Last login: Mon Mar 8 18:17:52 on ttys011
[nv001:~] hugh% ls -al /mount/company_users
total 40
drwxrwxrwx 26 hugh wheel 840 27 Jan 19:09 .
drwxr-xr-x 6 admin admin 204 19 Dec 18:36 ..
drwx------+ 128 hugh staff 4308 27 Feb 23:36 hugh
drwx------+ 26 matt staff 840 4 Dec 14:14 matt
[nv001:~] hugh%
O diretório pessoal do Matt é acessível a ele. No entanto, se eu tentar mudar para ele:
[nv001:~] hugh% su - matt
Password:
su: no directory
[nv001:~] hugh%
Ou:
[nv001:~] hugh% su matt
Password:
tcsh: Permission denied
tcsh: Trying to start from "/mount/company_users/matt"
tcsh: Trying to start from "/"
[nv001:/] matt%
Alguém tem alguma idéia de por que isso pode estar acontecendo? Isso está me causando todos os tipos de problemas no momento ... A única máquina que posso trocar com sucesso no momento é o servidor no qual os diretórios do usuário estão armazenados, onde /mount/company_users
é na verdade apenas um link simbólico para /Volumes/data/company_users