O que está fazendo com que a High Sierra esqueça onde está meu diretório pessoal?


22

O problema inicial

Tenho encontrado um problema esporádico em que meu Mac parece "esquecer" onde está o meu diretório pessoal.

A primeira pista (porque isso é algo que eu faço com muita frequência) é sempre que o Google Chrome não pode abrir uma nova guia. Eu recebo a tela de erro "oh snap". Isso me leva a sair do Chrome e reiniciá-lo, o que leva a essa caixa de diálogo de erro, após a qual o Chrome não inicia:

Captura de tela da caixa de diálogo: "O Google Chrome não pode ler e gravar no diretório de dados: / var / empty / Library / Suporte a aplicativos / Google / Chrome"

Outros sintomas

Muitas outras coisas que exigem conhecimento do diretório inicial também falham:

  • Quando abro alguns aplicativos da Apple (por exemplo, Visualização, Notas, Mensagens), é exibida uma caixa de diálogo informando que ele precisa reparar meu diretório pessoal e requer que eu me autentique. Inserir minha senha aqui faz com que /var/empty/Libraryo proprietário do servidor seja alterado para mim (o que é ruim a longo prazo, mas permite que algumas coisas comecem a funcionar).
    • Captura de tela da caixa de diálogo: "O macOS precisa reparar sua biblioteca para executar aplicativos".
  • O Safari simplesmente não abre quando clicado - ele aparece brevemente no dock e depois desaparece, sem a caixa de diálogo Relatório de falhas (embora eu não possa dizer se o sistema nesse estado está ciente da minha preferência em ver essas caixas de diálogo).
  • Mesmo depois de "reparar minha biblioteca", muitos aplicativos não podem abrir:
    • Visualizar: aparece uma caixa de diálogo do Finder: O aplicativo "Visualizar" não pode ser aberto.
    • Chrome: mesma caixa de diálogo de erro que antes, na foto acima
    • Notas: o ícone da estação aparece e desaparece.
  • Depois de reparar minha Biblioteca, alguns aplicativos que não puderam abrir antes agora podem e muitos deles esqueceram minhas configurações:
    • Safari (que estou usando agora para escrever esta pergunta enquanto pesquiso)
    • BBEdit
    • Pixelmator
    • Notas
  • Alguns aplicativos parecem não ser afetados, independentemente das permissões da Biblioteca:
    • Console
    • Preferências do Sistema
    • Acesso ao chaveiro
  • Não posso capturar capturas de tela, a menos que eu use o Grab ou segure Control para gravar a captura de tela na área de transferência (porque ela não tem acesso de gravação /var/empty/Desktop, que pertence corretamente ao root).
  • Nas caixas de diálogo Abrir e Salvar, ele não mostra meu diretório pessoal na barra lateral, nem nenhum dos destinos comuns (Desktop, Documentos, etc.).
  • Quando o protetor de tela é ativado, o padrão do sistema (Flurry) aparece em vez do meu usual (o Classic apontou para um diretório de fotos que selecionei).
  • O Terminal usa as configurações padrão para color / font / etc em vez das minhas configurações personalizadas.

Ainda outras coisas parecem estar funcionando bem:

  • Máquina do tempo
  • Holofote
  • Cantos quentes

Isso aconteceu três vezes até agora, desde a atualização da minha máquina de trabalho para High Sierra, alguns dias após seu lançamento.

A pesquisa

A pesquisa parece indicar que o macOS não acredita que meu diretório pessoal seja/var/empty , mas que não sabe que eu tenho um diretório pessoal e existe alguma lógica de fallback em algum lugar que faz com que o sistema use / var / empty para qualquer usuário que não possui um diretório inicial. (Fonte: é possível criar um usuário sem um diretório inicial? )

