Обновление OS X 10.11.5 удаляет или делает Java 6 непригодной для использования после установки, поэтому её нужно переустановить после завершения обновления и перезагрузки системы. Как только сделал именно это и больше ничего не трогал — Unifi Controller снова заработал, и все данные на месте, включая DPI-счётчики и всё остальное.
У меня есть машина с OS X, которая служит бесхозным сервером для Unifi Controller. До сегодняшнего дня конфигурация была такая:
OS X 10.11.4
Java 8 версия 92
Unifi Controller 4.8.18
Всё работало без сбоев очень долго, но сегодня был «день обновления»:
- Сделал резервную копию контроллера на всякий случай
- Установил комбинированное обновление OS X 10.11.5 (если у вас 10.11.4 — всегда ставьте Combo Update или даже полный установщик. Делта-обновления меньше по размеру, но не всегда работают как надо)
- Перезагрузился и вошёл в систему
- Открыл браузер, зашёл на localhost:8443, а там... «сервер на этом порту не отвечает»
- Попробовал просто localhost — встроенный веб-сервер отвечает и показывает сообщение «Just Works!»
- В терминале выполнил «ps aux | grep java» — Unifi Controller запущен со своей встроенной Java 8 версии 77
- В терминале сделал «launchctl unload /Library/LaunchAgents/com.ubiquiti.unifi-app.plist», чтобы остановить сервис, потом загрузил обратно — ошибок не было
- Выполнил ssh на USG, USW и UAP — у всех правильные настройки с логинами для подключения, но информатор показывает «unreachable» (недоступно)
Что пробовал дальше?
- Переустановил Unifi Controller и перезагрузился (без изменений)
- Переустановил Java 8 версии 92 (без изменений)
- Запустил чистую виртуальную машину с OS X 10.11.5 в VMWare, установил туда только Java 8 и Unifi Controller 4.8.18 (тоже без изменений)
В итоге на оригинальной машине с Unifi Controller я запустил Unifi Discovery tool, чтобы посмотреть, что он покажет, и получил сообщение: «Unifi Discovery Tool требует Java 6, пожалуйста, установите её». Ну, да, этот инструмент вышел давно и требует Java 6 — логично. Но Unifi Controller? Нет, не может быть, ведь он поставляется со своей собственной Java 8 версии 77.
На всякий случай установил «Apple Java 2015-001», перезагрузился, и discovery tool заработал. Потом проверил контроллер — он на месте. Открыл Chrome, зашёл на «localhost:8443», и, о чудо, появилась страница логина. Ввёл логин и пароль — и получил панель управления контроллера, будто ничего не случилось.
Итого: хотя Unifi Controller для OS X и идёт со встроенной Java 8, у него всё же есть какая-то связь с Java 6.
@UBNT-MikeD, так как именно ты выкладывал заметку про Java 8, думаю, тебе стоит знать об этом и, может, поговорить с разработчиками, чтобы в будущих версиях совсем порвать связь с Java 6.
Рад, что все мои контроллеры (да и у клиентов тоже) работают стабильно и безопасно, и что смог сэкономить кому-то время на поиски решения.
Удачи!
P.S. Вот страница с загрузкой Java 6 2015-001:
Прямая ссылка для скачивания:
Эта версия совместима с OS X от 10.7.x до 10.11.x.
У меня есть машина с OS X, которая служит бесхозным сервером для Unifi Controller. До сегодняшнего дня конфигурация была такая:
OS X 10.11.4
Java 8 версия 92
Unifi Controller 4.8.18
Всё работало без сбоев очень долго, но сегодня был «день обновления»:
- Сделал резервную копию контроллера на всякий случай
- Установил комбинированное обновление OS X 10.11.5 (если у вас 10.11.4 — всегда ставьте Combo Update или даже полный установщик. Делта-обновления меньше по размеру, но не всегда работают как надо)
- Перезагрузился и вошёл в систему
- Открыл браузер, зашёл на localhost:8443, а там... «сервер на этом порту не отвечает»
- Попробовал просто localhost — встроенный веб-сервер отвечает и показывает сообщение «Just Works!»
- В терминале выполнил «ps aux | grep java» — Unifi Controller запущен со своей встроенной Java 8 версии 77
- В терминале сделал «launchctl unload /Library/LaunchAgents/com.ubiquiti.unifi-app.plist», чтобы остановить сервис, потом загрузил обратно — ошибок не было
- Выполнил ssh на USG, USW и UAP — у всех правильные настройки с логинами для подключения, но информатор показывает «unreachable» (недоступно)
Что пробовал дальше?
- Переустановил Unifi Controller и перезагрузился (без изменений)
- Переустановил Java 8 версии 92 (без изменений)
- Запустил чистую виртуальную машину с OS X 10.11.5 в VMWare, установил туда только Java 8 и Unifi Controller 4.8.18 (тоже без изменений)
В итоге на оригинальной машине с Unifi Controller я запустил Unifi Discovery tool, чтобы посмотреть, что он покажет, и получил сообщение: «Unifi Discovery Tool требует Java 6, пожалуйста, установите её». Ну, да, этот инструмент вышел давно и требует Java 6 — логично. Но Unifi Controller? Нет, не может быть, ведь он поставляется со своей собственной Java 8 версии 77.
На всякий случай установил «Apple Java 2015-001», перезагрузился, и discovery tool заработал. Потом проверил контроллер — он на месте. Открыл Chrome, зашёл на «localhost:8443», и, о чудо, появилась страница логина. Ввёл логин и пароль — и получил панель управления контроллера, будто ничего не случилось.
Итого: хотя Unifi Controller для OS X и идёт со встроенной Java 8, у него всё же есть какая-то связь с Java 6.
@UBNT-MikeD, так как именно ты выкладывал заметку про Java 8, думаю, тебе стоит знать об этом и, может, поговорить с разработчиками, чтобы в будущих версиях совсем порвать связь с Java 6.
Рад, что все мои контроллеры (да и у клиентов тоже) работают стабильно и безопасно, и что смог сэкономить кому-то время на поиски решения.
Удачи!
P.S. Вот страница с загрузкой Java 6 2015-001:
Прямая ссылка для скачивания:
Эта версия совместима с OS X от 10.7.x до 10.11.x.


