Берем файлы: pvscsi.ko, vmxnet.ko, vmxnet3.ko из vmware-tools -> https://packages.vmware.com/tools/releases/latest/rhel5/x86_64/index.html
1. Распаковываем RPM:
rpm2cpio VMwareTools-4.0.0-latest.i386.rpm | cpio -idmv
Далее берем исходный файл загрузки ядра initrd.img расположенный в каталоге isolinux, дистрибутива Linux.
Распаковываем его во временную папку:
gzip -dc ~/tmp/initrd.img | cpio -ivd
Внутри распаковываем модули ядра modules.cgz:
cd modules
gzip -dc modules.cgz | cpio -ivd
Копируем в него файлы модулей pvscsi.ko, vmxnet.ko, vmxnet3.ko.
В файлы списка модулей добавляем строки (обязательно проверить использование пробелов и табуляции, как и в строчках выше по файлу).
~/tmp/modules/module-info
pvscsi scsi "VMware PVSCSI driver" vmxnet eth "VMware vmxnet ethernet driver" vmxnet3 eth "VMware vmxnet3 ethernet driver" |
~/tmp/modules/modules.alias
alias pci:v000015ADd000007C0sv*sd*bc*sc*i* pvscsi alias pci:v000015ADd00000720sv*sd*bc*sc*i* vmxnet alias pci:v00001022d00002000sv*sd*bc*sc*i* vmxnet alias pci:v000015ADd000007B0sv*sd*bc*sc*i* vmxnet3 |
~/tmp/modules/modules.dep
pvscsi: scsi_mod |
~/tmp/modules/pci.ids
15ad VMware 0405 SVGA II Adapter 0710 SVGA Adapter 07c0 PVSCSI SCSI Controller 0720 VMXNET Ethernet Controller 07b0 VMXNET3 Ethernet Controller |
Запаковываем файл modules.cgz и удаляем папку ядра:
find 2.6.18-164.el5 | cpio -H newc -ov | gzip -9 -c - > modules.cgz
rm -rf 2.6.18-164.el5
Запаковываем initrd.img
cd ..
find . | cpio -H newc -ov | gzip -9 -c - > initrd.img
Далее готовый файл загрузчика возвращаем в дистрибутив Linux.
--------------------------------------------------------------------------------------------------------------
Обновление initrd на "живой" машине.
--------------------------------------------------------------------------------------------------------------
1) Берем живой initrd из boot:
cp /boot/initrd-2.6.18-419.el5.img /tmp/initrd-2.6.18-419.el5.img
2) Распаковываем:
gzip -dc /tmp/initrd-2.6.18-419.el5.img | cpio -ivd
3) Копируем модули pvscsi.ko, vmxnet.ko в initrd после распаковки в папку lib.
4) Дописываем в файл init:
echo "Loading pvscsi.ko module" insmod /lib/pvscsi.ko insmod /lib/vmxnet3.ko insmod /lib/vmxnet.ko |
5) Собираем назад и кладем в boot:
find . | cpio -H newc -ov | gzip -9 -c - > initrd-2.6.18-419.el5.img