• Доработка велокомпьютера BBB BCP-05

    В 2018 году, покупая велик, я купил самый дешёвый велокомпьютер из наличия — модель в сабже. Он умеет показывать скорость, время и общий пробег. И всё.

    В связи с известными всем нюансами на заправках, я пересел на велик. И увидел то, что сэкономил 8 лет назад. И погрустнел.

    Совершенно случайно, вбив модель в гуголь (уж не помню, зачем мне это пригодилось), я наткнулся на статью товарища DiHalt про модернизацию компьютера этой же фирмы, только BCP-01. Оказывается, если вскрыть корпус и несколько дорожек на плате перерезать, то из младшей модели получится старшая, т.е. отличия между ними только программные. И всё бы ничего, только в комментариях к ней товарищ написал про мою модель и что она тоже модернизируется.

    После такого заявления у компьютера не было шансов сохранить невинность. Пробуем аккуратно разобрать. Не получается, корпус склеен очень прочно. Но шансов оставить его в покое уже нет — руки чешутся. Взял тонкую отвёртку, поставил в стык половинок корпуса и аккуратно по ней стукнул ладонью. Несколько таких попыток — и корпус развалился. Разбираем, видим заветные перемычки, вершаем 4 сопли припоя, собираем обратно на герметик-формирователь прокладок, взятый из поставленной на прикол машины — вуаля.

    MS — maximum speed, одна из отсутствовавших ранее опций

    В итоге, после доработки теперь есть следующие опции:

    • часы (было)
    • DS — расстояние с момента сброса (было)
    • RT — ride time, время поездки (появилось)
    • AS — average speed, средняя скорость (появилось)
    • MS — maximum speed, максимальная скорость (появилось)
    • DS/D — вероятно, distance/day, суточный пробег (появилось)
    • CAL — вероятно сожжённые калории (появилось)
    • CO2 — вероятно, сэкономленный выброс CO2 (по сравнению с машиной?) — появилось, описания нигде не нашёл.
    • напоминание о ТО (появилось)
    • ODO — одометр (был)
    • TRT — вероятно, total ride time, общее время на велике (появилось)
    • TCal, TCO2 — вероятно, то, что выше, но не с момента сброса, а вообще (появилось)

    В общем, я доволен. 4 сопли припоя сделали из самого дешёвого борткомпа самый дорогой. Нраица.

    Упомянутым товарищам — респект и плюсик в карму 🙂

  • Присвоить названия нескольким ОС AstraLinux на одном компьютере

    На компьютере установлено несколько систем AstraLinux. Нужно как-то различать их в меню grub, чтобы грузить нужную. При этом крайне желательно обойтись без ручного редактирования файла /boot/grub/grub.cfg, который будет перезаписан после установки новой системы, например.

    Делаем следующее:

    1. Присваиваем всем файловым системам метку:
    # e2label /dev/sda1 ASTRA1
    # e2label /dev/sda2 ASTRA2

    2. Правим два файла. Первый /etc/grub.d/10_linux, строка 136. Меняем

      echo "menuentry '$(echo "$title" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnulinux-$version-$type-$boot_device_id' {" | sed "s/^/$submenu_indentation/"

    на

      echo "menuentry '$(echo "$title ($(e2label `blkid -U $boot_device_id`))" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnulinux-$version-$type-$boot_device_id' {" | sed "s/^/$submenu_indentation/"

    Второй — /etc/grub.d/30_os-prober, строка 297. Меняем

    menuentry '$(echo "$title" | grub_quote)' --class gnu-linux --class gnu --class os \$menuentry_id_option 'osprober-gnulinux-$LKERNEL-${recovery_params}-$boot_device_id' {

    на

    menuentry '$(echo "$title ($(e2label $DEVICE))" | grub_quote)' --class gnu-linux --class gnu --class os \$menuentry_id_option 'osprober-gnulinux-$LKERNEL-${recovery_params}-$boot_device_id' {

    3. Вызываем update-grub.

    На выходе имеем в grub.cfg что-то такое:

    menuentry 'AstraLinuxCE GNU/Linux, with Linux 4.15.3-1-generic (на /dev/nvme0n1p6) (ASTRA1)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-4.15.3-1-generic--a009ed5b-4c18-4235-9baa-a711f5443472' {

    Единственный нюанс — нужно это делать либо в каждой Астре, либо обновлять Grub только из одной.