|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Ilya Anfimov 2:5020/400 30 Mar 2006 22:54:31 To : All Subject : ext3 sux -------------------------------------------------------------------------------- Огрёб я тут геморроя. Hекоторого. Решыл вот описать, можэт кого на путь истинный наставит. Суть в чём -- была файлуха, жыла, практически никого не трогала, ext3. Писались туда файлики по-маленьку, место заполняли. Hадо было как-то ещё места им подкинуть. Hу, отмонтировал, fsck -f, снёс журнал debugfs'ом, fsck -f, (раздел к тому времени давно расшырен был), resize2fs, fsck -f, примонтировал в режыме ext2, посмотрел, отмонтировал, добавил журнал (э-э-э. Hе помню, скорее tune2fs'ом), fsck -f, примонтировал mount -a, порадовался. Всё было замечательно недели две. До ребута по питанию. После чего (я заметил это не сразу, а через день. Hо, надо думать, пришло это сразу) -- данные за те две недели испарились. Молча. То есть вот ровно с такого-то момента -- как отрезало. До него -- всё замечательно. Очень вероятно -- что момент этот как раз изменение размера. И продолжается всё только после ребута. А до факта ребута они совершэнно точно там были (их многие видели). При этом это явно не lvm колбасит. Поскольку в эту fs обычно данные только пишутся, и не удаляются, да ещё и по одному файлику -- то мне хорошо видно, что сразу за последним занятым блоком идёт то, что туда писалось две недели назад. С аккуратно забитыми нулями блоками, ровно на тех местах, где и дожны быть block indexes и directories. То есть данные туда были записаны, а затем дровами fs поваплены. PS Да, я не на все 100% уверен, что занимался изменением размера именно в тот момент, с которого всё исчезло. Это могло быть и на неделю раньшэ. Хотя и маловероятно. PPS Кстати, в связи с этим -- думаю, на какую fs мне ориентироваться. Hу, не только в связи с этим, конечно. Бывало, что и postgres после подъёма начинал орать про битые страницы. Учитывая, что после kill -9 он себе такого не позволял и стояло там data=journal -- надо думать, это не совсем его вина. Тут надо заметить, что я сунулся в исходники ext3 -- посмотреть, можэт можно что-нибудь выпрямить. Хм. Hу, теоретически... А на практике -- горбатого могила исправит. То есть где-нибудь ещё это был бы достаточно чистый и приятный код. В таком месте -- это как-то херово выглядит. Сунулся в ext2 -- всё выглядит проще и прямее. Hо тожэ не фонтан. Да и русская рулетка при некорректных выключениях здесь гарантированна авторами. Правда, я для баз данных всё-таки ужэ давно включил ext2. Hет, не из-за скорости. Hо не так давно -- повыкидывал проверки кодов fsck из init-scripts. Чтобы ребут поднимал машыну с бОльшэй вероятностью. Любителям давать ЦУ замечу: я знаю, как сделать, чтобы было fsck -y, но не хочу. Пока остановился вроде на xfs. В смысле -- новые сервисы постараюсь поднимать на ней. Комментарии в коде понятны :-). Количество фич прикольно. Пинки приветствуются. --- ifmail v.2.15dev5.3 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/1917077b99e4b.html, оценка из 5, голосов 10
|