Рубрики
go

visual code / VS / Code

Плагины:

conten markdown

Плагины для golang

Рубрики
разное

B.A.T.M.A.N / batctl

Протокол B.A.T.M.A.N.

Проверить какие интерфейсы добавлены:

Добавление интерфейсов:

Проверить маршрутизацию batman:

Претензии по петлям:

Проверить какой версии протокол batman используется:

Изменить версию протокола batman:

!!! Не обязательно но может быть полезно

Разобрать интерфейс bat0:

Пример файла bat-host:

Приоритеты:

Фрагментация трафика

Рубрики
dev

arm toolchain / crosstool-ng / gcc

0. Настройка crosstool-ng и сборка

1. Подготовка toolchain:

2.Пример сборка ядра:

3. Пример с BusyBoX

Рубрики
git

google repo

Ссылка:

Установка из пакетов:

Установка:

Использование:

Синхронизировать:

загрузить

разница

скачать

Рубрики
go

Конспект: GO

Ссылки:

Установка golang на linux

Показать переменные go / рабочее пространство

00. Первый пример:

01. Вызов функций

02. Функция Println

03. Использование функций из других пакетов. / Возвращаемые значения функций.

04. шаблон программы GO

05. Строки

06. Руны

07. Логические значения

08. Числа

09. Математические операции и сравнения

10. Типы

11. Узнаем типы значений

12. Объявление переменных

13. Нулевые значения

14. Короткие объявления переменных

15. Возможные ошибки при добавлении переменных

16. Правила выбора имен для переменных

17. Преобразования

18. Преобразование переменных

19. Кратко о чем писал выше

20. Вызов методов на примере пакета time

21. Вызов методов на примере пакета strings

21. Комментарии

22. Получение значения от пользователя

23. Вариант 1. Игнорировать возвращаемое значение ошибки

24. Вариант 2. Обработка ошибки / пакет log

25. Условные команды

26. Условная выдача фатальной ошибки (пакет log) / продолжение

27. Избегайте замещения имен

28. Преобразование строк в числа

29. Блоки и область видимости переменной

30. Блоки и области видимости переменной:

31. Только одна переменная в коротком объявлении должна быть новой?

32. Генерация случайного числа / пакет («math/rand»)

33. Путь импортирования пакета

34. Циклы / Цикл for

35. Циклы и области видимости

36. Сломай и изучи!

37. Пропуск частей цикла командами continue и break

38. Комментарии (guess)

39. Проведем промежуточные итоги

40. Функции вступление

41. Форматирование вывода функциями Printf и Sprintf

42. Глаголы форматирования

43. Функции

44. Объявление параметров функции

45. И вот мы научились использовать функции исправим код про краску:

46. Функции и области видимости переменных

47. Возвращаемые значения функций

48. Использование возвращаемого значения в программе

49. Ломаем:

50. Функции paintNeeded нужна обработка ошибок

51. Ошибки и пакет erros

52. Объявление нескольких возвращаемых значений

53. Использование множественных возвращаемых значений с функцией paintNeeded

54. Всегда обрабатывайте ошибки!

55. Ломаем и изучаем

56. В параметрах функций хранятся копии аргументов

57. Указатели

58. Типы указателей

59. Чтение или изменение значения по указателю

60. Использование указателей с функциями

61. Проведем промежуточные итоги

62. Пакеты \ Хранение кода пакетов

63. Создание нового пакета

64. Импорт пакета в программу

65. Файлы пакетов имеют одинаковую структуру

66. Соглашения по выбору имен пакетов

67. Константы

68. Вложенные каталоги и пути импорта пакетов

69. Установка исполняемых файлов командой «go install»

70. Переменная GOPATH и смена рабочих областей

71. Настройка GOPATH

72. Публикация пакетов / конфликт подключения пакетов с одним именем

73. Загрузка и установка пакетов командой «go get»

74. Чтение документации пакетов командой «go doc»

75. go help

76. Запуск сервера документации HTML командой «godoc»

77. Проведем промежуточные итоги

78. Массивы / arrays

79. Литералы массивов

80. Обращение к элементам массива в цикле

81. Проверка длины массива функцией «len»

82. Безопасный перебор массивов в цикле «for…range».

83. Чтение текстового файла

84. Чтение текстового файла в массив

85. Чтение файла и выполнение программы average. Еще один пример:

86. Промежуточные итоги:

87. Сегменты

88. Литералы сегментов

89. Базовые массивы

90. Расширение сегментов функцией «append»

91. Сегменты и нулевые значения

92. Аргументы командной строки

93. Получение аргументов командной строки из сегмента os.Args

94. Использование аргументов командной строки в программе

95. Функции с переменным количеством аргументов

96. Использование функций с переменным количеством аргументов (inRange, maximum)

97. Подведем итоги:

98. Карты

99. Нулевые значения с картами

100. Как отличить нулевые значения от присвоенных

101. Удаление пар «ключ/значение» функцией «delete»

