Поділитися встановленими бібліотеками між Debian та Ubuntu


19

Я намагаюся розділити свій жорсткий диск і встановити Ubuntu та Debian. Отже, мені немає потреби зберігати будь-які старі дані. Будуть використані останні видання обох ОС.

Я намагаюся зрозуміти, як я можу встановлювати бібліотеки, програми тощо через apt в Ubuntu, а не перевстановлювати його на Debian і навпаки. Тут я припускаю, що все, що працює для Ubuntu, буде працювати і для Debian, і, сподіваюся, і навпаки.

Я знаю, що можу поділитися / додому. Але це не те, де буде більшість ліб / програм. Чи слід ставити / usr на інший розділ та монтувати / usr на обох ОС? А може мені просто потрібно монтувати / usr / local? Або є кращий спосіб це зробити?


11
Ваше припущення неправильне.
Анвар

10
Ваше припущення ДУЖЕ неправильне.
Rinzwind

4
Гммм, це питання, що опускає голоси, мене бентежить. Хіба це не правомірне запитання, наповнене надією та утопічними фантазіями всіх варіантів debian, які діляться бінарними файлами (адже це той самий комп'ютер з тією ж архітектурою)?
dev_nut

4
Upvote - це моє. Я вважаю це законним питанням. Не всі такі досвідчені. І якщо ніхто не задає подібного роду питання, де ми б закінчилися?
Rinzwind

1
Прихильне тому, що це законне і не все те недосвідчене питання.
Джос

Відповіді:


16

Або є кращий спосіб це зробити?

  • Встановіть усе програмне забезпечення, яке ви використовуєте як оснащення.
  • Встановіть усе програмне забезпечення, яке ви використовуєте, у розділі з назвою /opt/. Це, ймовірно, буде джерелом установки ( tar.gz).

Ці два способи встановлення можна поділити між дистрибутивами. Останній вам потрібно буде щось додати до PATH або скопіювати послугу в основну систему.

Ви не можете ділитися / usr / або / var / між двома різними установками. Ви можете поділитися / usr / local / хоча. 2 дистрибутиви можуть мати різні версії бібліотек, тому вам може знадобитися встановити кілька бібліотек на будь-якій із цих систем. Але ті кілька кілобайт, які ви заощадите, не варті часу, який ви збираєтеся витратити на це. Крім того, ви, швидше за все, потім все-таки зламаєте будь-яку систему.


Ця відповідь насправді намагається дати мені кілька рішень. Коли ви говорите, що я не повинен ділитися / usr, чи не повинен це робити навіть із тими ж версіями ubuntu?
dev_nut

@dev_nut Не слід ділитися /usr/*між двома системами; Ви можете поділитися /usr/local/*між ними, хоча ви все ще ризикуєте тим, що "локальне" програмне забезпечення не буде сумісним між двома випусками до певного рівня. (тож ваші fstabправила /usr/local/*встановили б на якомусь іншому розділі, і це було б поділене на обидва)
Thomas Ward

1
@dev_nut річ є. 2 різні версії програмного забезпечення в 2 операційних системах зберуть одну з них. Поруч із цим: можуть бути різниці між ними в налаштуваннях для користувачів за замовчуванням, які псують речі (користувачі знаходяться в / etc / password) Проблема з тим самим користувачем з різними UID та GUID.
Rinzwind

11

Єдине, що ти ніколи не робиш - це змішати сховища Debian і Ubuntu, системні бібліотеки, програми тощо. Це масово порушить обидві системи. (Це також стосується змішування Ubuntu та неофіційних варіантів, таких як Mint; і хоча ви теоретично можете змішувати Kubuntu та Ubuntu, наприклад, 16.04, ви просто не повинні та повинні тримати їх основні системи окремо).

Ubuntu знаходиться у набагато більш швидкому циклі випуску із значно оновленими бібліотеками програмного забезпечення, ніж у Debian. І обернено вірно - Debian не має оновлених бібліотек тощо.

Змішування та суміщення підірватимуть системи. Ось чому ви не ділитесь між собою бібліотеками.

Для цього вийде з ладу обидві системи. Не намагайтеся ділитися бібліотеками та програмами між двома системами.

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


3

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

dpkg , що є основним додатком для управління пакетами, використовує /var/lib/dpkg/statusфайл для зберігання та отримання інформації про пакунки debian, встановлені в системі. Це дуже конкретно щодо вашого бігу. Навіть один запис може зіпсувати всю річ управління пакетом.

Скажімо, у вас в Ubuntu 3.18встановлена версія nautilus. Тоді, якщо ви поділитесь цією інформацією, debian побачить, що вона має 3.18для nautilus, навіть якщо вона є насправді 3.16. Це дуже простий приклад. Але складність може бути і більшою. Наприклад, debian може побачити, що у вас встановлені пакети з неіснуючого сховища без поважних причин і спробує їх видалити і навпаки.

Відповідь Rinzwind проілюстрував один простий спосіб подолати загальну програму, тобто використовувати автономні програми, що розподіляються у вигляді пакетів snap або flat-pak. Вони не діляться бібліотеками, але якщо ви хотіли чогось загального застосування, яке може виконати вашу мету.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.