Опубликовано

В субботу вечером мы должны были провести профилактические работы с сервером. Ничего особенного — только смести пыль, почистить радиаторы и проверить куллеры. И вот неожиданно при смене попытке снять радиатор на южном мосту он отвалился вмести с частью чипсета. В срочном порядке необходимо было перенести винты на новую техническую базу и загрузить сервер. Поставили.. нажали загрузка, но при загрузку вышло:

mount: could not find filesystem '/dev/root'
setuproot: moving /dev failed: No such file or directory
setuproot: error mounting /proc: No such file or directory
setuproot: error mounting /sys: No such file or directory
switchroot: mount failed: No such file or directory
Kernel panic - not syncing: Attempted to kill init

Решение данной проблемы очень простое, как оказалось.. Но мы то его не знали, поэтому сейчас расскажу, что делать в таких случаях
И так берем диск с Вашей опереционной системой (Я имею ввиду установочный). Загружаемся в Resuce Mode. Делаем chroot в Вашу установленную систему и там уже делаем:
mkinitrd -v -f /boot/initrd-$(uname -r).img $(uname -r)
Скорее всего вам нужно будет заменить
$(uname -r) на Ваши значения, которые можно взять из /boot/grub/grub.conf
В нашем случае строка была
mkinitrd -v -f /boot/initrd-2.6.32-200.13.1.el5uek.img 2.6.32-200.13.1.el5uek

Возможно в процессе создания ОС будет ругаться на отсутствие модулей hci — поэтому используйте опцию —builtin=и название того, что не может найти

Если Вы используете 64 битную ОС .. и у Вас CentOS (возможно в Fedora и Debian) придется сделать изменения в /etc/pam.d/login
заменив строку
#session required /lib/security/pam_limits.so
на
session required /lib64/security/pam_limits.so

Перегружаем сервер и наслаждаемся его работой.

Share and Enjoy:
  • Мой Мир
  • Facebook
  • Twitter

Добавить комментарий