Не могу сделать backup штатными средствами WB6.9 (last testing)

добавил лог в пост выше.
Если не поможет, готов организовать доступ по ssh. Могу дать доступ к облаку, там консоль…

У меня SprutHub BETA установлен. Может он?

rootfs5

Выполните

chown root:root /usr/bin/sudo && chmod 4755 /usr/bin/sudo

Ну и - какие-то операции с файлами проводились из систем с неадекватным поведением, например Windows?

Судя по группе - возможно.

1 лайк

Помогло! Спасибо!

Стало так:

Windows нет. Выполнялась установка SprutHUB через инструкцию в их ТГ канале (ссылку на который Wirenboard присылает в email при покупке WBE2R-R-ZIGBEE-SH).
Инструкция заключается в wget (суперсекретныйадрес)/install.sh | bash и далее мной осуществлен переход на SprutHUB BETA из интерфейса через GUI.

В скрипте install.sh есть следующий код:

if $CREATE_USER; then
  if [ ! -d $USERDIR ] || ! getent passwd ${USER} >/dev/null; then
    if $USE_SYSTEMD && [ -f /etc/systemd/system/spruthub.service ]; then systemctl stop spruthub; fi
    echo "Creating User ..."
    if [ ! "$(getent group "$1")" ]; then groupadd ${GROUP}; fi
    useradd --system -m -u 666 -g ${GROUP} -d $USERDIR -s /usr/sbin/nologin ${USER}
  fi
  if getent passwd ${USER} | grep bash >/dev/null; then usermod -p "*" -s /usr/sbin/nologin ${USER}; fi
  usermod -g ${GROUP} ${USER}
  set -- "ssh" "input" "gpio" "i2c" "spi" "adm" "dialout" "cdrom" "sudo" "audio" "video" "plugdev" "games" "users" "netdev"
  for ITEM in "$@"; do group_check ${ITEM}; done
fi

И для примера:

Мне надо все объекты из перечня “вернуть” по правам, по аналогии с sudo?

[непечатное удалено] ну, оно ведь не только в этом конкретном месте, в fastcgi, может вылезти. Как бы смена разрешений на системные каталоги - ну зачем?
Ну, в общем, ладно если только в каком-то именно beta релизе. Но необычный подход, совсем не учитывающий то что в ОС могут работать еще и другие программы… Я пару раз пробовал поставить SH, остался на HA у которого по крайней мере поведение описано.

Я бы обновился с помощью FIT. Там для некоторых файлов есть suid, права не у каждого одинаковы. Руками - долго.

Скрипт НЕ в бете! А в основном скрипте инсталляции SH. Может передадите партнеру рекомендации?

Просто сверху fit накатить?
Так?
rootfs8

Написал, да.

Да. Содержимое корня поменяется целиком. Это проще чем восстанавливать руками.

P.S. Я еще мучался с тем, что в /etc/default/locale в какой то момент был прописан ru_RU.UTF-8 и работать в отладочной консоли стало не возможно. Оно по-русски стало запрашивать пароль, а на компе был не “продвинутый” терминальный и UTF-8 он не понимал… пришлось помучаться с подбором софта.

Теперь нашел истоки своих проблем и они в этом же скрипте:

if $Wirenboard6 || $Wirenboard7; then
  if ! locale | grep -q ru_RU; then
    ln -sf /etc/locale.alias /usr/share/locale/locale.alias
    locale-gen ru_RU.utf8
    export LC_ALL=ru_RU.UTF-8
    export LANG=ru_RU.UTF-8
    update-locale LC_ALL=ru_RU.UTF-8 LANG=ru_RU.UTF-8
    sync
  fi
fi

@BrainRoot
У Вас есть ссылка на сам скрипт? Может посмотрите, что еще чудаковатого он делает?

Посмотрю, не обещаю что в ближайшие пару дней, но запланирую.

1 лайк

Использую ссылку Обновление прошивки контроллеров Wiren Board 6.x — Wiren Board
Абзац " Обновление через веб-интерфейс".
Там ссылка на stable - https://fw-releases.wirenboard.com/fit_image/stable/67/latest.fit

Т.к. у меня Testing, из инструкции из статьи я иду в репозиторий (ссылка из web интерфейса устройства, из раздела обновления, тоже туда ведет), в S3 Bucket Listing Generator

И там файл README - https://fw-releases.wirenboard.com/fit_image/README.txt
И он не понятный!

Файлы для обновления контроллеров WirenBoard.
Различаются для аппаратных ревизий контроллера.

Общая логика выбора:
1) узнать аппаратную ревизию контроллера (вида 6.9.1)
2) выбрать директорию, ближайшую к ревизии, но в меньшую сторону

Примеры:
* Ревизия контроллера - 5.6; Директория с прошивками - 55
* Ревизия контроллера - 5.8.1; Директория с прошивками - 58
* Ревизия контроллера - 6.5; Директория с прошивками - 6x
* Ревизия контроллера - 6.7.2; Директория с прошивками - 67
* Ревизия контроллера - 6.8.1; Директория с прошивками - 67

У меня ревизия 6.9, для невнимательных - укажите в файле, “6.7, 6.8 и 6.9” Директория с прошивками - 67

Далее иду в Testing (хотя в readme об этом так же ни слова).
Там в 67 и в нем пять видов файлов:

  1. latest.fit
  2. вида 202402120208_testing_bullseye_wb67.fit
  3. latest_stretch.fit
  4. latest_stretch_FACTORYRESET.fit (хотя по вики нужен wb6_update_FACTORYRESET.fit)
  5. вида 202210191315_testing_webupd_wb67.fit

Ладно бы 6-ая версия старая и фиг с ней, но из интерфейса свежего ПО идет ссылка в этот репозиторий и там readme, в котором не указано ни про 7x (они подходят на 7.4?) ни про методику именования, ни ссылки на статьи про обновление (а их три, для 7.х и 7.4 разные).

не до документировано, как мне кажется.

Поправим, благодарю. Да, не составит труда просто перечислить все ревизии, отличия в 6.7-6.9 в основном схемотехнические и их не так много чтоб просто не перечислить.

Да, посмотрел “со стороны” на 2) выбрать директорию, ближайшую к ревизии, но в меньшую сторону и тоже не понял. Переработаем, конечно, вот это, свежий взгляд - ценно, я сам этот файл и не открывал никогда, к стыду своему.

1 лайк