Pesquisas adicionais indicam que / var / empty existe como uma "prisão de segurança" para usuários que não deveriam ter acesso a nada (é por isso que é ruim alterar permissões ou vincular-lo a outro lugar). (Fonte: /server/116632/what-is-var-empty-and-why-is-this-directory-used-by-sshd )

Com base em ocorrências anteriores, a reinicialização corrige o problema (até a próxima vez que isso acontecer). Depois de enviar esta pergunta, vou tentar desconectar / reconectar meu cabo de rede e sair para ver se alguma dessas ajuda; Voltarei e editarei este parágrafo em conformidade. Atualização: desconectei e reconectei meu cabo de rede e reiniciei o Finder. O Chrome funciona novamente e todos os outros sintomas parecem ter sido resolvidos também! Isso certamente reduz a dor quando esse problema ocorre, mas eu ainda gostaria muito de entender e evitar a causa raiz.

Nada que eu possa ver no Terminal parece exibir o problema:

Last login: Mon Nov 13 13:21:18 on ttys000
jrobb@oke-jrobb-mb: ~ % pwd
/Users/jrobb
jrobb@oke-jrobb-mb: ~ % cd /var/empty
jrobb@oke-jrobb-mb: /var/empty % ls -la
total 24
drwxr-xr-x   8 jrobb  staff   256B Oct 20 16:32 ./
drwxr-xr-x  27 root   wheel   864B Oct 20 14:49 ../
-rw-r--r--@  1 root   staff    10K Oct 20 16:32 .DS_Store
drwx------   2 root   staff    64B Oct 14 05:52 .ssh/
drwx------   4 root   staff   128B Oct  9 13:22 Desktop/
drwx------   3 root   staff    96B Sep 25 15:46 Documents/
drwx------   3 root   staff    96B Sep 25 15:46 Downloads/
drwx------+ 28 root   staff   896B Nov 13 13:37 Library/
jrobb@oke-jrobb-mb: /var/empty % whoami
jrobb
jrobb@oke-jrobb-mb: /var/empty % echo $HOME
/Users/jrobb
jrobb@oke-jrobb-mb: /var/empty % 

O registro integrado do High Sierra faz do Console.app um pesadelo para ser lido, mas mesmo assim passei muito tempo procurando mensagens relevantes. Encontrei vários que parecem ser erros causados ​​pelo problema, mas nenhum que parece ser o problema. Suspeito que isso seja causado pelo fato de que você não pode rolar o fluxo interminável de todas as mensagens de todos os subsistemas de volta para antes do que sempre que você abriu o Console, e também não há uma maneira aparente de pesquisar mais de um arquivo por vez, a menos que você deseja pesquisar no fluxo somente encaminhamento mencionado acima. Eu não tinha o Console funcionando quando as coisas foram para o sul, então acho que estou sem sorte? (Eu apreciaria muito qualquer ajuda / conselho aqui.)

Eu já vi vários outros casos em que as pessoas têm o mesmo problema, desde 2014 (10,9 Mavericks). Aqui estão alguns links para outras pessoas que enfrentam problemas iguais ou relacionados, para os quais nenhuma solução satisfatória se apresenta:

Parece que, para aqueles que têm "soluções", eles são realmente band-aid que expõem falhas de segurança significativas:

  • link simbólico /var/emptypara o diretório inicial correto
  • chown _user_ /var/empty
  • e assim por diante

O contexto

Estou usando um iMac de final de 2013 (Core i7 3,9 GHz, 32 GB de RAM, 1 TB de SSD) executando o High Sierra (sempre a última versão corrigida; isso começou com a 10.13.0 e agora afeta a 10.13.1). É um dispositivo gerenciado por Jamf e eu me autentico em um domínio do Active Directory. Meu perfil no painel de usuários e grupos está rotulado como "Admin, Gerenciado, Celular".

Começamos a usar o Jamf, onde trabalho logo após a atualização para o High Sierra, para que possa ser um problema do Jamf ou do High Sierra (ou, na verdade, qualquer outra coisa).

