IT News: Digital Camera, OS, Laptop, Smartphone, Smart TV, Sound...

The Author's Project by Valeri N.Kravchuk
Сайт проверен Dr.Web
Меню сайта
  • Главная страница
  • Информация о сайте
  • Дневник
  • Каталог файлов
  • Обратная связь
  • Каталог сайтов
  • FAQ
  • Доска объявлений
  • Форум
  • Фотоальбом
  • Категории раздела
    Автомобильные гаджеты, ремонт... [220]
    Безопасность IT [484]
    Блоки питания, Power Banks, зарядки... [490]
    Видеорегистраторы [220]
    Гаджеты для спорта и здоровья... [190]
    Гаджеты, аксессуары... [625]
    Измерительная техника, инструменты [449]
    Накопители данных [226]
    Нетбуки, Ноутбуки, Ультрабуки [680]
    Мультиварки, блендеры и не только... [158]
    Планшеты [758]
    Радар-детекторы [26]
    Роботы-пылесосы [37]
    Своими руками [357]
    Сети, сетевые технологии, оборудование... [269]
    Смартфоны [4966]
    Фотокамеры, объективы, искусство фотографии.. [543]
    Умный дом [47]
    Электронные книги [96]
    CB, LPD, PMR- связь... [171]
    DECT, IP-телефоны [18]
    Drones, boats, cars... [108]
    electric cars [35]
    GPS-навигаторы, трекеры... [51]
    Linux и не только [4380]
    mini computers и не только... [409]
    News IT, Это интересно, ликбез... [1113]
    Smart TV, UltraHD, приставки, проекторы... [414]
    Smart Watch [263]
    Sound: наушники, плееры, усилители... [616]
    Windows 10... [298]
    Windows 11 [28]
    Погода

  • Метеорадар БРЕСТ
  • Погода в Бресте от www.yr.no

    Яндекс.Погода БРЕСТ

  • Интересные ссылки

    COMPIZOMANIA

    Наш опрос
    Оцените мой сайт
    Всего ответов: 1340
    Статистика
    Анализ веб сайтов

    Яндекс.Метрика

    Рейтинг@Mail.ru Яндекс цитирования

    Russian America Top. Рейтинг ресурсов Русской Америки.

    eXTReMe Tracker

    Правильный CSS!


    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    Locations of visitors to this page
    Форма входа
    Главная » 2013 » Октябрь » 9 » Загрузка ОС Linux без загрузчика
    16:49
    Загрузка ОС Linux без загрузчика

    Загрузка ОС Linux без загрузчика 

    Введение


    Здесь по возможности я постараюсь как можно проще и детальнее ответить на вопрос:
    «Как можно загрузить Linux (на примере ubuntu) без использования загрузчика такого как GRUB 2, iELILO»
    Здесь не будет разбираться как запустить/установить Ubuntu в режиме [UEFI only]. Для этого обратитесь сюда help.ubuntu.ru/wiki/установка_дистрибутива_на_компьютер_с_efi
    и сюда help.ubuntu.ru/wiki/lubuntu-osinstallation
    Все действия будут производиться на уже работающей системе.

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

    Требования


    1. UEFI вместо BIOS (выставить режим [UEFI only]);
    2. OS 64-bit;
    3. Linux (Kernel >= 3.3);

    Входные данные


    Установленный дистрибутив lubuntu-13.04-desktop-amd64 с выставленным режимом [UEFI only]. Отключил Fast Boot (После завершения можно включить).

    Полученная таблица разделов
    user@pc:~$ sudo parted /dev/sda print
    
    Model: ATA mSata Smartbuy 3 (scsi)
    Disk /dev/sda: 32,0GB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    
    Number Start End Size File system Name Flags
     1 1049kB 99,6MB 98,6MB fat32 boot
     2 99,6MB 27,8GB 27,7GB ext4
     3 27,8GB 32,0GB 4182MB linux-swap(v1)
    

    Необходимо обратить внимание на 1 раздел, с него и будет осуществляться прямая загрузка ядра без участия отдельного загрузчика (например GRUB 2), предъявляемые к нему требования:

    1. Выставленный флаг boot;
    2. Рекомендуемый размер до 512 МБ (встречал разные рекомендации каким он должен быть размером, в основном это 200-300 МБ, от себя замечу, что на деле он будет занят на 5.3 МБ);
    3. Файловая система fat32/fat16/fat12 (UEFI имеет поддержку);

    данный раздел не обязательно должен идти первым, главное, соблюсти требования выше (от себя советую поставить первым).

    Подготовительные этапы выполнены, мы имеем работающую 64 битную операционную систему с выставленным режимом UEFI only и разделом для ядра (в данный момент там расположен GRUB, рядом мы положим ядро).

    Получаем и настраиваем своё ядро


    Загружаем ОС, открываем консоль.
    Для того, чтобы ядро могло загрузиться без использования загрузчика, ему необходимо указать диск который будет монтироватся в качестве корневого, чтобы это сделать, нужно собрать своё ядро и указать ему опцию
    CONFIG_CMDLINE="root=/dev/sda2 ro"
    

    у меня ОС установлена на диске sda2.
    Обычно эту строку передаёт загрузчик GRUB вместе со многими другими параметрами

    Если у Вас другая версия дистрибутива

    Замечание
    На сайте разработчика Ubuntu написано, что если вы используется не оригинальное ядро, а собрали его сами, то им будет трудно вам оказать поддержку и отчёты об ошибках не присылайте. (https://help.ubuntu.com/community/Kernel/Compile)


    Получим необходимые инструменты (может занять продолжительное время)
    sudo apt-get install fakeroot build-essential crash kexec-tools makedumpfile kernel-wedge
    sudo apt-get install libncurses5 libncurses5-dev libelf-dev asciidoc binutils-dev
    

    Теперь создадим директорию в которой будем совершать все действия, я назову папку v2, что будет символизировать модификацию последнего ядра системы.
    user@pc:~$ mkdir v2
    user@pc:~$ cd v2
    

    Получить исходники последней версии ядра и подготовить окружение
    user@pc:~/v2$ apt-get source linux-image-$(uname -r)
    user@pc:~/v2$ sudo apt-get build-dep linux-image-$(uname -r)
    

    Перейдём в папку linux-3.8.0
    cd linux-3.8.0
    

    Теперь приступим к модификации конфигурации ядра
    chmod a+x debian/scripts/*
    chmod a+x debian/scripts/misc/*
    fakeroot debian/rules clean
    fakeroot debian/rules editconfigs
    

    После выполнения последней команды вначале будет выведено уведомление:
    Do you want to edit config: amd64/config.flavour.generic? [Y/n]
    

    Здесь как раз указано, что редактируем конфигурацию для 64 битного ядра, вводим Y, жмём ввод и получим окно


    теперь открываем поиск (клавиша '/'), вводим cmdline и жмём ввод и видим то, что на скриншоте


    затем жмём цифру 2 и переходим к правке параметра 'Built-in kernel command line', жмём 'y' и в данном поле выставляется звёздочка, символизирующая, что данный режим включен, теперь переходим на поле которое ниже, жмём ввод и вводим в него заветное
    root=/dev/sda2 ro
    

    Эта и есть та самая опция, ради которой всё затевалось (Вместо sda2 подставьте свой диск).
    Мы получили данный конфиг:


    Небольшое отступление (можно пропустить)

    Теперь необходимо установить ещё некоторые опции ядра.
    Водим в консоль (запустите ещё одну)
    lspci -n
    

    и полученный вывод вставляем в окно ввода на сайте
    Debian GNU/Linux device driver check page
    жмём check, получаем:


    из этого списка нам нужно включить драйвер дискового контроллера, в моём случае это ahci (Строка 'Sata Controller', Столбец 'Driver').
    Снова жмём '/' для поиска и вводим 'ahci'. Для верности отмечаем все три найденных варианта для встраивания SATA_AHCI_PLATFORM, SATA_ACARD_AHCI и SATA_AHCI.

    Теперь выбираем везде 'exit', в конце соглашаемся, сохраняем настройки выбором Yes. После чего в консоле отказываемся от редактирования конфигураций для других платформ, ибо они нам не нужны.

    Сборка ядра


    user@pc:~/v2/linux-3.8.0$ fakeroot debian/rules clean
    user@pc:~/v2/linux-3.8.0$ fakeroot debian/rules binary-headers binary-generic
    

    Теперь остаётся только подождать пока ядро будет собрано. В зависимости от мощности вашего компьютера зависит время сборки ядра, на моей машине процесс сборки занял чуть менее часа.

    После сборки копируем полученное ядро на загрузочный раздел в папку 'EFI/boot', т.к раздел примонтирован к папке /boot/efi, в результате имеем путь /boot/efi/EFI/boot/
    sudo mkdir -p /boot/efi/EFI/boot/
    

    Теперь необходимо скопировать ядро в эту папку дав ему название bootx64.efi
    user@pc:~/v2/linux-3.8.0$ sudo cp ./debian/build/build-generic/arch/x86_64/boot/bzImage /boot/efi/EFI/boot/bootx64.efi
    

    Стоит отметить, что загрузка с использованием загрузчика GRUB всё равно будет доступна, стоит только переключить в UEFI (нажать del или F12 при загрузке). Это может пригодиться, если ядро по каким либо причинам не загрузилось.

    Теперь необходимо сообщить UEFI о том, что мы хотим сделать загрузочным наше ядро, для этого нужно установить программу которая умеет редактировать настройки UEFI.
    sudo apt-get install efibootmgr
    

    Убедимся, что у Вас есть доступ к UEFI переменным
    sudo modprobe efivars
    

    Если отработало без ошибок, делаем последний штрих. Добавим наше ядро в UEFI с приоритетом на загрузку №1, название в кавычках после --label можете ввести своё. Регистр в пути к загрузчику не имеет значения, т.к он не регистро-зависимый.
    sudo efibootmgr --create --part 1 --label "Linux" --loader '\efi\boot\bootx64.efi'
    

    Теперь в меню загрузки UEFI добавлена новая строчка с названием 'Linux', которая осуществляет прямую загрузку ядра. На этом всё. Можно перезагрузить компьютер и убедиться, что ядро загружается минуя загрузчик.
    sudo reboot
    

    Чтобы убедиться, что ядро загружено вами собранное, введите
    cat /proc/cmdline
    

    Вы увидете список параметров, передаваемых ядру при загрузке (мы их сами указали ранее):
    root=/dev/sda2 ro
    


    Цель достигнута! Спасибо за внимание!

    http://habrahabr.ru/post/196926/
    Категория: Linux и не только | Просмотров: 1572 | Добавил: laptop | Рейтинг: 0.0/0
    Всего комментариев: 0
    Добавлять комментарии могут только зарегистрированные пользователи.
    [ Регистрация | Вход ]
    Волк слабее льва и тигра, но в цирке волк не выступает!
    Волк слабее льва и тигра, но в цирке волк не выступает!
    Волк - единственный из зверей, который может пойти в бой на более сильного противника.
    Если же он проиграл бой, то до последнего вздоха смотрит в глаза противника. После этого умирает...

    Праздники сегодня

    Поиск
    Календарь
    Архив записей
    Друзья сайта
  • Официальный блог
  • JEEP - the best! Mercedes - the best! Автомобильный портал города Бреста: технические характеристики с фото, авторынок, автоспорт...
    Наша кнопка
    IT новости с моего лаптопа...

    Внимание!
    Администратор сайта laptop.ucoz.ru не несет ответственности за содержание рекламных объявлений. Все используемые на сайте зарегистрированные товарные знаки принадлежат своим законным владельцам! Используемая со сторонних источников информация публикуется с обязательными ссылками на эти источники.
    Copyright Valeri N.Kravchuk © 2007-2024