Как запустить новый дистрибутив Linux? [закрыто]


28

Некоторые из моих друзей и я заинтересованы в запуске нового дистрибутива Linux. Как мы это делаем? Что нам нужно планировать?

Предыстория

Я представляю сообщество системных администраторов / разработчиков Linux, чьи особые потребности включают, среди прочего:

  • Конкретная «бережливая» конфигурация ядра
  • Управление пакетами, которое соответствует нашим «полевым потребностям»
  • Бинарные пакеты, оптимизированные для наших «вариантов использования»
  • Система без X

Кстати, нам нужен специально сконфигурированный дистрибутив Linux производственного качества, который будет работать исключительно как Para-Virtualized Production Servers . Вместо того, чтобы перепрыгивать через все циклы каждый раз, когда нам нужен сервер с виртуальной машиной, нам бы очень хотелось подготовить систему, оптимизированную для ее среды.

Поскольку эти виртуальные машины будут производственными серверами, стабильность необходима, и, честно говоря, доступные системы управления пакетами, о которых мы знаем в настоящее время, просто не дают гарантии. Zyppи Conaryявляются самыми близкими к нашим потребностям, но опять же все еще не хватает некоторых моментов.


1
Точно, что вы хотите в диспетчере пакетов? То есть для ваших нужд, в чем слабые стороны APT, Zypp, Conary, Yum ...?
Чепанг

3
Вместо того, чтобы объяснять один за другим, мы стремимся к следующему: (1) многоуровневая «стабильность» вместо упрощенного «testing-vs-stable» (2) интеллектуальный решатель зависимостей (3) множественное управление версиями (в ограниченный смысл, вроде как слоты Gentoo Portage) (4) откат (необязательно, из-за способности
снимать

1
Можете ли вы объяснить, что означает несколько уровней стабильности ?
Чепанг

2
Является ли aptitude«s зависимость решатель продвинутый достаточно?
Чепанг

10
Каждое установленное вами требование выполняется простым выбором существующего дистрибутива и созданием собственного репозитория (возможно, с альтернативным менеджером пакетов) с вашим собственным определенным циклом выпуска. Но вы отклонили эту опцию, а также отклонили опцию LFS. Кроме того, вы ошибочно принимаете менеджер пакетов за критический фактор стабильности, который является вспомогательным инструментом, который сам по себе не имеет ничего общего с общей стабильностью системы.
forcefsck

Ответы:


22

Возможно, вы захотите взглянуть на Linux с нуля :

Linux From Scratch (LFS) - это проект, который предоставляет пошаговые инструкции по созданию собственной системы Linux полностью из исходного кода.


Почти, но не совсем. Это больше похоже на создание собственного Linux для собственных нужд. Но моему сообществу нужна целая платформа, например, настраиваемые ядра, настраиваемый init, настраиваемое управление пакетами и т.д.
pepoluan

4
Начиная с LFS и создавая весь фреймворк на нем, как вы описали, на самом деле это определение «Запуск вашего собственного дистрибутива Linux».
forcefsck

2
@pepoluan: нет руководства по этому вопросу. Если у вас установлены работающие утилиты оболочки и ядра, у вас есть операционная система. В остальном вы либо копируете из других дистрибутивов, либо заново изобретаете. В любом случае, создание нового дистрибутива требует много работы, и нет простых ответов, как это сделать.
forcefsck

1
@forcefsck спасибо за предупреждение :) ... Я согласен, это, несомненно, будет серьезным начинанием. Жаль, что нет «военных историй» или чего-то подобного, просто чтобы не повторять ошибок.
pepoluan

2
@pepoluan Могу поспорить, что есть истории о войне, но не все так просто. Например, посмотрите на архивы списков рассылки в первые дни различных дистрибутивов.
Чепанг

9

Вам понадобится минимальная работающая система, вероятно, из другого дистрибутива, чтобы "загрузить" свой собственный дистрибутив с достаточным количеством, чтобы хотя бы запустить gcc или другой компилятор C. Затем вам нужно начать с определения того, какие библиотеки ядра (включая libc) и программное обеспечение составляют базовое состояние «без установки пакетов» в вашей системе. Затем получите исходный код для этих библиотек и программного обеспечения и скомпилируйте их, убедитесь, что все программное обеспечение может найти нужные библиотеки, и начните создавать низкоуровневую базовую среду.

В основном среда начальной загрузки не будет ничего больше , чем работающее ядро и абсолютный минимум вам нужно , чтобы получить основную оболочку, компилятор, и основные вещи , как rm, cp, tarи тому подобное , что работа. Следующая вещь, которую вы должны запустить и запустить после этого, это Perl. После того, как вы создали свою базовую систему, вам нужно сохранить ее и создать несколько сценариев загрузки, которые переводят систему из начальной загрузки в полезную оболочку с компилятором.

Затем вам нужно спроектировать / написать систему пакетов и отформатировать их, а также загрузить исходный код в программное обеспечение, которое вы хотите упаковать, скомпилировать и упаковать, а также разработать надежную систему распространения ваших пакетов. Все это не тривиально. Удачи.


Ааа, очень информативно, спасибо! Да, у меня нет иллюзий, что это было бы простым делом. К счастью, я не одинок. Я соберу сообщество, и мы поссоримся, кто что будет делать :)
pepoluan

0

Если вам нужен только набор приложений по умолчанию, вы можете настроить существующий дистрибутив, такой как Ubuntu, используя несколько простых инструментов. http://maketecheasier.com/reconstructor-creating-your-own-ubuntu-distribution/2008/07/05


Ммм ... не совсем. Видите ли, я являюсь частью сообщества пользователей, чьи потребности на самом деле не удовлетворяются ни одним из существующих дистрибутивов, особенно в том, что касается конфигурации ядра и управления пакетами. Мы все хорошо знакомы с Linux, и у нас достаточно свободного времени, чтобы попытаться создать собственный дистрибутив.
pepoluan


-1

Есть сайт, на котором вы можете увидеть все дистрибутивы и простое описание и обзор их там. Так что это поможет вам выбрать лучший:

http://distrowatch.com/

Но для начала я предлагаю вам использовать Ubuntu или Kubuntu. так легко и удобно.


Убунуть и кубунту, когда стремление оптимизировать среду виртуальных машин очень стабильно, определенно не очень хорошая идея, хотя наблюдение за дистрибутивом - это хорошо.
Kiwy

Я предлагаю это только для того, чтобы дать ему отправную точку, чтобы поближе познакомиться с ними.
ShgnInc
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.