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)
Ответ на: комментарий от qaqa

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

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

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

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

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

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