Опишу что есть. Сервер HP с ОС Debian 7. На нем xen 4.1 Domain-0 . Гость тоже xen и тот же debian 7.
Имеется проблема с файловой системой ext4 у гостя. Работает работает а потом бац и вот:
Код: Выделить всё
EXT4-fs error (device xvda2): htree_dirblock_to_tree:587: inode #528458: block 2106047: comm tar: bad entry in directory: rec_len is smaller than minimal - offset=0(0), inode=0, rec_len=0, name_len=0
[4798396.423227] Aborting journal on device xvda2-8.
[4798396.423543] EXT4-fs (xvda2): Remounting filesystem read-onlyВот файл fstab гостя:
Код: Выделить всё
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
devpts /dev/pts devpts rw,noexec,nosuid,gid=5,mode=620 0 0
/dev/xvda1 none swap sw 0 0
/dev/xvda2 / ext4 noatime,nodiratime,errors=remount-ro,usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0,barrier=0 0 1Изначально barrier=0 не было, прочитал что есть баг в ксене и что лечится отключением барьеров, выключил. Прошло около 3 месяцев и казалась проблема решена. Как бац и снова этот косяк.
Файловая система при обнаружении ошибок монтируется в режим только для чтения, потом я вижу что все работает но не работает, перегружаю гостя и получаю:
Код: Выделить всё
[ 13.548767] EXT4-fs (xvda2): re-mounted. Opts: (null)
[....] Checking root file system...fsck from util-linux 2.20.1
/dev/xvda2 contains a file system with errors, check forced.
Deleted inode 655364 has zero dtime. FIXED.
/dev/xvda2: Inodes that were part of a corrupted orphan linked list found.
/dev/xvda2: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
(i.e., without -a or -p options)
fsck died with exit status 4
failed (code 4).
[....] An automatic file system check (fsck) of the root filesystem failed. A manual fsck must be performed, then the system restarted. T[FAILck should be performed in maintenance mode with the root filesystem mounted in read-only mode. ... failed!
[....] The root filesystem is currently mounted in read-only mode. A maintenance shell will now be started. After performing system maint[warne, press CONTROL-D to terminate the maintenance shell and restart the system. ... (warning).
Give root password for maintenance
(or type Control-D to continue):После перезагрузки должно было выполнится автоматическая проверка фс чего не произошло, видно выше. Делаю это вручную и выполняю ребут как того требует система. После этого все работает. Но на сколько долго не понятно.
У кого есть какие мысли по этому поводу? Можно ли как-то автоматизировать процесс, если не получится починить.