Ладно, теперь до меня дошло. После автоматического обновления Debian контроллер не запускался. Из логов я выяснил, что проблема была в том, что MongoDB нужно было восстановить. У меня получилось только с нескольких попыток. Вот что помогло:
service unifi stop
pkill -KILL mongo
if [ -f /var/lib/unifi/db/WiredTiger.lock ]; then rm /var/lib/unifi/db/WiredTiger.lock; fi
su -c "mongod --dbpath /var/lib/unifi/db --repair" unifi
service unifi start
Сначала нужно остановить контроллер. Это также закроет MongoDB. У меня оставались какие-то процессы, которые держали файлы, поэтому пришлось использовать pkill. Можно заменить на killall, если у вас есть такая команда (но не используйте killall5!).
Если есть файл блокировки — удалите его. Можно проверить и сделать это вручную.
Самая большая проблема была в том, что запускать команду восстановления от root’а нельзя — тогда часть файлов будет принадлежать root, а восстанавливать нужно от пользователя unifi. Процесс восстановления требует много свободного места на диске, проверьте, чтобы загрузка не была выше 60% по df -h.
После этого перезапустите контроллер и зайдите в систему.
Все пути и команды приведены для Debian-подобных систем, возможно, вам придется подкорректировать их под свою ОС.
Если это не поможет, лучше полностью удалить контроллер и начать заново из последней резервной копии. Резервные копии у вас есть, да?
service unifi stop
pkill -KILL mongo
if [ -f /var/lib/unifi/db/WiredTiger.lock ]; then rm /var/lib/unifi/db/WiredTiger.lock; fi
su -c "mongod --dbpath /var/lib/unifi/db --repair" unifi
service unifi start
Сначала нужно остановить контроллер. Это также закроет MongoDB. У меня оставались какие-то процессы, которые держали файлы, поэтому пришлось использовать pkill. Можно заменить на killall, если у вас есть такая команда (но не используйте killall5!).
Если есть файл блокировки — удалите его. Можно проверить и сделать это вручную.
Самая большая проблема была в том, что запускать команду восстановления от root’а нельзя — тогда часть файлов будет принадлежать root, а восстанавливать нужно от пользователя unifi. Процесс восстановления требует много свободного места на диске, проверьте, чтобы загрузка не была выше 60% по df -h.
После этого перезапустите контроллер и зайдите в систему.
Все пути и команды приведены для Debian-подобных систем, возможно, вам придется подкорректировать их под свою ОС.
Если это не поможет, лучше полностью удалить контроллер и начать заново из последней резервной копии. Резервные копии у вас есть, да?