Existem muitos outros usuários de Mac, muitos outros usuários de High Sierra e muitos outros usuários de Jamf; que eu saiba, nenhum outro usuário está enfrentando esse problema. Eu sou o único usuário do iMac - todos os outros Macs aqui são laptops. (Luto para imaginar que meu iMac é o problema - apenas sendo minucioso.)

Esse problema começa a ocorrer no meio de uma sessão do usuário. Está tudo bem, até que de repente não está. Como tal, acho que não tem nada a ver com login ou Active Directory.

O que estou olhando

Estou procurando uma resposta que impeça o macOS de entrar nesse estado e espero que explique quando e como isso acontece.


1
Obrigado pelos detalhes sobre o seu ambiente, facilita a compreensão da complexidade aqui.
nohillside

Dito isto: você verificou que "tudo" fica bem no lado do Jamf (por exemplo, comparou seu perfil ao de outro usuário)? O que acontece se outro usuário (com um perfil jamf) usar seu iMac por algum tempo?
nohillside

@patrix Vou investigar mais e editar à medida que mais detalhes estiverem disponíveis no lado do Jamf. Não tenho acesso ao nosso material de administração do Jamf e preciso trabalhar com o administrador do sistema, que é novo no Jamf e menos especialista em Mac do que eu.
JakeRobb #

Acabei de ver com o administrador do sistema por alguns minutos e examinamos meu perfil do Jamf. Nada salta, mas ele vai fazer algumas pesquisas adicionais.
JakeRobb

3
Curiosamente, desconectar / reconectar meu cabo Ethernet e reiniciar o Finder eliminou todos os sintomas e restaurou o comportamento normal. Esquisito! Atualizei a pergunta para refletir isso.
JakeRobb

Respostas:


5

Abra um bug com a Apple sobre isso. Eu tenho um caso aberto, mas eles precisam ouvir mais pessoas sobre isso. Vejo isso em raras ocasiões, mas apenas no meu computador conectado ao Active Directory com minha conta móvel gerenciada (então, acho que é apenas mais um dos muitos bugs do AD na 10.13 que permanecem sem correção).

Acho que, se eu gerar um sysdiagnose (para atualizar meu caso), o problema desaparecerá enquanto o sysdiagnose também estiver sendo gerado.

Mas não é nada que eu possa forçar a acontecer, então não sei o que causa isso.


1
Obrigado! Eu nunca registrei um bug na Apple; não sei como fazê-lo. Preciso me registrar como desenvolvedor? (Eu sou um dev que usa um Mac, mas eu faço webapps.)
JakeRobb

1
Eu deveria pesquisar no google antes de perguntar. :) developer.apple.com/bug-reporting Dado que não tenho etapas para reproduzir, não tenho esperança. Mas vou enviar alguma coisa.
precisa saber é o seguinte

2
Sim, envie algo mesmo que você não possa reproduzi-lo. Já me disseram várias vezes que é o número de relatórios de erros sobre um problema que chama atenção. Posso abrir um erro e dizer "8000 Macs aqui têm esse problema", mas isso não recebe a mesma atenção que 8000 relatórios de erros sobre o mesmo problema.
maser

3

A resposta a longo prazo é não vincular nenhum Mac ao AD e obter uma ferramenta para acoplar livremente as permissões do usuário e aproveitar o Kerberos para autenticar.

  • Apple Enterprise Connect - você paga por um contrato de serviços profissionais para descobrir / configurar e documentar a solução para o seu ambiente. https://www.apple.com/support/professional/
  • NoMAD e / ou NoMAD Pro - https://nomad.menu - ferramentas de código aberto com suporte pago e opções de consultoria, bem como do fornecedor.

A ligação é dolorosa, e essa dor cresce quanto mais tempo você deixa apodrecer e contrair. Sua pergunta é sólida e espero que alguém tenha uma solução rápida para você, mas já vi várias organizações se afastarem (ou correrem) do vínculo depois que pilotam o NoMAD e se comprometem com o AEC ou o NoMAD em grande escala. A instalação do JAMF Pro ajudará realmente a implantar qualquer uma das ferramentas.


Você tem algum motivo concreto para acreditar que o problema está vinculado à associação do AD? Já ouvi muitas histórias de horror, mas não estou disposto a aceitar isso como causa sem provas.
JakeRobb

Apenas minha experiência no gerenciamento de muitos macs @JakeRobb - você pode ter uma única corrupção e precisar limpar o sistema operacional - faça suas contas de usuário novamente e restaure seus dados. Difícil de saber sem as mãos na máquina.
bmike

3

Encontrei o seguinte para "corrigir" o problema.

  1. Abra Preferências do Sistema> Usuários e Grupos
  2. Desbloquear o painel
  3. Clique com o botão direito do mouse na conta de usuário efetuada> Opções avançadas ...
  4. Próximo ao diretório inicial: clique em Escolher ...
  5. Clique em Abrir
  6. Clique OK

Isso parece ter reescrito o caminho do diretório inicial e permitido o retorno da funcionalidade.

No meu caso, sair e voltar resultou em uma tela preta com um cursor - embora após uma reinicialização suave capaz de efetuar login novamente, barra de progresso longa, tudo voltou ao normal.

Espero que isto ajude! Boa sorte!


1
Isso é útil, mas não responde à pergunta real que eu fiz. Obrigado, no entanto! :)
JakeRobb

2

Vocês estão mapeando UIDs para atributos diferentes? No passado, quando eu vi isso no OS X / MacOS, é porque mapeamos UIDs internamente para um ID universal (era o mesmo no UNIX e no AD) e vomitava ao tentar fazer essa tradução. Os usuários perderam permissões para seus diretórios pessoais e mostraram os sintomas que você está vendo no Finder etc.

No Directory Utility, você pode ver "Mapear UID para atribuir:" na guia Mapeamentos, no Active Directory.


Nenhuma das três caixas de seleção de mapeamentos está marcada no meu sistema.
precisa saber é o seguinte

1

Isso acontece no meu computador comercial (anexo ao AD) sempre que o Chrome precisa ser atualizado e eu encerro e reinicio o aplicativo. Suponho que seja algum tipo de problema com o atualizador (que é basicamente silencioso) tentando reescrever o diretório do usuário quando uids e outros não são gerenciados localmente.

O que funcionou para mim foi simplesmente redefinir todas as conexões à Internet; por exemplo, desconecte a Ethernet e desligue o Wi-Fi


Teoria interessante! FWIW, isso não aconteceu comigo desde que publiquei essa pergunta há quase um ano, e certamente atualizei o Chrome mais de uma vez nesse período.
JakeRobb # 27/18

0

FWIW, este não é um problema do Chrome. Quando esse problema ocorre, ele afeta outros aplicativos também. Não para sugerir isso como uma correção, mas se você seguir o URL da Jamf Nation, verá minha postagem na parte inferior do tópico. Gerenciamos um ambiente bastante amplo de Macs. Temos uma política para desvincular um Mac do Active Directory e outra para vincular um Mac ao Active Directory. Por alguma estranha razão, desvincular e depois refazer parece "consertar" o problema. Coloquei "consertar" entre aspas porque nada mais é do que uma saraivada que provavelmente não tem nada a ver com o problema raiz. ¯ \ _ (ツ) _ / ¯


Observe que minha pergunta não a apresenta como um problema do Chrome. O Chrome acaba de ser o primeiro aplicativo a ser vítima do problema nas poucas vezes que isso aconteceu comigo. Mas obrigado pelo contexto extra!
JakeRobb

Entendido, minhas desculpas meu post implicava isso. Abrindo um ticket com o Apple Enterprise Support hoje.
31418 donmontalvo
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.