LINUX.ORG.RU

Отличие работы двух полностью идентичных профайлов

 


0

1

Всем привет!
Помогите, пожалуйста, разобраться в ситуации.
У меня есть два полностью идентичных профайла, пользователи ни в каких группах не состоят, админскими правами не наделены, создал один от другого клонированием через команды:

useradd user2
cp -pPr /home/user1 /home/user2
chown -R user2 /home/user2

После клонирования проверил оба домашних каталог через diff, никаких отличий.
В исходном профайле настроена среда разработки под Rust — установлены cargo, vscode, отладчик CodeLLDB. Соответственно, надо думать, что во втором клонированном профайле всё тоже должно быть настроено, ведь diff никаких отличий не видит.
Но в первом профайле отладчик работает, а во втором выдаёт ошибку:

Executing task: CodeLLDB: cargo 
Running `cargo build --bin=guess --package=guess --message-format=json`...
Error: Cargo invocation failed.
        at t.Cargo.getCargoArtifacts (/home/neo/.vscode/extensions/vadimcn.vscode-lldb-1.7.4/extension.js:1:11568)
        at processTicksAndRejections (node:internal/process/task_queues:96:5)
        at async Object.open (/home/neo/.vscode/extensions/vadimcn.vscode-lldb-1.7.4/extension.js:1:9878)
Caused by: Error: spawn cargo ENOENT
        at Process.ChildProcess._handle.onexit (node:internal/child_process:282:19)
        at onErrorNT (node:internal/child_process:477:16)
        at processTicksAndRejections (node:internal/process/task_queues:83:21)

Получается, в руте есть какие-то привязки к первому пользователю, из-за чего CodeLLDB никак не может присоединиться к cargo у второго пользователя?
Куда копать-то?



Последнее исправление: neovich (всего исправлений: 5)

Херовый способ так копировать. Многие проги сохраняют абсолютные пути, а не относительные от директории текущего пользователя и отсюда весь гимор.

qaqa ★★
()
Последнее исправление: qaqa (всего исправлений: 1)

at t.Cargo.getCargoArtifacts (/home/neo/.vscode/extensions/vadimcn.vscode-lldb-1.7.4/extension.js:1:11568)

neo - Это оригинальный пользователь или склонированный?

her_s_gory
()
Ответ на: комментарий от qaqa

Понял, я об этом не подумал. Теперь есть за что зацепиться, спасибо за мысль.
У меня задача понять, почему перестал работать отладчик в моём основном профиле.

neovich
() автор топика
Ответ на: комментарий от her_s_gory

В реальности там были не user1 и user2, а куча всяких других, в том числе и neo, которых наплодил в процессе эксперимента.
И это был склонированный пользователь.

neovich
() автор топика

Caused by: Error: spawn cargo ENOENT

Похоже, что cargo не найден. Надо смотреть куда он установлен и переменную окружения PATH.

Там где-то и будет скрываться причина.

her_s_gory
()
Ответ на: комментарий от her_s_gory

Вы и qaqa правы, дело в путях.
Когда в настройках отладчика прописал абсолютный путь до cargo, всё заработало. Но самое интересное, что в $PATH путь до cargo присутствует и в терминале он спокойно вызывается, но отладчик упорно cargo не видит.
На всякий случай проверил, кто шаманит с путями и нашёл, что пару дней назад собирал из исходников skia и там потребовалось вставить в .bash_profile вызов некой emsdk_env.sh, которая добавляла в пути кучу своего. Но при этом ведь путь к cargo сохранялся и почему у отладчика сносило крышу, мне так и непонятно.
Ладно, главное всё заработало.
Спасибо!

neovich
() автор топика
Ответ на: комментарий от turbognida

vscode зачастую игнорирует PATH

Вот оно негодяй, людям жить спокойно не даёт!

Не забудь пометить тему как решённую.

Понял, не знал про это.

neovich
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.