Совместно использовать установленные библиотеки между Debian и Ubuntu

19

Я пытаюсь создать раздел жесткого диска и установить Ubuntu и Debian. Поэтому мне не нужно сохранять старые данные. Будут использоваться последние версии обеих ОС.

Я пытаюсь понять, как я могу установить библиотеки, программы и т. Д. Через apt в Ubuntu, а не переустанавливать его в Debian и наоборот. Здесь я предполагаю, что все, что работает для Ubuntu, будет работать для Debian, и, надеюсь, также наоборот.

Я знаю, что могу поделиться / домой. Но это не то, где будет большинство библиотек / программ. Должен ли я поместить / usr в другой раздел и смонтировать / usr в обеих ОС? Или, может быть, мне просто нужно смонтировать / usr / local? Или есть лучший способ сделать это?

dev_nut
источник
11
Ваше предположение неверно.
Анвар
10
Ваше предположение очень неправильно.
Ринзвинд
4
Хммм, этот вопрос о снижении голосов меня смущает. Разве это не законный вопрос, наполненный надеждой и утопическими фантазиями о всех вариантах Debian, использующих двоичные файлы (это все тот же компьютер с той же архитектурой)?
dev_nut
4
Upvote мое. Я считаю это законным вопросом. Не все такие опытные. И если никто не задает такие вопросы, где бы мы в конечном итоге?
Ринзвинд
1
Проголосовал, потому что это законный и не весь этот неопытный вопрос.
Jos

Ответы:

16

Или есть лучший способ сделать это?

  • Установите все программное обеспечение, которое вы используете в качестве оснастки.
  • Установите все программное обеспечение, которое вы используете, в разделе с именем /opt/. Это, вероятно, будет установка источника ( tar.gz).

Эти 2 метода установки могут быть распространены среди дистрибутивов. Последнее, что вам нужно будет добавить что-то в PATH или скопировать службу в основную систему.

Вы не можете поделиться / usr / или / var / между 2 различными установками. Вы можете поделиться / usr / local / однако. 2 дистрибутива могут иметь разные версии библиотек, поэтому вам может потребоваться установить несколько библиотек на любую из этих систем. Но те несколько килобайт, которые вы сэкономите, не стоят того времени, которое вы собираетесь потратить на это. Кроме того, вы, вероятно, все равно сломаете любую систему.

Rinzwind
источник
Этот ответ на самом деле пытается дать мне несколько решений. Когда вы говорите, что я не должен делиться с / usr, разве я не должен делать это даже с теми же версиями Ubuntu?
dev_nut
@dev_nut Вы не должны делиться /usr/*между двумя системами; вы можете делиться /usr/local/*между ними, хотя вы все еще рискуете, что «локальное» программное обеспечение несовместимо между двумя выпусками до некоторого уровня. (так что ваши fstabправила были бы /usr/local/*смонтированы в каком-то другом разделе, и тогда они были бы разделены в обоих)
Томас Уорд
1
@dev_nut вещь есть. 2 разные версии программного обеспечения в 2 операционных системах приведут к сбою одной из них. Кроме того: между ними могут быть различия в настройке для пользователей по умолчанию, которые запутываются (пользователи находятся в / etc / password). Будет проблема с одним и тем же пользователем с разными UID и GUID.
Ринзвинд
11

Единственное, что вы никогда не делаете, - это смешиваете репозитории Debian и Ubuntu, системные библиотеки, программы и т. Д. Это сильно повредит обеим системам. (Это также распространяется на смешивание Ubuntu и неофициальных вариантов, таких как Mint; и хотя вы теоретически можете смешивать Kubuntu и Ubuntu, например, 16.04, вы просто не должны и не должны разделять их основные системы).

Ubuntu находится в гораздо более быстром цикле выпуска с гораздо более обновленными библиотеками программного обеспечения, чем Debian. Обратное также верно - у Debian нет обновленных библиотек и т. Д.

Смешивание и сопоставление взорвут системы. Вот почему вы не делитесь библиотеками друг с другом.

Для этого сломаются обе системы. Не пытайтесь делиться библиотеками и программами между двумя системами.

Хотя технически вы можете совместно использовать домашние каталоги пользователей в разных выпусках и дистрибутивах, у вас могут возникнуть странные проблемы в одной или нескольких ОС из-за различий в конфигурациях разных версий программного обеспечения в каждой системе.

Томас Уорд
источник
3

Еще один момент, который я хочу добавить к существующему ответу, касается aptи dpkg, и того, как они обрабатывают информацию об установленных программах.

dpkg , который является основным приложением для управления пакетами, использует /var/lib/dpkg/statusфайл для хранения и получения информации о пакетах debian, установленных в системе. Это очень специфично для вашего бега. Даже одна запись может испортить весь процесс управления пакетами.

Скажем, например, у вас установлена ​​версия 3.18для nautilusUbuntu. Затем, если вы поделитесь этой информацией, debian увидит, что она имеет 3.18для nautilus, даже если это действительно так 3.16. Это очень простой пример. Но тут может быть больше сложности. Например, debian может увидеть, что у вас установлены пакеты из несуществующего репозитория без уважительной причины, и попытается удалить их, и наоборот.

Ответ Ринзвинда проиллюстрировал один простой способ обойти обычное приложение, то есть использовать автономные приложения, распространяемые в виде пакетов «с защелкой» или «плоского пакета». Это не общие библиотеки, но если вы хотите что-то вроде общего приложения, которое может выполнить вашу цель.

Анвар
источник