The Diary
Дневникът на Георги
<- Неделя, 4 Юни 2006 | Начална страница | Вторник, 6 Юни 2006 ->
Понеделник, 5 Юни 2006
При отдалечена смяна на ядро и рестартиране на машината винаги има възможността нещо да се обърка. Или машината няма да тръгне или ядрото ще се окаже неподходящо. При подобен проблем вероятно ще се наложи да отидете физически до машината и да оправите бозите, които сте натворили. На мен ми се е случвало доста пъти. :)
Долните няколко съвета ще ви спестят много downtime, ходене на място, нерви и псувни от страна на ползващите машината, на която пипате ядрото. Хитринките ги видях в lkml, предполага се, че ползвате lilo за начално зареждане, за да ги ползвате. Ако някой знае подобна конфигурация за grub или gujin - да казва.
1. Компилирайте новото ядро и го добавете в края на /etc/lilo.conf
като сложите label=new-kernel
за име.
2. В секцията на новото ядро добавете реда append="panic=10"
. По
този начин при сериозен проблем с ядрото или не откриване на root файловата
система, десет секунди след това машината ще се рестартира.
3. Възможно най-рано в стартиращите скриптовете изпълнете командата sysctl -w kernel.panic_on_oops=1
.
Ако вашата дистрибуция ползва sysctl достатъчно рано, просто добавете в /etc/sysctl.conf
реда kernel.panic_on_oops=1
. Чрез тази настройка указвате всяка
появила се грешка да се счита за фатална и съответно ще предизвиква рестарт
след 10 секунди.
4. Стартирайте lilo -R new-kernel
, за да може при следващият рестарт
lilo да зареди new-kernel. new-kernel ще се зареди само веднъж, а при повторен
рестарт да ползва стандартното ядро.
5. Използвайте cron или at, за да насрочите автоматичен рестарт на машината
5 минути след стартирането й. Това е полезно ако например мрежовата карта не
запали и отдалеченият ви достъп се окаже "отрязан". Командата е
следната: echo "/bin/sync; umount -a -l; sleep 5; /sbin/reboot -f " | at now + 5min
След като сте се подготвили вече може да рестартирате машината. Ако всичко е успешно след зареждането на новото ядро, се логнете в машината и изтрийте настрочения след пет минути рестарт, променете sysctl настройката за рестартиране при грешка и направете тестовото ядро да се зарежда по подразбиране.
Ако тестовото ядро не се стартира или поради някаква причина нямате отдалечен достъп до машината, просто изчакайте пет минути и машината ще се стартира с предишното работещо ядро.
[ Коментари: 8 ]Коментари
Извинявай, забвавих да добавя, че трябва да спазваш тези правила:
http://www.gnu.org/software/grub/manual/html_node/Booting-once_002donly.html#Booting-once_002donly
За да постигнеш това което си направил с LILO
По-добра идея. Купете си KVM switch-ове, дето може да се стига по тях по IP, и не се мъчете :))))
(знам, че са скъпи, ама какво да се прави,като са животоспасяващи)
С две ръце гласувам за КВМ -то :). Аз ползвам такова вече 3 години и определено е по-добре от въртелите. Силно препоръчвам и управляеми разклонители ;).
KVM-тата са готини :) Ама напоследак пазарувам от HP - та там си има iLo - а то има и малко екстри, примерно виртуален бутон на захранването, виртуално CD/DVD,свързано с това на работната ти станция или с image на диска ти ... глезотийка си е.
Може ли малко връзки за KVM switch-овете. Мисля, че ще ми се пригодят и на мен.
@Пейо: aten.com, aten-bg.com
Супер статия много ми помогна :)
Disclaimer: Except where otherwise noted all opinions expressed here are personal
opinions of the author and do not reflect official opinions of my employer or
any other person, company or organization associated with the author.
Copyright: Except where otherwise noted the content of this site is licensed under a
Creative Commons Attribution License. Текстът на договора за ползване на български
Copyright (cc) 2003-2011 Georgi Chorbadzhiyski. Some rights reserved.
Comments, texts and pictures not signed by me are property of their respective owners.
Страницата е генерирана от Glog v3.99-test
Директно от manual-а на GRUB:
13.1.2 fallback
— Command: fallback num...
Go into unattended boot mode: if the default boot entry has any errors, instead of waiting for the user to do something, immediately start over using the num entry (same numbering as the default command (see default)). This obviously won't help if the machine was rebooted by a kernel that GRUB loaded. You can specify multiple fallback entry numbers.
Много полезно... Заради тази опция на GRUB смених bootloader-ите на на няколко сървъра.
Написа Мариян на 06-Jun-2006 13:23