Сборка системы с нуля (LFS)
Сначала я хотел просто привести список нужной и полезной литературы, но так как практически вся она обсуждается в "Списке_литературы_на_лето" перед сборкой своей системы c нуля(LFS - LinuxFromScratch), то увлекся и перевел собственно весь документ (примерно час-полтора набивал, только закончил). Перевод любительский, кое-что добавлено, кое-что убрано, В тексте в основном упор на LFS, но может подойти многим новичкам.
========================================================
Что читать перед сборкой своей системы и собственно для обучения.
(Автор - Richard A. Downing. Перевод -Trafim. Оригинал)
Эта статья - список хороших документов, которые вы бесплатно можете скачать в интернете, а так же немного советов от меня и моих друзей. Она поможет вам "обучиться" до уровня, на котором вы сможете:
1. Успешно собрать систему с нуля.
2. Задавать правильные вопросы на различных форумах и рассылках, и понимать ответы на них.
3. Оставаться вменяемым в процессе.
Требования: Знание английского языка, ибо переведена на русский лишь малая часть документации. А так же способность включить компьютер, зайти на сайт LFS (LinuxFromScratch) и найти подсказку (книгу по сборке системы и исходные коды программ). Остальное же мы сейчас обсудим...
В книге LFS написано:
"Эта книга подразумевает, что у читателя довольно хорошее знание об использовании и установке программ под linux."
Далее книга предполагает дальнейшие чтение, включающее и этот документ. Но это больше, чем просто "список литературы на лето", мы ожидаем от вас участия, к примеру, выполнения различных упражнений.
Часть 1.(и самая главная) Общественные отношения.
Многие люди неправильно задают вопросы в рассылках LFS. Иногда они получают грубые ответы. Чтобы Вы остались вменяемыми, Я предполагаю, что Вы прочтете увлекательную "Как_Задавать_Вопросы_Разумно" Эрика С. Раймонда.
Учтите, что рассылка LFS (да и не только она) предполагает:
1. Письма простым текстом. Никакого HTML.
2. Поменьше цитат. Не цитируйте все подряд, только самые важные моменты.
3. Толстокожесть. Не отвечайте на грубость, просто игнорируйте её.
4. Если остальные флеймят, просто сидите и наблюдайте, не ввязывайтесь.
Прежде чем задавать вопросы в рассылках, сначала поищите в архивах, прочитайте LFS FAQ(англ). Читайте новейшую версию, а не старье, что вы скачали на той неделе.
Если вы задаете вопрос, который есть в этом FAQ, то вы оскорбляете участников проекта(и не только их), которые делают это все исключительно по доброте душевной. В этом случае, вас однозначно зафлеймят.
Особое замечание: Если ктонибудь говорит вам RTFM, они не, повторяю, НЕ грубят и не наезжают. Это принятая фраза, означающая, что вы нуждаетесь в Прочтении_Этой_Замечательной_Инструкции (Read The Friendly Manual).
Часть 2. Техническая часть.
Многие люди начинают строить свою систему без каких-либо значительных знаний и опыта работы с Linux. Вот выдержка из инструкции:
"Вы должны иметь представление о Unix-системах и должны уметь использовать простейшие утилиты. К примеру, вы должны знать как создавать, просматривать, копировать, переименовывать, править и удалять файлы и директории; как перемещаться между директориями и как понять, где именно в файловой системе вы в данный момент. У вас должны быть поверхностные знания о структуре директорий и о том, как именуются файлы, в зависимости от их местонахождения. Вы должни понимать такие концепции, как "стандартный ввод" и "стандартный вывод"; что означают различные формы слова "аргумент", различие между абсолютным и относительным адресом."
В книге LFS сказано:
"Мы собираемся собрать свою систему, используя уже установленный linux-дистрибутив (Debian, SuSE, Slackware, Mandrake, RedHat, т.д.). Существующая linux-система понадобится нам в качестве платформы для сборки, потому что нам понадобятся инструменты: компилятор, линкер, текстовый редактор, а так же прочие инструменты разработки нашей системы. Добудьте современный дистрибутив и поиграйтесь с ним."
Базовый дистрибутив:
Выбор базового дистрибутива проблематичен из-за их количества, Я советую брать самый дешевый, потомучто он вам пригодится только для обучения, после постройки своей системы, Вы его выкинете. Я получил свой бесплатно. Кроме того, может помочь прочтение "обзора дистрибутивов".
Изучение UNIX:
В отличие от Windows, Unix требует от вас понимания того, что вы делаете для того, чтобы получить результат. И Windows и Unix требуют обширных знаний для получения всех возможностей системы. Если вы перешли на Linux с Windows, или новичок в обращении с компьютером, Вам должна помочь статья "Unix и основы internet" , также, "Установка и начало работы в linux"да, очень старое, но все еще стоит того, чтобы её прочли.
Оболочка (Shell):
Если вы прочли статьи, вы уже знаете, что мы будем управлять Unix через оболочку, которая предоставляет интерфейс коммандной строки. Оболочка которую мы будем использовать при построении нашей системы, наиболее распространенная в linux-мире - bash (The Bourne Again Shell). Вы должны понимать как bash работает, хорошим подспорьем будет "продвинутый путеводитель по bash-скриптингу". (Да, я знаю, что он "продвинутый", но вы же не хотите вечно быть новичком?)
Как стать начинающим гуру:
Вот три книги, которые всегда должны лежать рядом для быстрого доступа к ним:
"Руководство_Пользователя_Linux"
"Справочник_Системного_Администратора_Под_Linux"
"Справочник_Сетевого_Администратора(второе_издание)"
Рекомендую вам добавить их в закладки вашего браузера, для быстрого доступа к ним. Это сэкономит кучу времени позже.
О сборке из исходников:
Поставив linux и немного поигравшись с ним, Вы немного разберетесь в предмете, но перед началом постройки собственной системы, Вы должны узнать, как собирать пакеты из исходных кодов. Здесь вы найдете неплохие пособия. Книга LFS предполагает прочтение "Сборки_И_Установки_Пакетов_Под_Linux", а так же "Automake и Autoconf", если углубиться в тему.
Важно,чтобы Вы имели опыт сборки пакета из исходников, прежде чем начать собирать свою систему. Хорошим упражнением будет установка GNU-Emacs. Вот, что нужно:
1. Зайти на домашнюю страницу приложения.
2. Скачать исходный код приложения в tar.gz-архиве.
3. Распаковать исходники с помощью tar.
4. Прочитать README-файл.
5. Прочитать INSTALL-файл.
6. Собрать пакет с нуля.
Делая это, Вы не только научитесь собирать пакеты с нуля, но и получите полезные инструменты для вашего базового дистрибутива.
Если вам нужна задача посложней, попробуйте собрать MPlayer. Этот пакет - хорошая проверка ваших умений разработчика, так как вам сперва надо будет выявить и установить все зависимости. (В принципе, вы можете схитрить и заглянуть в книгу "Beyond_Linux_From_Scratch для получения подсказки.)
Загрузка (Bootstraping):
Область, в которой даже бывалый ветеран Unix-систем может испытывать зтруденения - настройка загрузчика для свежесобранной системы. Часто эти проблемы из-за непрочтенной документации.
Большинство людей будут собирать на X86 платформе. Раньше мы использовали Lilo как рекомендуемый загрузчик, но начиная с "LFS-5.0", мы используем GRUB. У них не так много различий, но тем не менее, важно потратить время на понятие устройства загрузчика.
Проверьте домашнии страницы загрузчиков для получения информации:
1. Grub
2. Lilo
А так же различные HOWTO, хоть и не все из них важны для вас:
(примечание - перечисленные ниже документы - на английском.)
The_Lilo mini-HOWTO
Boot + Root + Raid + Lilo : Software Raid mini-HOWTO
Linux+WindowsNT mini-HOWTO
Win95 + WinNT + Linux multiboot using LILO mini-HOWTO
Linux+Win9x+Grub HOWTO
Multiboot with GRUB Mini-HOWTO
Если вы используете не-Х86 платформу, вам придется разыскать себе подходящий загрузчик (попробуйте google-поиск), но эти ссылки могут помочь:
(примечание - перечисленные ниже документы - на английском.)
PA-RISC/Linux Boot HOWTO
SRM Firmware Howto
The Sparc Improved boot LOader
Но самая важная вещь которую вы должны сделать - прочитать man- и info-страницы вашего загрузчика. Распечатка кодов ошибок будет полезной (так как онлайн-документы будут недоступны для вас в тот момент, когда эта информация понадобится), и важно иметь альтернативный путь загрузить систему перед пробой нового загрузчика.
Часть 3. Прочие вещи.
Моей отправной точкой для заполнения пробелов или поиска информации является Google, он также должен стать и вашей. Зайдите на страницу Google и нажмите кнопку продвинутого поиска. Изучите все возможности этого необходимого инструмента, потратьте на это целый день. Потом вы просто не сможете жить без него.
Огромная подборка документации, многое из того что я привел выше, находится на "Проекте_Документации_Linux", приучитесь ходить туда регулярно, это огромный склад знаний. Опасайтесь, что большое количество документации устарело.
Существует и сайт "Русской_Документации_По_Linux", содержит небольшое количество переведенных документов (не так много, как хотелось-бы). Так же немного переведенной документации можно найти в разделе документации сайта linux.org.ru (в народе - ЛОР). Также загляните на сайт "Linux_По_Русски", тут много интересного.
Русская версия книги LFS (html), (tar.bz2- архив). Версия 6.0 (текущая стабильная уже 6.2).
Вы так же можете захотеть найти различные программы для вашего Linux. Место для поиска - Freshmeat .
LFS имеет свою поисковую систему на их сайте, Вы можете использовать ее для поиска ответов на различные вопросы, которые задавались в далеком прошлом. Загляните на сайт LFS. И наконец, читали вы что-либо касающееся LFS или нет, прежде чем задавать вопросы, начните с прочтения FAQ. LFS FAQ
От себя же новичкам настоятельно советую прочитать книгу Б. Кернигана и Р. Пайка "Unix - уникальная среда программирования" (rar-архив)
========================================================
Что читать перед сборкой своей системы и собственно для обучения.
(Автор - Richard A. Downing. Перевод -Trafim. Оригинал)
Эта статья - список хороших документов, которые вы бесплатно можете скачать в интернете, а так же немного советов от меня и моих друзей. Она поможет вам "обучиться" до уровня, на котором вы сможете:
1. Успешно собрать систему с нуля.
2. Задавать правильные вопросы на различных форумах и рассылках, и понимать ответы на них.
3. Оставаться вменяемым в процессе.
Требования: Знание английского языка, ибо переведена на русский лишь малая часть документации. А так же способность включить компьютер, зайти на сайт LFS (LinuxFromScratch) и найти подсказку (книгу по сборке системы и исходные коды программ). Остальное же мы сейчас обсудим...
В книге LFS написано:
"Эта книга подразумевает, что у читателя довольно хорошее знание об использовании и установке программ под linux."
Далее книга предполагает дальнейшие чтение, включающее и этот документ. Но это больше, чем просто "список литературы на лето", мы ожидаем от вас участия, к примеру, выполнения различных упражнений.
Часть 1.(и самая главная) Общественные отношения.
Многие люди неправильно задают вопросы в рассылках LFS. Иногда они получают грубые ответы. Чтобы Вы остались вменяемыми, Я предполагаю, что Вы прочтете увлекательную "Как_Задавать_Вопросы_Разумно" Эрика С. Раймонда.
Учтите, что рассылка LFS (да и не только она) предполагает:
1. Письма простым текстом. Никакого HTML.
2. Поменьше цитат. Не цитируйте все подряд, только самые важные моменты.
3. Толстокожесть. Не отвечайте на грубость, просто игнорируйте её.
4. Если остальные флеймят, просто сидите и наблюдайте, не ввязывайтесь.
Прежде чем задавать вопросы в рассылках, сначала поищите в архивах, прочитайте LFS FAQ(англ). Читайте новейшую версию, а не старье, что вы скачали на той неделе.
Если вы задаете вопрос, который есть в этом FAQ, то вы оскорбляете участников проекта(и не только их), которые делают это все исключительно по доброте душевной. В этом случае, вас однозначно зафлеймят.
Особое замечание: Если ктонибудь говорит вам RTFM, они не, повторяю, НЕ грубят и не наезжают. Это принятая фраза, означающая, что вы нуждаетесь в Прочтении_Этой_Замечательной_Инструкции (Read The Friendly Manual).
Часть 2. Техническая часть.
Многие люди начинают строить свою систему без каких-либо значительных знаний и опыта работы с Linux. Вот выдержка из инструкции:
"Вы должны иметь представление о Unix-системах и должны уметь использовать простейшие утилиты. К примеру, вы должны знать как создавать, просматривать, копировать, переименовывать, править и удалять файлы и директории; как перемещаться между директориями и как понять, где именно в файловой системе вы в данный момент. У вас должны быть поверхностные знания о структуре директорий и о том, как именуются файлы, в зависимости от их местонахождения. Вы должни понимать такие концепции, как "стандартный ввод" и "стандартный вывод"; что означают различные формы слова "аргумент", различие между абсолютным и относительным адресом."
В книге LFS сказано:
"Мы собираемся собрать свою систему, используя уже установленный linux-дистрибутив (Debian, SuSE, Slackware, Mandrake, RedHat, т.д.). Существующая linux-система понадобится нам в качестве платформы для сборки, потому что нам понадобятся инструменты: компилятор, линкер, текстовый редактор, а так же прочие инструменты разработки нашей системы. Добудьте современный дистрибутив и поиграйтесь с ним."
Базовый дистрибутив:
Выбор базового дистрибутива проблематичен из-за их количества, Я советую брать самый дешевый, потомучто он вам пригодится только для обучения, после постройки своей системы, Вы его выкинете. Я получил свой бесплатно. Кроме того, может помочь прочтение "обзора дистрибутивов".
Изучение UNIX:
В отличие от Windows, Unix требует от вас понимания того, что вы делаете для того, чтобы получить результат. И Windows и Unix требуют обширных знаний для получения всех возможностей системы. Если вы перешли на Linux с Windows, или новичок в обращении с компьютером, Вам должна помочь статья "Unix и основы internet" , также, "Установка и начало работы в linux"да, очень старое, но все еще стоит того, чтобы её прочли.
Оболочка (Shell):
Если вы прочли статьи, вы уже знаете, что мы будем управлять Unix через оболочку, которая предоставляет интерфейс коммандной строки. Оболочка которую мы будем использовать при построении нашей системы, наиболее распространенная в linux-мире - bash (The Bourne Again Shell). Вы должны понимать как bash работает, хорошим подспорьем будет "продвинутый путеводитель по bash-скриптингу". (Да, я знаю, что он "продвинутый", но вы же не хотите вечно быть новичком?)
Как стать начинающим гуру:
Вот три книги, которые всегда должны лежать рядом для быстрого доступа к ним:
"Руководство_Пользователя_Linux"
"Справочник_Системного_Администратора_Под_Linux"
"Справочник_Сетевого_Администратора(второе_издание)"
Рекомендую вам добавить их в закладки вашего браузера, для быстрого доступа к ним. Это сэкономит кучу времени позже.
О сборке из исходников:
Поставив linux и немного поигравшись с ним, Вы немного разберетесь в предмете, но перед началом постройки собственной системы, Вы должны узнать, как собирать пакеты из исходных кодов. Здесь вы найдете неплохие пособия. Книга LFS предполагает прочтение "Сборки_И_Установки_Пакетов_Под_Linux", а так же "Automake и Autoconf", если углубиться в тему.
Важно,чтобы Вы имели опыт сборки пакета из исходников, прежде чем начать собирать свою систему. Хорошим упражнением будет установка GNU-Emacs. Вот, что нужно:
1. Зайти на домашнюю страницу приложения.
2. Скачать исходный код приложения в tar.gz-архиве.
3. Распаковать исходники с помощью tar.
4. Прочитать README-файл.
5. Прочитать INSTALL-файл.
6. Собрать пакет с нуля.
Делая это, Вы не только научитесь собирать пакеты с нуля, но и получите полезные инструменты для вашего базового дистрибутива.
Если вам нужна задача посложней, попробуйте собрать MPlayer. Этот пакет - хорошая проверка ваших умений разработчика, так как вам сперва надо будет выявить и установить все зависимости. (В принципе, вы можете схитрить и заглянуть в книгу "Beyond_Linux_From_Scratch для получения подсказки.)
Загрузка (Bootstraping):
Область, в которой даже бывалый ветеран Unix-систем может испытывать зтруденения - настройка загрузчика для свежесобранной системы. Часто эти проблемы из-за непрочтенной документации.
Большинство людей будут собирать на X86 платформе. Раньше мы использовали Lilo как рекомендуемый загрузчик, но начиная с "LFS-5.0", мы используем GRUB. У них не так много различий, но тем не менее, важно потратить время на понятие устройства загрузчика.
Проверьте домашнии страницы загрузчиков для получения информации:
1. Grub
2. Lilo
А так же различные HOWTO, хоть и не все из них важны для вас:
(примечание - перечисленные ниже документы - на английском.)
The_Lilo mini-HOWTO
Boot + Root + Raid + Lilo : Software Raid mini-HOWTO
Linux+WindowsNT mini-HOWTO
Win95 + WinNT + Linux multiboot using LILO mini-HOWTO
Linux+Win9x+Grub HOWTO
Multiboot with GRUB Mini-HOWTO
Если вы используете не-Х86 платформу, вам придется разыскать себе подходящий загрузчик (попробуйте google-поиск), но эти ссылки могут помочь:
(примечание - перечисленные ниже документы - на английском.)
PA-RISC/Linux Boot HOWTO
SRM Firmware Howto
The Sparc Improved boot LOader
Но самая важная вещь которую вы должны сделать - прочитать man- и info-страницы вашего загрузчика. Распечатка кодов ошибок будет полезной (так как онлайн-документы будут недоступны для вас в тот момент, когда эта информация понадобится), и важно иметь альтернативный путь загрузить систему перед пробой нового загрузчика.
Часть 3. Прочие вещи.
Моей отправной точкой для заполнения пробелов или поиска информации является Google, он также должен стать и вашей. Зайдите на страницу Google и нажмите кнопку продвинутого поиска. Изучите все возможности этого необходимого инструмента, потратьте на это целый день. Потом вы просто не сможете жить без него.
Огромная подборка документации, многое из того что я привел выше, находится на "Проекте_Документации_Linux", приучитесь ходить туда регулярно, это огромный склад знаний. Опасайтесь, что большое количество документации устарело.
Существует и сайт "Русской_Документации_По_Linux", содержит небольшое количество переведенных документов (не так много, как хотелось-бы). Так же немного переведенной документации можно найти в разделе документации сайта linux.org.ru (в народе - ЛОР). Также загляните на сайт "Linux_По_Русски", тут много интересного.
Русская версия книги LFS (html), (tar.bz2- архив). Версия 6.0 (текущая стабильная уже 6.2).
Вы так же можете захотеть найти различные программы для вашего Linux. Место для поиска - Freshmeat .
LFS имеет свою поисковую систему на их сайте, Вы можете использовать ее для поиска ответов на различные вопросы, которые задавались в далеком прошлом. Загляните на сайт LFS. И наконец, читали вы что-либо касающееся LFS или нет, прежде чем задавать вопросы, начните с прочтения FAQ. LFS FAQ
От себя же новичкам настоятельно советую прочитать книгу Б. Кернигана и Р. Пайка "Unix - уникальная среда программирования" (rar-архив)
Последний раз редактировалось trafim Пт июн 19, 2009 12:31 am, всего редактировалось 1 раз.
=)))) во дал!)) надеюсь, это пригодится
p.s. кидайте камни (битые линки или неточности, если ктото прочитал )
p.p.s. сам сейчас только начинаю осваиваться в линухе, простенькие скриптики башевые строчу, vim осваиваю (в нем писал это), и проч..
p.s. кидайте камни (битые линки или неточности, если ктото прочитал )
p.p.s. сам сейчас только начинаю осваиваться в линухе, простенькие скриптики башевые строчу, vim осваиваю (в нем писал это), и проч..
Последний раз редактировалось trafim Вт сен 12, 2006 4:02 am, всего редактировалось 1 раз.
поправил линки. терь указывают на русские доки (там где особо не указано что англ.).
удалите plz 2 последних месаги и если чо есть сказать грите
удалите plz 2 последних месаги и если чо есть сказать грите
Последний раз редактировалось trafim Вс окт 29, 2006 8:36 pm, всего редактировалось 1 раз.
-
- Новенький
- Сообщения: 2
- Зарегистрирован: Вс июн 17, 2007 6:00 pm