Відповіді:
Коли завантажувач викликає ядро, він передає йому параметр, який називається root. Отже, як тільки ядро закінчиться ініціалізацією, воно буде продовжуватись, встановивши заданий кореневий розділ до /та потім викликаючи /sbin/init(якщо це не було замінено іншими параметрами).
Тоді initпроцес запускає решту системи, завантажуючи всі служби, визначені для запуску, у вашому рівні запуску за замовчуванням.
Залежно від вашої конфігурації та системи init, яку ви використовуєте, між тими, які я згадав, може бути кілька інших кроків. В даний час найпопулярнішими системами init в Linux є SysVInit (традиційна), Upstart і Systemd. Більш детальну інформацію про процес завантаження ви можете знайти в цій статті у Вікіпедії .
Ось спрощений приклад конфігурації Grub. Важлива частина відповіді на ваше запитання - це другий та останній рядки root=/dev/sda3:
menuentry 'Gentoo GNU/Linux' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-40864544-2d0f-471a-ab67-edd7e4754dae' {
set root='hd0,msdos1'
echo 'Loading Linux 3.12.6-gentoo-c2 ...'
linux /kernel-3.12.6-gentoo-c2 root=/dev/sda3 ro
}
У багатьох конфігураціях ядро монтується /в режимі лише для читання, а всі інші параметри встановлюються за замовчуванням. У /etc/fstabможна задати параметри файлової системи , які потім будуть застосовуватися один раз ініціалізація перемонтують його.
Запис fstabпотрібен, якщо ви хочете вказати деякі параметри кріплення, що не використовуються за замовчуванням. Однак на сьогодні systemdправильний пристрій ядра та fstype у fstabне потрібні. Ви можете замінити кореневий запис чимось на зразок:
#UUID=8f74237d-b689-4beb-9d1f-f60b426c9969 / ext4 rw,relatime,data=ordered 0 1
dummy / auto rw,relatime,data=ordered,debug 0 1
і параметри кріплення все ще вшановуються системою.
Ви можете використовувати будь-яке неправильне ім’я пристрою, наприклад /dev/sdz1, крім поганого UUID. З поганим UUID повідомлення буде надруковано під час завантаження:, Failed to start Remount Root and Kernel File Systemsале система все одно завантажується.
initпроцес монтує речі у/etc/fstabвідповідності з параметрами, які зазвичай означають повторне встановлення кореневого розділу для читання-запису.