#linux #visual-studio-code
#linux #visual-studio-код
Вопрос:
Я пытаюсь открыть код Visual Studio (я пробовал версии 1.39.2, а также 1.51.1) на компьютере CentOS 7.3, на котором у меня нет привилегий root. Я использую следующие параметры командной строки :
./VSCode-linux-x64/bin/code —user-data-каталог my_dir -подробный
Однако, несмотря на использование моего собственного каталога с возможностью записи (my_dir), VS Code открывает диалоговое окно с сообщением об ошибке: «Невозможно записать пользовательские данные программы. Пожалуйста, убедитесь, что следующие каталоги доступны для записи: »
$my_path/mydir
$my_home_dir/.vscode/extensions
/run/user/31848
Из них первые два имеют права на запись, но у меня нет доступа к / run на этом компьютере. Похоже, VS Code нуждается в доступе к этому каталогу для записи некоторых файлов .socket. Это ожидаемое поведение? Есть ли какие — то обходные пути ?
Я также получаю следующее сообщение об ошибке, как только закрываю диалоговое окно :
[main 2020-12-04T21:31:30.942Z] Error: listen EACCES /run/user/31848/vscode-08e0415b-1.39.2-main.sock
at Server.setupListenHandle [as _listen2] (net.js:1269:19)
at listenInCluster (net.js:1334:12)
at Server.listen (net.js:1432:5)
at Promise (/depotbld/RHEL7.0/VS-Code/VS-Code-1.39.2/resources/app/out/vs/code/electron-main/main.js:189:883)
at new Promise (<anonymous>)
at Object.t.serve (/depotbld/RHEL7.0/VS-Code/VS-Code-1.39.2/resources/app/out/vs/code/electron-main/main.js:189:820)
at Object.doStartup (/depotbld/RHEL7.0/VS-Code/VS-Code-1.39.2/resources/app/out/vs/code/electron-main/main.js:536:523)
at i.invokeFunction (/depotbld/RHEL7.0/VS-Code/VS-Code-1.39.2/resources/app/out/vs/code/electron-main/main.js:534:927)
at h.invokeFunction (/depotbld/RHEL7.0/VS-Code/VS-Code-1.39.2/resources/app/out/vs/code/electron-main/main.js:251:263)
at Object.startup (/depotbld/RHEL7.0/VS-Code/VS-Code-1.39.2/resources/app/out/vs/code/electron-main/main.js:534:763)
Ответ №1:
Я нашел решение этой проблемы :
Расположение каталога tmp можно изменить с помощью среды XDG_RUNTIME_DIR:
XDG_RUNTIME_DIR=my-runtime-dir ./VSCode-linux-x64/bin/code —user-data-dir my_dir