Я читал о различиях между ними из переполнение стека. Но мне все еще трудно понять tmpfs и реальные преимущества initramfs перед initrd.
Я обнаружил, что в RedHat EL 5 или Ubuntu 12.04 у меня есть только файлы initrd в / boot. Однако RedHat EL 6 имеет как файлы intird, так и файлы intramfs. Означает ли это, что только Redhat 6 реализовал intiramfs, и у нас все еще есть образ initrd?
Если под Redhat вы имеете в виду распространение, выпуск которого был прекращен десять лет назад, тогда, возможно, он поддерживал только initrd
и нет initramfs
. Но в более новых дистрибутивах initrd
имена в /boot
названы так по историческим причинам.
Был период, когда дистрибутивы поддерживали и то, и другое. Ядро знало разницу и могло заметить разницу во время загрузки. Но для простоты инструментов, генерирующих конфигурацию загрузки, для обоих форматов использовалось одно и то же имя файла.
Настоящий initrd
устарел уже давно. Вам нужно было создать файловую систему, которая должна иметь фиксированный размер, и для этого вам понадобится столько памяти. С участием initramfs
использование памяти будет соответствовать размеру реальных файлов, и его легче сгенерировать, когда вам не нужно выяснять размер файловой системы перед помещением в нее файлов.