sasamy 0 Четверг в 15:20 Опубликовано Четверг в 15:20 (изменено) · Жалоба On 10/31/2024 at 6:05 PM, AlexVRud said: корень ОС - директория в /var/lib/docker/... правильно понимаю что это обычная директория на диске а не ramfs там смонтирована ? насколько я понял весь смысл докера что окружение а рам On 10/31/2024 at 6:05 PM, AlexVRud said: Что нужно для сборки старого u-boot? Самый минимальный дистрибутив со старой ОС + пакеты из требований buildroot. там по зависимостям нехило вытягивает, только буилдрут после сборки небольшой ос с qt будет больше 10 гигов, мне показалось он не убут а весь sdk собирает On 10/31/2024 at 6:10 PM, mantech said: а ядро потом как узнает, что у него памяти в 2 раза больше вдруг стало? через загрузчик в параметрах передаётся On 10/31/2024 at 6:05 PM, AlexVRud said: Для повторения сборки Docker-образа на любой другой машине нужен маленький текстовый файлик Dockerfile и одна команда. в образе виртуалки можно уже собранный буилдрут передавать и команд никаких не надо, а докер один фиг тоже самое вытягивает из инета отдельными пакетами Изменено Четверг в 15:24 пользователем sasamy Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
xplayerx 0 Четверг в 15:35 Опубликовано Четверг в 15:35 · Жалоба Ура я завел руками через твою утилиту fel-dfu-t113-emmc.exe подставил uboot-dfu-t113_work.emmc как его теперь нормально на флеху интегрировать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sasamy 0 Четверг в 15:52 Опубликовано Четверг в 15:52 · Жалоба On 10/31/2024 at 6:35 PM, xplayerx said: подставил uboot-dfu-t113_work.emmc как его теперь нормально на флеху интегрировать? надо образ смотреть - нет единого стиля, я хз что там у вас - где ядро с dt Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
xplayerx 0 Четверг в 15:55 Опубликовано Четверг в 15:55 · Жалоба 2 минуты назад, sasamy сказал: надо образ смотреть - нет единого стиля, я хз что там у вас - где ядро с dt попробую для начала заменить с офсетом если не пройдет нужно думать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sasamy 0 Четверг в 16:00 Опубликовано Четверг в 16:00 (изменено) · Жалоба On 10/31/2024 at 6:55 PM, xplayerx said: попробую для начала заменить с офсетом если не пройдет нужно думать записать загрузчик не проблема и однозачно - убут пишется со смещением 8 * 1024 байт от начала диска, хотя если убут из китайского sdk ему еще отдельный spl нужен который у них boot0 называется, но убут должен как-то ядро и dt найти на диске, это указывают либо в самом убуте либо через внешние boot.scr, extlinux.conf и тд. И если вы его запишете как я вам давал пример через sdcard.img вы затрете mbr на диске Изменено Четверг в 16:12 пользователем sasamy Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
xplayerx 0 Четверг в 16:38 Опубликовано Четверг в 16:38 · Жалоба 37 минут назад, sasamy сказал: записать загрузчик не проблема и однозачно - убут пишется со смещением 8 * 1024 байт от начала диска, хотя если убут из китайского sdk ему еще отдельный spl нужен который у них boot0 называется, но убут должен как-то ядро и dt найти на диске, это указывают либо в самом убуте либо через внешние boot.scr, extlinux.conf и тд. И если вы его запишете как я вам давал пример через sdcard.img вы затрете mbr на диске там gpt пока смотрю со структурой и разбираюсь Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sasamy 0 Четверг в 18:36 Опубликовано Четверг в 18:36 (изменено) · Жалоба On 10/31/2024 at 7:38 PM, xplayerx said: там gpt пока смотрю со структурой и разбираюсь его тоже снесет - основная запись gpt следом за mbr, резервная в конце диска. После загрузки убута должна быть консоль о которой я уже говорил - подключите терминал и выполните там Quote ums 0 mmc 0 на хостовой машине вин/лин к которой подключено по usb должен появиться usb диск с содержимым emmc, и с ним можно какой-нибуть программой разбираться. В линуксе проще - можно дамп emmc смапить на /dev/loop и работать как с обычным диском и потом зашить скорректированный имидж на emmc Изменено Четверг в 18:36 пользователем sasamy Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
xplayerx 0 Четверг в 18:49 Опубликовано Четверг в 18:49 · Жалоба усе завел, пропатчикл дамп и как не странно он юзает boot0 на emmc точнее мой бут)) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexVRud 0 Четверг в 20:29 Опубликовано Четверг в 20:29 · Жалоба 4 часа назад, sasamy сказал: правильно понимаю что это обычная директория на диске а не ramfs там смонтирована ? насколько я понял весь смысл докера что окружение а рам Сразу скажу, я цать лет сижу в Linux, как базовой системе, и детали и отличия Windows не затрагиваю. Если быть точнее, docker создаёт overlayfs в /var/lib/docker/... из слоёв docker-образа. В отдельное окружение (аля chroot) "монтирует" корневой образ и volumes, и в этом окружении запускает заданный процесс. Т.е. ramfs тут не причём. Всё идёт через обычное ядро, поэтому по diff выхлопа mount можно увидеть что смонтировалось для запущеенного контейнера. "весь смыл докера" я бы тогда уж описал как простой способ создания chroot подобного окружения для нужной программы. В рамках сборки старой версии buildroot. Основной облом - это сборка toolchain. Если есть готовый toolchain, то собрать проект можно почти на любой системе. Если нет, то возникает чёртов парадокс новый gcc&Co не могут собрать старый gcc&Co. Поэтому нужна старая ОС. В рамках докера это можно сделать так: 1. Описать окружение в Dockerfile FROM ubuntu:18.04 RUN apt-get update && apt-get install -y .... ... 2. собрать образ (аля `docker build -t buildroot-x-x .`) 3. В хостовой системе собрать рабочую директорию /home/user/projects/ ├── buildroot-x.x ├── my-buildroot-external └── out 4. Подготовить директорию для кеша загрузки (аля, /data/buildroot-downloads) 5. Запустить контейнер интерактивно, примонтировав нужные директории (аля `docker run -t -i --rm --volume /home/user/projects:/data/projects --volume /data/buildroot-downloads:/data/dl --env 'BR2_DL_DIR=/data/dl` buildroot-x-x /bin/bash`) 6. И собирай в окружении как надо. По сути в контейнере будет только один процесс bash и смонтированы корень+projects+dl Когда соберёшь и выйдешь, на хостовой системе в projects останутся артифакты сборки, в DL кеш скаченных файлов на следующий раз. В рамках винды будет чуть посложнее с монтированием обычных директорий. Возможно, надо будет использовать docker volumes - это чуть больше гемора по копированию файлов между контейнером и хостовой системой. По накладным расходом, контейнеры в разы легче виртуалок. У меня на рабочем компе их с десяток запущенно, и как бы ничего. Есть память и процессор начинает разве что buildbot в момент сборки проектов. 5 часов назад, sasamy сказал: буилдрут после сборки небольшой ос с qt будет больше 10 гигов, Для сборки Qt есть Yocto. Тот, хотя бы, имеет кеш результатов сборки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sasamy 0 Четверг в 21:43 Опубликовано Четверг в 21:43 (изменено) · Жалоба On 10/31/2024 at 11:29 PM, AlexVRud said: Т.е. ramfs тут не причём. понятно, у меня после чтения обзорной статьи сложилось впечатление что контейнеры в tmpfs крутятся On 10/31/2024 at 11:29 PM, AlexVRud said: В рамках сборки старой версии buildroot. Основной облом - это сборка toolchain. buildroot в виртуалке достаточно собрать один раз, закачаются все исходники и компиляторы, положить имидж на полку, соберётся и через 10 лет даже если и убунта и докер рассосется. On 10/31/2024 at 11:29 PM, AlexVRud said: Для сборки Qt есть Yocto. Тот, хотя бы, имеет кеш результатов сборки. https://buildroot.org/downloads/manual/manual.html#ccache PS Спасибо за краткое и очень доходчивое пояснение по докеру Изменено Четверг в 21:48 пользователем sasamy Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sasamy 0 Четверг в 22:15 Опубликовано Четверг в 22:15 · Жалоба On 10/31/2024 at 11:29 PM, AlexVRud said: В рамках докера это можно сделать так: собрать корневую и чрутнуться можно не менее удобно https://github.com/bdrung/bdebstrap Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexVRud 0 Пятница в 10:12 Опубликовано Пятница в 10:12 · Жалоба 9 часов назад, sasamy сказал: что контейнеры в tmpfs крутятся Верхний слой overlayfs у запущенного контейнера временная директория. Что поведением и похоже на tmpfs. 9 часов назад, sasamy сказал: buildroot в виртуалке достаточно собрать один раз, закачаются все исходники и компиляторы, положить имидж на полку, соберётся и через 10 лет даже если и убунта и докер рассосется. Так и докер так же. Сейчас проверил, распакованный образ докера для buildroot на базе u18.04 весит 480 МБ, после `docker save` архив 150 МБ. Сюда не входят исходники проектов, но они всё таки должны лежать отдельно в репе. У нас gitea для хранения реп и докер образов. Любой может сделать `docker run ... dev.example.com/buildroot:u18.04` т.е. образ собран один раз и доступен для всех. Когда работаешь один, не так важно докер или виртуалка, вопрос привычки. Когда в коллективе и есть ещё боты для сборки, то докер более выгоден. 9 часов назад, sasamy сказал: https://buildroot.org/downloads/manual/manual.html#ccache Не сравнимые категории. Yocto хранит в кеше результаты шагов сборки. И полная пересборка "толстого проекта" занимает пару минут. При этом SSTATE_DIR можно шарить между несколькими машинами и проектами под разные камни. У каждого свои преимущества. Buildroot хорош для запуска нового камня или платы. Yocto для коллективной работы, "толстых образов" и ведения нескольких проектов одновременно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sasamy 0 Пятница в 11:56 Опубликовано Пятница в 11:56 (изменено) · Жалоба On 11/1/2024 at 1:12 PM, AlexVRud said: Так и докер так же. Сейчас проверил, распакованный образ докера для buildroot еще пару лет назад я бы тоже так думал, но ведь эти коммерческие конторы с типа открытыми проектами по щелчку в закат уходят https://www.cnews.ru/news/top/2024-05-30_rossijskih_programmistov https://www.rbc.ru/technology_and_media/06/03/2022/62221a5b9a79472b4f07b5e1 интересно куда весь девопс будет щемиться если кислород перекроют, а ведь по сути докер банальный помогатор без которого любой разработчик спокойно обходится. К настоящему свободному ПО типа linux, debian с qemu просто так кислород не перекрыть, я как то даже не переживаю что наши образы в вмваре сделаны https://foswiki.org/Support/HowToRunVirtualMachineImageOnKvmQemu Изменено Пятница в 12:17 пользователем sasamy Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexVRud 0 Пятница в 13:46 Опубликовано Пятница в 13:46 · Жалоба 1 час назад, sasamy сказал: интересно куда весь девопс будет щемиться если кислород перекроют, Так уж сколько лет и РКН проблем подкидывает. Тот же dokerhub блочили частично. Мы просто послали все облака куда подальше. Не забанят так скажут что это теперь деприкетед. У нас свой gitea. На нём не только git-репы, но и артефакты сборки и docker контейнеры (свои и копии используемых). Последнее существенно экономит сетевой трафик. Всего-то поменять имя контейнера с `debian:latest` на `example.ru/debian:latest` Поднят свой buildbot для автоматизации сборки, в том числе Yocto-проектов. Есть ребята, что просто разрабатывают приложения на хостовых системах (Linux/Windows), комитят в мастер, а buildbot забирает изменения и выплёвывает swupdate-прошивку для девайсов. git-зеркала для крупных проектов, аля Linux Kernel от разных компаний. Настроили всё что легко кешировать и зеркалировать. Так что давно адаптировались ко всем этим "недоступно". Но и новенькое пользуем. Не меньше вопросов к Альтиум, Qt, ti-linux и т.п. Что будет если Debian, Ubuntu, Flatpack и т.д. и т.п. взбрыкнут как ядро Linux? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sasamy 0 Пятница в 14:35 Опубликовано Пятница в 14:35 (изменено) · Жалоба On 11/1/2024 at 4:46 PM, AlexVRud said: Так что давно адаптировались ко всем этим "недоступно". Но и новенькое пользуем. Не меньше вопросов к Альтиум, Qt, ti-linux и т.п. Что будет если Debian, Ubuntu, Flatpack и т.д. и т.п. взбрыкнут как ядро Linux? как то вы в кучу всё смешиваете - "кручу верчу запутать хочу". Начнём с докера - это американская компания, продукт в дебиане устанавливается через стороннюю репу, отключить вас от неё со стороны докера не составляет труда. Сам дебиан некоммерческое сообщество с зеркалами по всему миру - как вы представляете отключить вас от дебиана. Убунта коммерческий клон дебиана, спрыгнуть с него никакого труда не составляет. Ядро linux сложный вопрос - там есть банда из представителей корпораций которая им управляет, но доступ к коду перекрыть я не представляю как это возможно. То что майнтэйнеров с российским следом отключили - какая-то ерунда, у нас нет такого производства электроники как у основателей linux foundation чтобы это событие хоть на что-то повляло. Причём один из них казахстанец вообще, давно живет в штатах и работает в амазоне. flatpak - кто им вообще пользуется ? По поводу линукс еще - торвальдс это известный троль, раньше он еще код писал а сейчас просто троль, бывало его даже в угол ставили за это https://vc.ru/hr/45905-sozdatel-linux-linus-torvalds-vremenno-pokinet-razrabotku-iz-za-plohogo-otnosheniya-k-lyudyam Изменено Пятница в 14:47 пользователем sasamy Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться