Vscode-remote-release: flock doesn't work on NFS when installing agent via SSH

Created on 3 May 2019  Â·  8Comments  Â·  Source: microsoft/vscode-remote-release

My home directory is on NFS and flock isn't going to work.

I don't know what "no job control in this shell" is referring to.

Tried commenting out everything in my .bashrc, no dice.

SSH Resolver called for "ssh-remote+chisrvdev090"
SSH Resolver called for host: chisrvdev090
Setting up SSH remote "chisrvdev090"
Using commit id "473af338e1bd9ad4d9853933da1cd9d5d9e07dc9" and quality "insider" for server
Install and start server if needed

Pseudo-terminal will not be allocated because stdin is not a terminal.

xxxxx@chisrvdev090's password:

bash: no job control in this shell

flock: 99: No locks available
Installation already in progress...
d961f199-9236-4098-9b57-760b7aa5c838##24##
flock: 99: No locks available

"install" terminal command done
Received install output: flock: 99: No locks available
Failed to parse remote port from server output: flock: 99: No locks available

bug ssh verified

Most helpful comment

My $HOME in NFS, and /tmp in local disk, this work for me, you may try it. @TopherFord

Create a soft link from ~/.vscode-remote to /tmp/.vscode-remote on a remote machine.

test -d ~/.vscode-remote && rm -r ~/.vscode-remote
test -d /tmp/.vscode-remote || mkdir /tmp/.vscode-remote
ln -s /tmp/.vscode-remote ~/.vscode-remote

All 8 comments

We will have to figure out how to do locking on NFS...

In the meantime is there a way to avoid having the plugins/server side code do any operations in my home directory? /tmp is available, plus any other arbitrary path, I have the box to myself.

Currently we don't have any way to change this path. If you can figure out how to hack the installer's environment to change $HOME then it should install under whatever that is.

Is there any possibility of a workaround for me whatsoever? How would I "hack the installer's" environment?

My $HOME in NFS, and /tmp in local disk, this work for me, you may try it. @TopherFord

Create a soft link from ~/.vscode-remote to /tmp/.vscode-remote on a remote machine.

test -d ~/.vscode-remote && rm -r ~/.vscode-remote
test -d /tmp/.vscode-remote || mkdir /tmp/.vscode-remote
ln -s /tmp/.vscode-remote ~/.vscode-remote

I am experiencing this issue as well. However, I am not able to use the trick that @0ut0fcontrol suggested, because I can't delete the current ~/.vscode-remote directory.

rm -rf .vscode-server
rm: cannot remove ‘.vscode-server/bin/c7d83e57cd18f18026a8162d042843bda1bcf21f   /.nfs00000000071d88f300000078’: Device or resource busy

I get a few more messages of the same kind

Is there a server still running @malaverdiere? You can also run the "Uninstall" command or just find the vscode processes and kill them manually.

The nightly version of this extension now doesn't use 'flock' for locking.

Was this page helpful?
0 / 5 - 0 ratings