Игра Яндекс Практикума
Игра Яндекс Практикума
Игра Яндекс Практикума

Хочу собрать свой дистрибутив Linux со своими репозиториями. Подскажите, с чего начать?

Отредактировано

23К открытий23К показов
Хочу собрать свой дистрибутив Linux со своими репозиториями. Подскажите, с чего начать?

Некоторые наши подписчики интересуются сборками собственных дистрибутивов Linux. Мы передали вопрос экспертам, и вот что они ответили.

С чего начать сборку своего дистрибутива Linux?

Разных дистрибутивов сегодня существует огромное количество (хотя популярных немного), и они все довольно большие. Делать свой “с нуля”, во-первых, не просто, во-вторых, скорее всего, бессмысленно. Гораздо полезнее будет разобраться в существующих дистрибутивах и попробовать придумать, чем именно “свой” будет лучше.

Рейтинг полезности ответа:
1.3

Воодушевившись прочтением книги Линуса Торвальдса «Just for Fun», можно обратить внимание на проекты Linux From Scratch, документирующие сборку Linux с нуля. Однако этот путь может не принести удовольствия, тем более на раннем этапе освоения Linux. Мой совет — выбрать привлекательный по идеологии существующий дистрибутив, особенно из числа “инженерных”, (например: Gentoo, Arch Linux), но также подойдут и Debian/Ubuntu, Fedora за свои доброжелательные сообщества. Когда вы начнете работать с дистрибутивом, попробуйте внести свой вклад в проект: пакетирование новых, но уже популярных программ, написание или перевод документации, оказание помощи в листах рассылки. Это поможет изучить внутреннее устройство дистрибутива. На основании этого опыта можно будет решить, материализовывать свои идеи в новом дистрибутиве (возвращаясь к LFS) либо влиять на текущий. Из источников информации могу порекомендовать книги о ядре Linux Роберта Лава, а также лекции курсов информационных технологий Яндекса.

Рейтинг полезности ответа:
7.3

Если кратко:
LFS ?

Если развернуто:
А зачем собирать свой дистрибутив?
А чем вас не устраивает что-то из существующего?

Рейтинг полезности ответа:
0.0

С ответа на вопрос: зачем?

Рейтинг полезности ответа:
0.0

В первую очередь я бы начал с вопроса: а зачем это надо? Linux — это не только ядро вкупе со сборником системных и прикладных программ. Это большой труд громадного количества людей. Просто так взять открытые программы, наваять пару обоин, свой логотип при запуске и [добавить фичу по усмотрению] — не круто. Это будет жить ровно столько, сколько у вас будет “энтуазизма”.

Если же хочется докопаться до начал и узнать о том, как Linux работает изнутри, почему и зачем он устроен так, как устроен, то, для начала почитать матчасть. Например, книги Баха Мориса, Эндрю Таненбаума об архитектуре операционных систем. Далее, книга Linux From Scratch как раз поможет собрать “свой” дистрибутив с нуля. Вооружившись компилятором, вы пройдёте путь от начала до более-менее живой сборки ванильного Linux, собирая при этом все возможные грабли.

И вот тогда уже, вооружившись теорией, практикой (довольно боевой) и опытом использования других Linux-систем, вопрос “с чего начать” должен отпасть сам собой.

Рейтинг полезности ответа:
8.1

Начните вот с чего. Ответьте себе честно на два вопроса:
а) Зачем вам это нужно?
б) Представляете ли вы, какой объём работы перед вами открывается?

Рейтинг полезности ответа:
0.0

Первым делом стоит убедиться, что вы очень хорошо представляете как работает и устроена ОС Linux и стандарт POSIX. Скорее всего с выбором основы для дистрибутива проблем не будет — выбор огромен (но наверняка Ubuntu или CentOS). Другое дело, что важно будет правильно нарастить “мясо”. Тут я бы рекомендовал посмотреть готовые примеры, почитать профессионалов: Линуса Торвальдса, Петра Линка. Если будет уделяться много внимания производительности, рекомендую эту книгу.

Рейтинг полезности ответа:
3.8

Остановитесь и вспомните, какое именно неудачное событие в детстве привело вас к этому решению. Нет, правда.

Рейтинг полезности ответа:
0.1

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

Поэтому сначала определите цель, а уже от неё пляшите что вам требуется внутри. У вас должен выйти чёткий список хотелок.

Берите этот список, проект LFS и вперед.

Рейтинг полезности ответа:
4.0

Самый распространенный вариант — Linux From Scratch.
Там есть пошаговые инструкции по созданию своего дистрибутива. Можно еще собрать Gentoo из исходников, попутно изучая процесс, а потом попробовать немного отходить от стандартного мануала.

Рейтинг полезности ответа:
2.9

Я подскажу не собирать свои репозитории — это даст вам множество проблем (самая простая для понимания — безопасность — легко пропустить критическое обновление мелкой библиотеки, из-за которой вас потом взломают). Даже если у вас чисто образовательная цель, то лучше просто помогите существующим дистрибутивам — например, устройте свой PPA или возьмите на начните поддерживать какой-то проект. Работая один вы допустите множество ошибок, о которых вам не скажут.

Рейтинг полезности ответа:
1.1

Я бы начал с вопроса “зачем”. Если с целью изучения — ок. Не дает покоя слава Canonical — не ок.

Рейтинг полезности ответа:
0.0

На этот раз эксперты были единогласны и итоговый короткий ответ будет такой:

  1. Задайте себе вопрос: зачем вам это надо?
  2. Если всё-таки надо, то посмотрите в сторону LFS.

Напомним, вы можете задать свой вопрос или присоединиться к числу отвечающих.

Следите за новыми постами
Следите за новыми постами по любимым темам
23К открытий23К показов