Детально опишіть процес завантаження системи Linux


14

Я детально готую документ, що показує світло на послідовності завантаження Linux прямо від натискання кнопки включення хоста до появи підказки для входу.

Було б чудово, якби ми могли поєднати і зібрати тут правильні відповіді в єдине місце відліку. Будь ласка, включіть будь-які деталі, які варто відзначити під час запуску. Після того, як документ буде завершений з усіх пунктів, я також опублікую тут деталі документа та оновлюю посилання у питанні.

Будь ласка, врахуйте всі можливі сценарії, такі як завантаження з диска, завантаження з usb, завантаження з мережі на клієнт, що не має диска, де rootfs (/) знаходиться в мережі.


3
Судячи з цього (включаючи посилання) і цього , ви пропонуєте досить величезний проект ...
sr_

4
Чи відчуває це питання домашнього завдання / тези для когось іншого?
Шадур

1
Чи не слід це позначити як вікі-спільноти?
користувач невідомий

4
Я думаю, що це занадто широко для питання щодо SE, є величезні розбіжності між дистрибутивами та конфігураціями.
Жил 'SO- перестань бути злим'

1
чи можете ви опублікувати підготовлений вами документ
Абхішек

Відповіді:


7

Ви хочете завантажувати послідовність завантаження Linux або просто послідовність завантаження ПК ... тому що немає різниці між завантаженням Linux з usb / cdrom / hdd ... Linux завжди завантажується з MBR, де завантажувач ...

Процес завантаження Linux:

  1. У міру збільшення потужності BIOS отримує управління
  2. BIOS виконує самотести, зазвичай включаючи тестові оперативні пам'яті.
  3. Потім BIOS завантажує перший сектор диска, який буде використовуватися для завантаження, і передає йому управління.
  4. Код MBR варіюється. Одна версія покладе ланцюг на код у першому секторі завантажувального розділу (Windows), інша завантажить завантажувач. Запуск Windows завантажується з коду та інформації у завантажувальному розділі.
  5. завантажувач вибирає місце і версію ядра
  6. завантажувач готує зображення ядра та initrd в пам'яті, передає управління ядру
  7. завантаження модулів ядра
  8. виявлення апаратного забезпечення та завантаження додаткових модулів ядра для його підтримки
  9. шукає диски
  10. R / O кріплення / перегородки, щоб потенційно його можна було перевірити та відремонтувати
  11. Ініт процес нересту
  12. / etc / inittab читання та виконання
  13. монтаж усіх FSes з / etc / fstab
  14. запущені рівні запуску (засновані на стандартному запуску в / etc / inittab) або інший метод init, такий як systemd або upstart
  15. rc.local
  16. запит на вхід

Дякую @Sebastian, це був хороший список. Я шукаю детальні кроки, наприклад 1: що завантажує інформацію про mbr, перш ніж про те, як надходять поштові та біологічні інструкції; 2. чому r / o монтувати / розділ, а потім знову читати / записувати mount / розділ .. що таке процес 0 у всьому цьому процесі .. але дякую за відповідь.
Нікхіл Маллі

@Nikhil щодо процесу 0 ... такого процесу немає, після завантаження ядра у вас є процес 1, який є init процесом. Щодо решти пунктів: 1. перевірте ibm.com/developerworks/library/l-linuxboot/index.html 2. тому що спочатку потрібно перевірити файли, потім ви можете почати писати на ньому ... це швидше з міркувань безпеки. ..
Себастьян Шарі

На дискетах або компакт-дисках немає MBR. Процес завантаження компакт-дисків включає файл каталогу, який описує одне або декілька мультисекторних зображень, які біоси можуть вибрати для завантаження та виконання.
psusi

Що робити, якщо модулі ядра є у ext3файловій системі, а ext3модуль ядра ще не завантажений? Більше того, що робити, якщо саме ядро ​​знаходиться у файловій системі, яку завантажувач не розпізнає? Як послідовно завантажуються такі речі, завантаження kernel, завантаження bootloader, монтажний /bootкаталог, /etc/fstabфайл читання тощо
yegle

3

Спробуйте встановити та використовувати завантажувальну схему .


1
дякую за вказівник, я насправді прагну представити візуалізуючий потіковий документ про те, що відбувається під час завантаження і в чому приймається рішення.
Nikhil Mulley

1
дякую @Alexander Я встановив його на моїй Fedora, і він пропонує дуже детальний png
Абхішек
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.