![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Modificar un initrd de LinuxFuente: http://www.thegeekstuff.com/2009/07/how-to-view-modify-and-recreate-initrd-img/mount -t auto /dev/md1 /boot cd /boot cp initrd.img-2.6.16-2-686 initrd.img-2.6.16-2-686.ori cd /tmp mkdir t cd t gzip -dc /boot/initrd.img-2.6.16-2-686.ori | cpio -id vi scripts/init-premount/udev find . | cpio --create --format='newc' > /tmp/newinitrd cd .. gzip newinitrd cp newinitrd.gz /boot/initrd.img-2.6.16-2-686 reboot NOTA: Esto lo he usado para hacer que un HojaRuta funcione en la plataforma de Solaris 10. Como tiene los discos configurados en la BIOS como IDE en vez de AHCI (debido a que el AHCI de esa plataforma no están soportados por el linux tan antiguo que tienen los maestros de hojaruta), he modificado lo siguiente: 1. en el /boot/grub/menu.lst He cambiado la línea de arranque del kernel a: kernel /vmlinuz-2.6.16-2-686 root=/dev/md2 md=2,/dev/hda6,/dev/hdc6 ro 2. He editado el scripts/init-premount/udev a:
#!/bin/sh -e
PREREQS=""
prereqs() { echo "$PREREQS"; }
case "$1" in
prereqs)
prereqs
exit 0
;;
esac
#--------
modprobe md
modprobe raid1
modprobe ide-generic
modprobe ide-disk
#--------
echo > /proc/sys/kernel/hotplug
udevd --daemon
mkdir -p /dev/.udev/db/ /dev/.udev/queue/
udevtrigger
udevsettle || true
#--------
mknod /dev/md1 b 9 1
mknod /dev/md2 b 9 2
mknod /dev/md3 b 9 3
mdadm --assemble --run /dev/md1 /dev/hda1 /dev/hdc1
#--------
# Leave udev running to process events that come in out-of-band (like USB
# connections)
|