Como extrair imagem initrd do RHEL iso e colocar um script em initrd / bin /

0

Eu escrevi um script de shell personalizado (comando), que eu quero colocar em initrd / bin e, em seguida, eu quero que ele seja copiado para o diretório Linux OS / opt / xyz. Onde xyz é personalizado diretório criado durante a instalação.

Como posso conseguir essa tarefa?

    
por Gaurav KS 19.12.2015 / 11:08

1 resposta

0

Como?

obtenha um exemplo de redhat initramfs

cp /boot/initramfs-2.6.32-220.el6.x86_64.img initramfs.img

o que temos?

  • initramfs.img: dados compactados gzip, do Unix, modificado pela última vez em: 22 de outubro às 07:04:25, compactação máxima

gunzip

gunzip < initramfs.img > initramfs.stage1
  • initramfs.stage1: Arquivo cpio ASCII (SVR4 sem CRC)

extraia

cpio -icv < initramfs.stage1
(lots of line)
usr/sbin
usr/sbin/eject
usr/sbin/chroot
96258 blocks

adicione minhas coisas

mkdir opt/xyz
date > opt/xyz/foo.txt

sem liderar / !!

refaça o cpio (eu excluo os arquivos initramfs. *)

find . -type f -print | cpio -ocv > ../newinitram.stage2
(lots of lines)
./usr/bin/mkfifo
./usr/sbin/eject
./usr/sbin/chroot
96186 blocks

o que temos?

  • ../ newinitram.stage2: Arquivo cpio ASCII (SVR4 sem CRC)

agora, comprima-o.

gzip -9 < ../newinitram.stage2 > newinitrd.stage3
  • newinitrd.stage3: dados compactados gzip, do Unix, modificados pela última vez: Sáb Dez 19 06:32:08 2015, compactação máxima

agora, inicializar seu kernel deve ser fácil.

    
por 19.12.2015 / 15:37