Своп поломалася
deka 3 февраля, 2013 - 06:25
Коллеги, фигня тут какая-то со свопом. Когда случилось -- не знаю, обратил внимание где-то неделю назад, когда обнаружил возбудившийся OOM-KILLER.
# uname -a Linux pioneer 3.5.7-gentoo-generic #1 SMP Sun Nov 4 04:04:01 MSK 2012 i686 Intel(R) Pentium(R) 4 CPU 2.80GHz GenuineIntel GNU/Linux # swapon -V swapon (util-linux 2.21.2) # mkswap -V mkswap from util-linux 2.21.2 # mkswap /dev/sdb2 Setting up swapspace version 1, size = 3145724 KiB no label, UUID=11dcc6ea-bf9d-4600-bb8b-4a65741b4ab3 # swapon /dev/sdb2 swapon: /dev/sdb2: read swap header failed: Invalid argument
Та же операция с файлом такого же размера проходит "на ура".
# dd if=/dev/zero of=/home/internal/files00/swap00.fs bs=1M count=3072 3072+0 records in 3072+0 records out 3221225472 bytes (3.2 GB) copied, 86.5716 s, 37.2 MB/s # mkswap /home/internal/files00/swap00.fs Setting up swapspace version 1, size = 3145724 KiB no label, UUID=3ed57bbc-2d49-4589-9052-4550ab739f89 # swapon /home/internal/files00/swap00.fs # swapon -s Filename Type Size Used Priority /home/internal/files00/swap00.fs file 3145724 0 -1 #
Грешил на глючащий винт, но сейчас поставил свежий винт, та же фигня...
До кучи с другими двумя винтами на той же машинке тоже какая-то фигня:
... Device Boot Start End Blocks Id System /dev/sdc1 2048 4196351 2097152 82 Linux swap / Solaris ... # swapon /dev/sdc1 swapon: /dev/sdc1: read swap header failed: Inappropriate ioctl for device
Такая же поганка со вторым точно таким же винтом. Оба этих винта одинаковы, по 1ТБ, на каждом отрезана партиция 2Г под своп, остальное -- отдано под миррорку md.
Гуглится по соответвующим запросом не совсем внятное, то есть не помогает -- советы сводятся к тому, что "mkswap ещё раз" и ответом "о, помогло".
»
- Для комментирования войдите или зарегистрируйтесь
.
dmesg | grep -iw 'failed'
выдаёт что-то похожее:
?
Ничего похожего.
Ничего похожего.
Ну так и сделай swapoff
Ну так и сделай
Ну я не совсем дебил-то.
Ну я не совсем дебил-то. Пробовал переделывать своп, получаю те же тестикулы. На дисках, в смысле. На файле всё время всё ок.
sudo -i bash wi ~ # echo p |
sudo -i bash
wi ~ # echo p | fdisk /dev/sda | grep 82
Welcome to fdisk (util-linux 2.21.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Disk /dev/sda: 250.1 GB, 250058268160 bytes
/dev/sda2 112455 16129259 8008402+ 82 Linux своп / Solaris
Вот все партиции, на которых
Вот все партиции, на которых эвфехт примерно одинаковый.
Разница в том, что на 2 последних последняя ошибка -- inapropriate ioctl почему-то. Точнее, примерно понятно почему.
См. ветку ниже.
Покажи
На это только что натыкался
На это только что натыкался при апгрейде ;) udev 197й, ядро поправил. Более того, поменял комп, на новый диск перетащил содержимое старого. Те же тестикулы ;(
По ЖЖшным советам подебагил swapon, результат немного удивил.
1. Так выглядит результат (часть его) swapon на файле, который вполне себе нормально монтируется.
2. Так выглядит часть результата на ФС, которая в итоге не монтируется:
То бишь почему-то оно с диска читает, промахиваясь на 1 байт ;( Откуда это -- совершенно не понимаю. Если это была бы регулярная ошибка -- почему работает всё остальное?