Исправляем на FreeBSD ошибку ufs_dirbad: bad dir

Недавно один FreeBSD сервер начал перезагружаться в течении пары минут после запуска nginx, промежуток времени всегда отличался. Во время очередного падения я заметил на основной консоли (выводе на монитор, IPMI, или iDrac) ошибочку примерно следующего содержимого: 1 2 3 4 5 ... panic: ufs_dirbad: /usr/home: bad dir ino 37643418 at offset 10752: mangled entry cpuid = 3 KDB: stack backtrace: .... Это было странно, т.к. проверка ФС с помощью fsck -y в сингле проходила без проблем. Нужно было как-то решать эту проблему. Снова таки загружаемся в сингл, смотрим содержимое fstab 1 cat /etc/fstab в моём случае раздел /usr/home был примонтирован с устройства /dev/ada1p4. Снова запускаем проверку ФС, но немного по другому 1 fsck -t ufs -y /dev/ada1p4 В этот раз fsck находит и справляет ошибки. Выполняем 1 reboot и радуемся прекрасно работающему nginx. Совсем не обязательно чтоб это был nginx, статья была написана из личного опыта с примерами из forums.freebsd.org.

13 квітня 2016 · 1 хвилина · 150 слів · dimetrius