Безопасность в использовании различных методов установки программного обеспечения (одновременно)

Интересно при установке программного обеспечения снаружи Ubuntu, упаковочная система может перепутать apt/dpkg инструменты. Я знаю, что установка слишком новых .deb пакетов и попытка рекурсивно решить зависимости вручную (потому что dependendencies являются также слишком новыми) могут смутить их. Но что относительно различных упаковочных инструментов как зернышко или снимок? И что относительно того, чтобы установить вещи "sudo делают установку" из источника. Я думаю, что apt/dpkg не знает обо всем этом устанавливаемом программном обеспечении. Это затем безопасно к целостности этой упаковочной системы? Что, если я делаю, например:
sudo apt install cmake #low version from Ubuntu repository
sudo make install #high version from Cmake website in sources
sudo apt remove cmake
Я предполагаю, что обе установки нацеливаются в то же местоположение в файловой системе.

1
задан 17 January 2020 в 16:52

2 ответа

Вы корректны для принятия этого dpkg и apt не знают об этом дополнительном программном обеспечении от pip или sudo make install. Однако обе установки не нацеливаются в то же местоположение в файловой системе. Дополнительное программное обеспечение от pip или sudo make install установлен в каталогах, которые имеют более высокий приоритет (ранее) в Вашем $PATH

Если Вы устанавливаете пакеты от pip с --user флаг, без sudo, пакеты будут установлены на ~/.local/bin Пакеты, установленные с sudo make install команда будет обычно устанавливаться на /usr/local/bin

Если Вы работаете: echo $PATH Вы будете видеть, что эти пути перечислены перед стандартными каталогами это deb использование пакетов так вручную установленные пакеты выполняется при выполнении команды. Это помогает избежать конфликта, если тот же пакет был также установлен с помощью apt или dpkg.

Поэтому можно сохранить Ваш apt зависимости удовлетворили, и Вы не должны удалять apt версия cmake. Таким образом, можно все еще обратиться dpkg установленная версия cmake в сценарии или терминале путем выполнения полного пути: /usr/bin/cmake Выполните команду: cmake выполниться sudo make install версия.

То же идет для пакетов, установленных с помощью pip. Например, если Вы установили youtube-dl через apt-get и затем установленное использование: pip install youtube-dl --user, pip версия: ~/.local/bin/youtube-dl выполнился бы вместо /usr/bin/youtube-dl.

Вы можете иметь две конфликтующих установленные версии и все еще использовать их обоих.

Это не должно говорить, что не будет конфликтов. Ваша система зависит от определенных пакетов как Python, который не может работать правильно, если Вы изменяете версию системного значения по умолчанию. Кроме того, установку случайным образом загруженного программного обеспечения считают менее безопасной, если Вы не доверяете своим источникам. Вручную загруженное программное обеспечение может также иметь ошибки или дефекты безопасности, и необходимо не забыть вручную обновлять путем загрузки программного обеспечения или использования pip.

0
ответ дан 19 January 2020 в 09:12

Может затем я делать apt/dpkg для установки в/usr/local (или ~/.local), если я не вполне верю определенному пакету? Я предполагаю, что не, потому что .deb пакеты содержат жесткие местоположения. С другой стороны, это не большая проблема для добавления одного инфикса при обработке этими инструментами.

0
ответ дан 19 January 2020 в 09:12

Другие вопросы по тегам:

Похожие вопросы: