Could not create directory '/var/empty/.ssh'
Solution 1
Are you using an LDAP-backed login? It's possible your machine has lost connection to the ldap and somehow lost your HOME attribute. A coworker 'got around' this by disconnecting and reconnecting his network, instead of a reboot.
Annoying, but perhaps a step closer to the root cause of the issue..
Solution 2
You should perhaps change the $HOME enviroment variable
from /var/empty
to /Users/username
.
export HOME="/Users/your-username"
should do the trick.
Related videos on Youtube
doremi
Updated on September 18, 2022Comments
-
doremi over 1 year
Every day, after several hours of use, anything using SSH will just randomly stop working. The only solution is for me to restart my machine, which fixes it until it randomly occurs again.
> 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)?
Here's more info with -v (shortened for brevity) after trying to ssh into a diff host:
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
I'm logged into my main OSX user. ~/ and ~/.ssh are both fine and intact and I'm not doing anything to the permissions of my user when this happens. I'm certainly not messing around with anything in /etc when this happens.
Is there anything I can try to help troubleshoot this to figure out why it keeps happening?
-
8bittree about 10 yearsWhat is the output of
ls -l /var/empty
? -
kobaltz about 10 yearsWhat happens when you manually create the
.ssh
directory in/var/empty
. You can usechown -R USERNAME /var/empty/.ssh
to change the ownership to your account. -
doremi about 10 years
ls -l /var/empty
returns nothing. @kobaltz It works until ssh needs my key and then it fails because it can't find them in/var/empty/.ssh
. I could move them, but that doesn't tell me what the underlying issue is. -
8bittree about 10 yearsRight, this would probably work better if I asked about the right command. What does
stat -f "%Sp" /var/empty
say? -
doremi about 10 yearsdrwxr-xr-x, but I think /var/empty is red herring for the root issue which is why does ssh stop using my home dir's .ssh and begin looking in a different place.
-
rici about 10 years@doremi: That is exactly correct. It could well be that you've done something which causes the git session to be running as a different user (possibly whatever OS X uses for "nobody"). You might want to check
whoami
or some such.
-
-
erran about 6 yearsDisconnecting/reconnecting to the network fixed this problem for me.