102. Циклы «for…range» с картами

103. Цикл «for…range» обрабатывает карты в случайном порядке!

104. Подведем итоги.

105. Структуры

106. Структуры формируются из значений МНОГИХ типов

107. Обращения к полям структуры

108. Определения типов и структуры

109. Изменение структуры в функции

110. Использование указателей в структуре:

111. Обращение к полям структур по указателю

112. Обращение к полям структур по указателю

113. Экспорт полей структур

114. Литералы структур

115. Промежуточные итоги:

116. Определение методов

117. Будьте осторожны!

118. Сломай и изучи!

119. Преобразование литров и миллилитров в галлоны с помощью методов

120. Ключевые моменты

120. Инкапсуляция и встраивание / Set-метод

121. Get-методы

121. Инкапсуляция

122. Интерфейсы

122. Интерфейсы, cломай и изучи!

123. Ключевые моменты Интерфейсы:

124. Восстановление после сбоев

Рубрики
dev

наша yocto nxp ls1046

Ссылка:

pre install yocto

Создаем пользователя от которого будем собирать в его каталоге:

Качаем бинарный файл для загрузки репы:

Создаем каталог yocto-sdk и скачиваем yocto:

Теперь тебе надо в папке sources подменить meta-qoriq нашей

Теперь нужно выполнить следующие (будет создан каталог) / в каталоге yokto-sdk

Теперь нужно отредактировать файл build_ls1046ardb/conf/local.conf

Первая сборка:

На потом:

Файлы:

Пример добавления новых файлов:

для тестов

config
repo
set_mac_ls1046

WIC

Возможная проблема с загрукой системы:

Пытки обновить с kirkstone

fix

Рецепт postgresql

Для очистки и пере сборки рецепта

Рубрики
backup

borg / borgbackup / localdisk / systemd / service / timer

Ссылки:

Начало:

Дефолтный скрипт для бэкапа и монтирования диска и очистки:

Systemd service and timer

Рубрики
dev

yocto каша

yocto версии:

qemu+yocto+tun-tap

Очистка проeкта / Full clean build in Yocto Project

Еще пример сборки yocto + настройка ядра:

Рубрики
python

Depthcharge / uboot backup

Рубрики
cluster

zabbix HA / ubuntu 20.04 / ha / cluster / pacemaker / mysql / ovs / galera / arbitr

Ссылки:

Задачи:

Собираем кластер

STONITH

Задание свойства кластера cluster-recheck-interval

CLUSTER_IP на виртуальной сетевушке:

Установка MariaDB Galera

Рубрики
devops

Конспект: SQL / основы / postgre / на примере PostgreSQL

Ссылки

Основное psql:

Оператор SELECT \ выборка

WHERE \ Операторы сравнения в WHERE \ Логические операторы в WHERE \Фильтрация данных в SQL

WHERE \ Фильтрация данных в SQL \ примеры

ORDER BY \ сортировка

Создание \ удаление \ изменение таблиц в SQL

Языки SQL

Вставка данных в таблицу \ оператор INSERT

Изменение данных \ оператор UPDATE

Удаление данных из таблицы \ оператор DELETE

Группировка в SQL:

Агрегатные функции

Группировки и фильтрация в SQL: HAVING

Декомпозиция данных в базе | Основы SQL

Запрос данных из нескольких таблиц: JOIN | Основы SQL

Типы объединений в SQL | Основы SQL

Схема базы данных | Основы SQL:

Подзапросы | Основы SQL:

Транзакции | Основы SQL

Индексы | Основы SQL :

Рубрики
dev

NanoPi_R5S

Ссылки:

Рубрики
dev

uboot / u-boot

Ссылки:

Компиляция на примере debian 11:

nxp

error install mtest

DEBUG

DDR

uboot env

dd

uefi

boot SPI

boot sd nxp

Проверка mmc карты (sdcard):

dm

Диагностика uboot:

screen как терминал для COM порта

Backup and restore

dhcp в uboot

для тесту:

Рубрики
dev

buildroot / debian 11

Ссылки:

Начинаем начинать:

Добавление пакетов:

Правильное сохранение изменений:

Если что то надо положить в образ buildroot:

Где искать собранные образы:

Загрузка:

Рубрики
dev

nxp / flex-builder / help

Ссылки:

build_and_deploy_distro.md (собрать и развернуть дистрибутив)

memmory.md(память):

lsdk установка и сборка (lsdk_build_install.md)

Flexbuild Work Flow (Рабочий процесс Flexbuild)

Flexbuild Usage(Использование Flexbuild)

Сборка и развертывание различных дистрибутивов

Рубрики
dev

yocto / nxp

ссылки:

ERROR: lxc-4.0.1-r0 do_fetch: Fetcher failure for URL: ‘http://linuxcontainers.org/downloads/lxc-4.0.1.tar.gz’. Unable to fetch URL from any source.

