Однажны столкнулся с ситуацией, когда при попытке прочитать один из файлов, операционная система ругалась на невозможность его прочитать. При этом в /var/log/messages были сообщения вида:
Feb 27 19:42:02 server6 kernel: attempt to access beyond end of device
Feb 27 19:42:02 server6 kernel: md2: rw=0, want=7938979680, limit=1132839168
Файловая система была развёрнута на программном RAID 10 устройстве /dev/md2.
Проблема была решена выполнением двух действий:
- Ресинхронизация RAID массива с помощью команды:
echo 'repair' >/sys/block/md2/md/sync_action
Это действие абсолютно безопасно и не разрушает данные на массиве (во всяком случае не должно и у меня всё прошло нормально) и может выполняться в обычном рабочем режиме на живой примонтированной файловой системе.
- Проверка файловой системы с помощью команды:
fsck -y -f -C /dev/md2
Эту команду необходимо выполнять при отмонтированной файловой системе. Ключ -C необязателен, но так вы будете видеть процент выполнения проверки. Поскольку в процессе проверки файловой системы, возможны потери файлов, то перед проверкой рекомендуется сделать резервную копию файлов с этой файловой системы (на всякий случай).