LINUX.ORG.RU
решено ФорумAdmin

[идиотизм] обновления ядра

 


0

1

В принципе и сам понимаю, но хочется знать наверняка. Debian, после обновления ядра той же самой версией (допустим security update) систему надо перезагружать полностью, т.к. только тогда обновления вступят в силу. Правильно? :))

★★

пока не перезагрузитесь будет работать старое ядро, даже если вы его «сотрёте».

Вроде в федоре планировали сделать горячую замену ядер. Только я не знаю зачем.

drBatty ★★
()
Ответ на: комментарий от drBatty

В общем я так и думал. Спасибо большое :))

Хотя вот еще, спрошу сразу. По сути ведь перезагружать надо только после обновления ядра, или есть еще что-нибудь после чего надо?

Вроде в федоре планировали сделать горячую замену ядер. Только я не знаю зачем.

Наверно чтобы uptime не портить :))

static ★★
() автор топика

Правильно. Если хочешь без перезагрузки - такой проект есть но он жутко экспериментален. Он пока не внедрён нигде.

Если тебе не нравится то, что каждый раз нужно перескачивать заново 20 мегабайтов при незначительных изменениях, попробуй MOPS Linux - там незначительные изменения скачивают незначительное количество килобайт.

Zenithar
()
Ответ на: комментарий от static

Только MOPS Linux бросила развивать его компания и теперь он развивается под именем Agilia (кажется).

Zenithar
()
Ответ на: комментарий от static

>Хотя вот еще, спрошу сразу. По сути ведь перезагружать надо только после обновления ядра, или есть еще что-нибудь после чего надо?

по идее, нужно перезагружать только программы,которые обновляются. Причём все копии. deb пакеты сами должны перезагружать демоны, которые постоянно работают.

но я лично перезагружаюсь после больших обновлений - на всякий случай.

бывший MOPS называется www.agilialinux.ru/

drBatty ★★
()

сильно зависит от системы.
если десктоп - то я ребутаюсь только в случае обновлений ДЕ.
если сервер - и прямо горит, то только в случае обновлений ведра.
сервисы сами по себе и так прекрасно рестартуются.

tazhate ★★★★★
()

>после обновления ядра той же самой версией (допустим security update) систему надо перезагружать полностью

Ну, не знаю как в Debian, в несколько других дистрах, если хочется приключений на жопу - пробуй kexec.

Pinkbyte ★★★★★
()

Вопрос почти в тему: как отслеживать необходимость перезагрузки (обновления скачиваются и устанавливаются автоматически) и ребутить систему по крону? Бунта 10.04

adepto
()
Ответ на: комментарий от Pinkbyte

kexec - не то... Это тот же ребут без выхода в БИОС. И приключений не будет, оно нормально работает.

YAR ★★★★★
()
Ответ на: комментарий от YAR

>приключений не будет

если обновлять ядро одной и той же ветки - не будет. Но мы не ищем легких путей ;)

Кстати для security-апдейтов был какой-то другой способ с заменой ядра в оперативной памяти без ребута. kreplace что ли...

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

ksplice он звался. бред имхо.

ребут вообще-то нужен только при апдейте ядра.
все остальное можно осуществить и без оного.

Komintern ★★★★★
()

Ну в общем то да, демоны сами перезапускаются, а остальное впринципе и не весит запущенным постоянно. Так что только ядро и остается.

Спасибо всем за ответы :))

p.s. Вопрос касался именно серваков.

static ★★
() автор топика
Ответ на: комментарий от Zenithar

Это называется дельта-обновления. Для деба есть debdelta.

philosoft
()
Ответ на: комментарий от static

Вроде больше ничего нет. Для всего остального вполне достаточно telinit 1 && telinit 5 или как там у вас

annulen ★★★★★
()
Ответ на: комментарий от static

Кстати да, glibc

Рестарт процесса - и он живет с новой glibc. Рестарт делается всем кроме init, так что glibc вычеркиваем.

no-dashi ★★★★★
()
Ответ на: комментарий от no-dashi

>Рестарт процесса - и он живет с новой glibc. Рестарт делается всем кроме init, так что glibc вычеркиваем.

проще ребутнутся, чем всё перезапускать. И тут вот ещё какая беда: можно-ли гарантировать то, что процессы отпустят библиотеку в памяти? Предположим мы обновили либу L, которую юзают X и Y. Да, мы перезапустили X, но либа так и осталась в памяти - её юзает Y. И когда X запустится, разве для него в память загрузится вторая новая копия L? ИМХО так и будет юзаться старое L из памяти (на то у нас L и разделяемый объект).

Самое обидное, что комп перезагрузится в совершенно неожиданный момент, а если в новой L ошибка? придётся идти лично к этому компу, и разбираться.

И ещё: а если новое Y не работает со старой L? Очевидно, что в этом случае у нас сломается это самое Y, и хорошо, если мы это заметим.

Нет уж... Я лучше сразу перезагружусь, чем потом буду удивляться.

drBatty ★★
()
Ответ на: комментарий от drBatty

>И когда X запустится, разве для него в память загрузится вторая новая копия L?

Да. Пруфф:

echo -e '#include <stdio.h>\nvoid zz(){puts("ololo");}' >1.c
echo -e '#include <stdio.h>\nvoid zz(){puts("blabla");}'>2.c
echo 'extern void zz();int main(){ zz(); return 0; }'>3.c
echo -e '#include <unistd.h>\nextern void zz();int main(){ zz(); while(1) sleep(3600); return 0; }'>4.c

gcc -shared -fPIC 1.c -o libasdf.so
mkdir 1
gcc -shared -fPIC 2.c -o 1/libasdf.so
gcc 3.c -o 3 -L./ -lasdf
gcc 4.c -o 4 -L./ -lasdf

sudo ldconfig $HOME
./3; ./4 &
ps -C 4; mv 1/libasdf.so ./; ./3
$ sh test.sh
Пароль:
ololo
ololo
PID TTY TIME CMD
5307 pts/3 00:00:00 4
blabla

anon_666
()
Ответ на: комментарий от drBatty

>а если новое Y не работает со старой L?

Используйте дистрибутив с отслеживанием зависимостей, а не слаку же, ну.

anon_666
()
Ответ на: комментарий от drBatty

По коллективному решению анонимусов, drBatty не нужен.

anonymous
()
Ответ на: комментарий от Komintern

ksplice он звался. бред имхо.

ksplice - это не замена ядра в оперативной памяти, а наложение на него патчей без остановки работы. Полная замена - это kexec. Но kexec - это с остановкой работы, этакая «мягкая» перезагрузка системы без учатия BIOS'а и загрузчика.

Deleted
()
Ответ на: комментарий от Komintern

по-моему для мягкой перезагрузки достаточно убить init. не?

И что по твоему должно дать убиение init'а?

Deleted
()
Ответ на: комментарий от Komintern

инит инвольтирует к эгрегору ребута после убиения?

anonymous
()
Ответ на: комментарий от Zenithar

Если тебе не нравится то, что каждый раз нужно перескачивать заново 20 мегабайтов при незначительных изменениях, попробуй MOPS Linux - там незначительные изменения скачивают незначительное количество килобайт.

в пардусе тоже дельта-пакеты есть

derlafff ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.