manul XML path error filePath=
Поскольку иногда приходится иметь дело с сайтами, заражёнными вредоносными файлами (вирусами, бэкдорами, шеллами), помимо Linux-овых команд (поиска в файлах и каталогах find, grep, sed) и собственных скриптов временами использую специальное ПО для выявления вирусов. Антивирусная утилита для сайтов от Яндекса с грозным “кошачьим” именем манул в некоторых ситуациях стала ругаться на
Если точнее, то ошибка, выводимая дружелюбным скриптом манул пользователю выглядела так:
Сервер перестал отвечать или ответил с ошибкой. Возможно, превышена допустимая нагрузка на хостинге. Процесс приостановлен на 1 минуту, затем процесс сканирования будет продолжен.
А ответ, возвращаемый сервером (при просмотре в Network) содержал следующую информацию:
XML path error filePath=… relativePath=… projectRootDir=… docRoot=…
Покопавшись в файлах каталога manul, я нашёл каталог tmp, в котором располагались файлы:
queue_offset.manul.tmp.txt
malware_log.manul.tmp.txt
malware_quarantine.manul.tmp.txt
scan_queue.manul.tmp.txt
Что интересно, файл, который выводился под “ползунком” (”полосой готовности”, она же progress bar) в браузере соответствовал последней строчке файла scan_queue.manul.tmp.txt, а числовое значение в файле offset - длине этого файла). То есть, файл в очереди был последним, однако полоса прогресса была далека от 100%-го значения:
Сканируем 5081 из 9357 …
Предварительных версий две:
- при подсчёте количества файлов была сделана ошибка;
- количество оставшихся файлов и количество файлов в очереди различаются. Возможно, причина в том, что используются различные методики подсчёта.
В общем, ошибка “manul XML path error” появляется не совсем из-за ошибки XML. Есть предположение, что причина может быть в “обходе” симлинков.