>block(3,3) - что это вообще за устройство то такое? поясните...
Это мажор и минор номерА рутового устройства: 3,3 - это hda3, т.к. мажор hda - 3.
>mkinitrd - что это? и как его запустить?
>P.S. нельзя ли в двух словах пояснить, как все это исправить? И
>чтобы линукс запускался без вопросов?
mkinitrd делает initial ramdisk(используемый ядром при старте) и помещает в него необходимые скрипты(в которых, например, создается блочный девайс командой mknod) и модули ядра(если таковые есть) необходимые в процессе загрузки.
чтобы была возможность работать с initrd в ядре должна быть включена поддержка
CONFIG_BLK_DEV_INITRD=y
Наиболее часто части ядра, необходимые, в процессе загрузки(такие как драйвера контроллеров жестких дисков) вкомпилируют в ядро, а не собирают в виде модулей.
initrd также нужен в система использующих udev
например, я собираю ядро так
make distclean
make menuconfig
make
make modules_install
makeinitrd --omit-scsi-modules --omit-raid-modules --omit-lvm-modules /path_to_initrd_img X.XX.X-X
X.XX.X-X - версия ядра(mkinitrd будет искать модули в /lib/modules/X.XX.X-X)
Набор параметров для mkinitrd у Вас будет свой.
Не смотря на все мои изливания, все же стОит прочитать какой-н. HOWTO по сборке и установке ядра, ну и man mkinitrd(как я уже писал).