ПредишенСледващото

Този документ описва как да създадете и инсталирате initrd, което може да се наложи да използвате версия на ядрото на 4.x. Вижте също «човек mkinitrd».

Какво е Initrd?

initrd означава «първоначалната Ramdisk» (първоначалната виртуален диск). Първоначалната виртуален диск, това е една много малка Linux файлова система, която се зарежда RAM и монтиран като основна товарач, преди да се качи на главната основната файлова система.

Защо ми е необходим initrd?

Обичайната причина да използвате initrd е, че трябва да се зареди модули на ядрото, преди да инсталирате корен дял. Обикновено, тези модули са необходими за подпомагане на използван от корен дял (EXT3, ext4, Btrfs, XFS), или контролера файловата система, твърдият диск е свързан към (SCSI, RAID, и т.н.). По същество, има толкова много различни възможности, които съществуват в съвременните Линукс ядра, но не е практично да се опита да заредите друг ядрото, за да се задоволят нуждите на всички. А много по-гъвкаво решение е да се зареди стандартно ядро ​​и набор от модули за него.

Как мога да създам Initrd?

Най-лесният начин за създаване на initrd е да се използва mkinitrd сценария. включени в пакета на Slackware, че така наречената «mkinitrd». Ние ще минем през процеса на обновяване на ядрото Linux 4.4.14 родово с един пакет, който е в Slackware / а / директория.

Първо, уверете се, че модулите на ядрото на ядрото и mkinitrd пакет инсталиран (текущия брой версия може да са малко по-различни, така че това е само един пример):

Промяна на директория с / зареждане:

Сега ще се наложи да започне «mkinitrd». Аз използвам ext4 за основната файлова система, а от контролера с кола не се нуждае от специална подкрепа за мен, за да зареди, ще трябва само един модул ext4.

Тази команда ще направи две неща. Първо, създаване на директория / обувка / initrd-дървото, съдържащ initrd файловата система. И тогава той ще създаде initrd (/boot/initrd.gz) на това дърво. Ако искате, можете да направите някои допълнителни промени в / обувка / initrd-дърво /, а след това изпълнете mkinitrd отново без опции, за да пресъздаде образа. Това не е задължително да се направи, обаче, е да се мисли за това само напреднали потребители нужда.

Ето още един пример: Създаване на initrd изображение с помощта на Linux 4.4.14 ядрото модул към системата с ext4 дял на корен / сътрудничество / sdb3:

Сега, след като съм създал Initrd, как мога да го използвам?

Сега, след като сте се погрижили Initrd (/boot/initrd.gz), вие ще искате да го заредите с ядрото по време на зареждане. Ако използвате LILO буутлоудъра, вие ще трябва да редактирате файла /etc/lilo.conf на файла и добавете ред, за да заредите Initrd. Ето един пример на секцията lilo.conf, което показва как се прави:

Initrd заредена в съответствие «initrd = /boot/initrd.gz». Просто добавете тази линия, непосредствено под линията, използван от образа на ядрото. Запазете файла и след това изпълнете отново LILO (чрез набиране «Лило» от командния ред). Трябва да имате «Лило» всеки път, когато редактирате lilo.conf или пресъздаде Initrd.

Initrd заредена в съответствие «initrd = /boot/initrd.gz». Просто добавете тази линия, непосредствено под линията, използван от образа на ядрото. Запазете файла и след това изпълнете отново LILO (чрез набиране «Лило» от командния ред). Трябва да имате «Лило» всеки път, когато редактирате lilo.conf или пресъздава initrd.

Други обувка товарачи, като Syslinux също поддържа използването на initrd. За подробности вижте документацията за тези програми, свързани с употребата на initrd с тях.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!