Обнуляются свежих файлы при kernel panic. Куда копать?

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
fesse
проходил мимо
Сообщения: 4
Зарегистрирован: 2011-08-19 11:32:06

Обнуляются свежих файлы при kernel panic. Куда копать?

Непрочитанное сообщение fesse » 2014-07-30 10:38:49

Доброго времени суток товарищи!

Столкнулся с маленькой проблемкой, помогайте разобраться. Пишу модули ядра (вернее пока только пытаюсь в этом всём разобраться), и модули тестирую на живой рабочей машине. Порядок действий таков - поредактировал исходник -> make -> kldload -> kldunload. В очередной раз по недоглядке вызвал snd_mtxfree с нулём в качестве параметра и в процессе kldload естественно получил kernel panic, комп завис "наглухо", никаких 15 секунд до автоперезагрузки, ctrl+alt+del, в общем только ресет помог. Но главное - файлы, которые изменялись непосредственно перед этим - исходник и объектный файл обнулились (размер=0, внутри пусто), сам скомпиленный модуль (.ko) вообще пропал.

Работает gmirror. SU+J включено. Вопрос - что сделать, чтобы подобное с файлами не повторялось? Пожалуйста не предлагайте виртуалки и резервные копии - это понятно, нужно именно разобраться, а то ведь могут и свет рубануть пока диссертацию набиваешь...

Код: Выделить всё

uname -a
FreeBSD ---.-- 10.0-RELEASE FreeBSD 10.0-RELEASE #3: Mon May 19 09:07:01 MSK 2014     ---@---.--:/usr/obj/usr/src/sys/WORKHORSE  amd64

Код: Выделить всё

tunefs -p /dev/mirror/gm0s1f
tunefs: POSIX.1e ACLs: (-a)                               disabled
tunefs: NFSv4 ACLs: (-N)                                   disabled
tunefs: MAC multilabel: (-l)                                disabled
tunefs: soft updates: (-n)                                  enabled
tunefs: soft update journaling: (-j)                    enabled
tunefs: gjournal: (-J)                                        disabled
tunefs: trim: (-t)                                              disabled
tunefs: maximum blocks per file in a cylinder group: (-e)  4096
tunefs: average file size: (-f)                                     16384
tunefs: average number of files in a directory: (-s)           64
tunefs: minimum percentage of free space: (-m)             8%
tunefs: space to hold for metadata blocks: (-k)             6408
tunefs: optimization preference: (-o)                           time
tunefs: volume label: (-L)
PS: Может быть gjournal включить? Не будет он конфликтовать с gmirror?
Последний раз редактировалось f_andrey 2014-07-30 16:08:42, всего редактировалось 1 раз.
Причина: Автору. пожалуйста, оформляйте сообщение по человечески.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

guest
проходил мимо

Re: Обнуляются свежих файлы при kernel panic. Куда копать?

Непрочитанное сообщение guest » 2014-07-30 11:52:08

fesse писал(а):Доброго времени суток товарищи!

Столкнулся с маленькой проблемкой, помогайте разобраться. Пишу модули ядра (вернее пока только пытаюсь в этом всём разобраться), и модули тестирую на живой рабочей машине. Порядок действий таков - поредактировал исходник -> make -> kldload -> kldunload. В очередной раз по недоглядке вызвал snd_mtxfree с нулём в качестве параметра и в процессе kldload естественно получил kernel panic, комп завис "наглухо", никаких 15 секунд до автоперезагрузки, ctrl+alt+del, в общем только ресет помог. Но главное - файлы, которые изменялись непосредственно перед этим - исходник и объектный файл обнулились (размер=0, внутри пусто), сам скомпиленный модуль (.ko) вообще пропал.

Работает gmirror. SU+J включено. Вопрос - что сделать, чтобы подобное с файлами не повторялось? Пожалуйста не предлагайте виртуалки и резервные копии - это понятно, нужно именно разобраться, а то ведь могут и свет рубануть пока диссертацию набиваешь...
SUJ - сами же указываете свою проблему, кривой пока journal, паника, свет - получаете потерю только что изменяемых
файлов, да еще в купе с gmirror
PS: Может быть gjournal включить? Не будет он конфликтовать с gmirror?
не должен, размеется, предварительно -> single user -> tunefs -j disable (SUJ -> SU)
медленно будет однако, с gjournal.

ps. чем Вам virtualbox для этих целей не угодил?

fesse
проходил мимо
Сообщения: 4
Зарегистрирован: 2011-08-19 11:32:06

Re: Обнуляются свежих файлы при kernel panic. Куда копать?

Непрочитанное сообщение fesse » 2014-07-30 12:08:50

Благодарю за совет, вырубаю SU+J. А что касается виртуалбокса, то есть у меня (возможно, дурная) привычка всё более-менее низкоуровневое писать и тестить на реальном железе, однажды было что написал кучу кода, а на железе он заработал не так, как на виртуалке, и сиди потом голову ломай. Правда то было давно и под форточки...

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35480
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Обнуляются свежих файлы при kernel panic. Куда копать?

Непрочитанное сообщение Alex Keda » 2014-08-01 16:58:36

на софтупдатесах также бывает
--
вообще, поредактирвали конфиги, наберите пару раз e меня уже в привычку вошло.
правда, не из-за фри а линупса.... но всё же =)
Убей их всех! Бог потом рассортирует...

snorlov
подполковник
Сообщения: 3929
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Re: Обнуляются свежих файлы при kernel panic. Куда копать?

Непрочитанное сообщение snorlov » 2014-08-01 22:21:10

fesse писал(а):Благодарю за совет, вырубаю SU+J. А что касается виртуалбокса, то есть у меня (возможно, дурная) привычка всё более-менее низкоуровневое писать и тестить на реальном железе, однажды было что написал кучу кода, а на железе он заработал не так, как на виртуалке, и сиди потом голову ломай. Правда то было давно и под форточки...
Заюзайте SU+GJOURNAL, почти та же технология,только испытанная временем, а еще лучше zfs, в случае su+j лучше заюзать версию 9.3, там эти болячки вылечены