Устранение проблем с правами доступа
ioBroker работает под собственным именем пользователя.iobroker не какroot Этому пользователю необходимы определенные права доступа к каталогу./opt/iobroker в npm и в некоторых системных службах. Если они некорректны, это проявляется в ошибках, которые на первый взгляд выглядят совершенно иначе: адаптеры не могут быть установлены, файлы не могут быть записаны, экземпляры не могут быть запущены.
Специалист по урегулированию споров восстанавливает эти права.
curl -sLf https://iobroker.net/fix.sh | bash -
Скрипт загружается с GitHub, как и установочный скрипт, и поэтому всегда актуален.
Когда он помогает
- После установки, которая включала в себя
sudoили какrootбыло выполнено. - Если установка адаптеров не удалась, и в журнале указаны проблемы с правами доступа (
EACCES,permission denied). - После установки Redis , программа-исправитель устанавливает необходимые для доступа к ioBroker права доступа.
- После перемещения каталога или восстановления, в результате которого возникла путаница с правами собственности.
- В качестве меры предосторожности, прежде чем обращаться за помощью на форум: систему, на которой уже запущена программа для исправления ошибок, проще поддерживать.
Его можно запускать так часто, как это необходимо . Именно для этого он и предназначен: если скрипт установки будет доработан, программа исправления обновит существующую установку до того же уровня.
Что он делает и чего он не делает
Он это делает : пользовательiobroker Создайте его, если он отсутствует, и установите права доступа к файлу и каталогу в соответствующем разделе./opt/iobroker Настройте необходимые права sudo и обработайте особые случаи для Redis и BackItUp.
Это обновление не затрагивает Node.js, npm, js-controller или какой-либо адаптер. Оно влияет только на права доступа и владение файлами. Если вы ищете обновление, вам следует посмотреть раздел «Установка обновлений» .
Выполнять
Как обычный пользователь , а не какroot и безsudo до этого. Каталог, из которого вызывается программа, не имеет значения; программа-исправитель ожидает, что установка будет произведена в.../opt/iobroker .
Это относится ко всем системам Linux. Это не распространяется на Windows.
Не применяйте это в Docker. В контейнере всё и так работает как обычно.root Там права доступа понимаются по-другому, и исправление ошибок может принести больше вреда, чем пользы. При проблемах с образом Docker лучше всего обратиться к его собственной документации .
Для тех, кто не уверен: программа для исправления ошибок не меняет содержимое, только права доступа. Однако, всегда полезно предварительно скопировать каталог, и в любом случае у вас должна быть резервная копия .
Что он изменил
Оба скрипта ведут журнал изменений:
Любой, кто умеет читать скрипты командной оболочки, проверит сам скрипт перед его выполнением. Это относится к каждой команде, начинающейся с определенного символа.curl ... | bash В итоге, это хорошая привычка.