ERROR: go-systemd-4+gitAUTOINC+b4a58d9518-r0 do_fetch: Fetcher failure for URL: ‘git://github.com/coreos/go-systemd.git’. Unable to fetch URL from any source.

ERROR git

ERROR: Task (~/yocto-sdk/sources/meta-virtualization/recipes-devtools/go/go-systemd_git.bb:do_deploy_source_date_epoch) failed with exit code ‘1’

u-boot tftp

Booting board with full rootfs from large storage device

enable DPAA2 Ethernet in Linux using commands

Download images and boot up:

Program TF-A binaries on NAND flash:

Question:

Рубрики
dev

yocto project / debian 11 / raspberry pi

Ссылки:

Требования:

Добавляем родные репы в /etc/apt/source.list:

отключаем ipv6 / мне он там не нужен (:

Для удобства доступа к серверу yocto:

Установка необходимых пакетов для yocto на debian 11:

Версия python 3+ по умолчанию:

Для любителей поставить русскую local нужно добавить еще local en_US.UTF-8:

Установка yocto:

Добавить слой:

Рубрики
dev

nxp / flex-installer / flex-builder

Ссылки:

flex-builder compile

Добыча исходников ядра из flex-builder

NXP docker image in debian 11

err LSDK 21.08 makefile error — Please set ‘PYTHON’ appropriately

flex-installer

flex-builder

flex-builder and flex-builder

Пример создания образа sdcard.img

Рубрики
Конспект: Linux

Конспект: программирование C/C++ / си / си ++

Ссылка:

0. hello world

1. Мульти файловое программирование

1. automake make

3. Модель КИС:

4. Пример статической библиотеки:

Пример совместно используемой библиотеки

Окружение:

Массив environ

Чтение окружения: getenv()

Запись окружения: setenv()

Сырая модификация окружения: putenv()

Удаление переменной окружения: unsetenv()

Очистка окружения: clearenv()

Механизмов ввода-вывода в Linux:

Файловые дескрипторы

Открытие файла: системный вызов open()

Закрытие файла: системный вызов close()

Чтение файла: системный вызов read()

Запись в файл: системный вызов write()

Произвольный доступ: системный вызов lseek()

Основы многозадачности в Linux

Использование getpid() и getppid()

Порождение процесса

Замена образа процесса

Таблица 1. Флаги общего режима

Флаг Восьмиричное представление RWX-представление
S_IRWXU 00700 rwx — —
S_IRUSR 00400 r— — —
S_IREAD 00400 r— — —
S_IWUSR 00200 -w- — —
S_IWRITE 00200 -w- — —
S_IXUSR 00100 —x — —
S_IEXEC 00100 —x — —
S_IRWXG

00070

— rwx —
S_IRGRP 00040 — r— —
S_IWGRP 00020 — -w- —
S_IXGRP 00010 — —x —
S_IRWXO 00007 — — rwx
S_IROTH 00004 — — r—
S_IWOTH 00002 — — -w-
S_IXOTH 00001 — — —x

Таблица 2. Флаги расширенного режима

Флаг Восьмиричное представление Описание
S_IFMT 0170000 Двоичная маска определения типа файла (побитовое ИЛИ всех
следующих ниже флагов)
S_IFDIR 0040000 Каталог
S_IFCHR 0020000 Символьное устройство
S_IFBLK 0060000 Блочное устройство
S_IFREG 0100000 Обычный файл
S_IFIFO 0010000 Канал FIFO
S_IFLNK 0120000 Символическая ссылка

Таблица 3. Дополнительные флаги

Флаг Восьмиричное представление Описание
S_ISUID 0004000 Бит SETUID
S_ISGID 0002000 Бит SETGID
S_ISVTX 0001000 Липкий (sticky) бит

Таблица 4. Флаги режима открытия файла

Флаг Описание
O_RDONLY Только чтение (0)
O_WRONLY Только запись (1)
O_RDWR Чтение и запись (2)
O_CREAT Создать файл, если не существует
O_TRUNC Стереть файл, если существует
O_APPEND Дописывать в конец
O_EXCL Выдать ошибку, если файл существует при использовании O_CREAT
O_DSYNC Принудительная синхронизация записи
O_RSYNC Принудительная синхронизация перед чтением
O_SYNC Принудительная полная синхронизация записи
O_NONBLOCK Открыть файл в неблокируемом режиме, если это возможно
O_NDELAY То же, что и O_NONBLOCK
O_NOCTTY Если открываемый файл — терминальное устройство, не делать его
управляющим терминалом процесса
O_NOFOLLOW Выдать ошибку, если открываемый файл является символической
ссылкой
O_DIRECTORY Выдать ошибку, если открываемый файл не является каталогом
O_DIRECT Попытаться минимизировать кэширование чтения/записи файла
O_ASYNC Генерировать сигнал, когда появляется возможность чтения или
записи в файл
O_LARGEFILE Разрешить большие файлы (размер которых не может быть
представлен в 31 бите (для систем с поддержкой LFS)
Рубрики
lamp

haproxy

Пример стандартного конфига