Nie można utworzyć katalogu „/var/empty/.ssh”

8

Każdego dnia, po kilku godzinach użytkowania, wszystko, co używa SSH, po prostu losowo przestanie działać. Jedynym rozwiązaniem jest dla mnie ponowne uruchomienie komputera, który naprawia go, dopóki nie pojawi się ponownie.

> git push
Could not create directory '/var/empty/.ssh'.
The authenticity of host 'github.com (192.30.252.131)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)?

Oto więcej informacji z -v (skróconym dla zwięzłości) po próbie ssh w hoście diff:

debug1: Connection established.
Could not create directory '/var/empty/.ssh'.
debug1: identity file /var/empty/.ssh/id_rsa type -1
debug1: identity file /var/empty/.ssh/id_rsa-cert type -1
debug1: identity file /var/empty/.ssh/id_dsa type -1
debug1: identity file /var/empty/.ssh/id_dsa-cert type -1 

Jestem zalogowany do mojego głównego użytkownika OSX. ~ / i ~ / .ssh są zarówno w porządku, jak i nienaruszone i nie robię nic z uprawnieniami mojego użytkownika, gdy tak się stanie. Z pewnością nie mam nic wspólnego z niczym w / etc, kiedy to się dzieje.

Czy jest coś, co mogę spróbować rozwiązać, aby dowiedzieć się, dlaczego tak się dzieje?

doremi
źródło
Jaki jest wynik ls -l /var/empty?
8bittree
Co się stanie, gdy ręcznie utworzysz .ssh katalog w /var/empty. Możesz użyć chown -R USERNAME /var/empty/.ssh zmienić właściciela na swoje konto.
kobaltz
ls -l /var/empty nic nie zwraca. @ kobaltz Działa, dopóki ssh nie potrzebuje mojego klucza, a następnie zawiedzie, ponieważ nie może ich znaleźć /var/empty/.ssh. Mogę je przenosić, ale to nie mówi mi, na czym polega podstawowy problem.
doremi
Racja, to prawdopodobnie działałoby lepiej, gdybym zapytał o właściwe polecenie. Co robi stat -f "%Sp" /var/empty mówić?
8bittree
3
drwxr-xr-x, ale myślę, że / var / empty jest czerwonym śledziem dla głównego problemu, dlatego ssh przestaje używać mojego domowego katalogu .ssh i zaczyna szukać w innym miejscu.
doremi

Odpowiedzi:

7

Czy korzystasz z logowania opartego na LDAP? Możliwe, że twoja maszyna utraciła połączenie z ldap i jakoś utraciła atrybut HOME. Współpracownik „obejrzał” to, odłączając i ponownie łącząc swoją sieć, zamiast restartu.

Irytujące, ale być może o krok bliżej do głównej przyczyny problemu ..

ahhdem
źródło
1
Rozłączenie / ponowne połączenie z siecią rozwiązało ten problem.
erran
1

Powinieneś zmienić zmienną środowiskową $ HOME z /var/empty do /Users/ Nazwa Użytkownika .

export HOME="/Users/ Twoja nazwa użytkownika 

powinien załatwić sprawę.

maty_nz
źródło
0

Nie wiem, dlaczego tak się dzieje, ale poradziłem sobie z tym:

sudo ln -s ~/.ssh /var/empty/.ssh
kmanville
źródło