Новая 64-битная операционная система Raspberry Pi версии 2.0!
Это первая в мире система, поддерживающая все 64-битные устройства Raspberry Pi! (Включает: 2Bv1.2, 3B/B+/A+, 4B, CM3/4, Pi400, Zero2W)
Всегда найдутся люди, которые делают всё возможное, чтобы найти проблемы других людей,
чтобы избежать путаницы,
мы объясним все используемые нами помощи и ссылки.
Если будут какие-либо пропуски, пожалуйста, сообщите нам своё мнение вовремя.
Большое спасибо всем, кто помог нам.
Английское издание постоянно оптимизируется и корректируется...
Добавьте звезду мне, просто кликните, я буду очень рад и доволен... :)
Репозиторий Gitee: gitee.com/openfans-community/Debian-Pi-Aarch64
Репозиторий Tencent Coding: https://e.coding.net/openfans/pifan/Debian-Pi-Aarch64.git
Репозиторий GitHub: github.com/openfans-community-offical/Debian-Pi-Aarch64
Репозиторий GitLab: https://gitlab.com/openfans/Debian-Pi-Aarch64
Новая 64-битная операционная система Raspberry Pi, OPENFANS общедоступное сообщество и базовое сообщество Raspberry Pi Fan совместно создали.Это официальное руководство для новой версии 2.0 64-битной ОС, которая поддерживает полный диапазон 64-битных процессоров Raspberry Pi таких как 2Bv1.2, 3B/B+/A+, 4B, CM3/4, Pi400, Zero2W.
Прошлая версия системы: 1.0 и предварительная версия 2.0 больше не обновляются и не поддерживаются.
"Старый README" можно просмотреть здесь. (Только китайская версия)
Перед тем как задавать вопросы, внимательно прочитайте этот документ. Возможно, ответы уже содержатся в этом документе (мы откажемся отвечать на повторные вопросы).
Кроме данного документа, все остальные документы в этом репозитории больше не поддерживаются (кроме прямых ссылок на этот документ), они предназначены только для архива разработчика.
Все команды, выполненные в рамках данной статьи, если не указано иное, выполняются с правами root по умолчанию!
При возникновении проблем обязательно обновите ваш систему, фирмвер и ядра до последней версии. Нажмите здесь, чтобы проверить последнюю версию и узнать, как обновить вашу систему, ядра и фирмвер.
2021-11-11-v2020-2.0-U6-Release (версия ядра: 5.10.78-Release-OPENFANS+20211111-v8) ;
5.10.88-Release-OPENFANS+20211222-v8 (одиночное обновление пакета).---
Если вы столкнулись с проблемой отображения браузера Chromium на версии 202006 U3, обратитесь здесь. Эта проблема была исправлена после версии >=20200617U3
Мы рекомендуем обновиться до версии "5.10.88-Release-OPENFANS+20211222-v8" системы ядра и firmware.
Примечание: Фirmware >=U3, >=U4 не поддерживают обновление с версий <=U2 (включительно)!
Большое спасибо за ваш донат! Мы получаем самую большую силу от вашего поддержания!
1-1. Окружение системы (Версии)
1-2. Окружение системы (Основное окружение)
1-3. Сравнение особенностей разных версий
1-4. Некоторые результаты тестирования производительности системы
[2. Введение основных возможностей]
2-1. Веб-визуальное управление интерфейсом
2-2. Поддержка виртуализации QEMU-KVM
2-3. Поддержка контейнеров Docker
2-4. Поддержка файловой системы AUFS
2-6. Оптимизация памяти и swap на уровне алгоритма2-7. Тема рабочего стола macOS Mojave
2-8. CecOS-CaaS контейнерное облако (ПОДДЕРЖИВАЕТСЯ ТОЛЬКО КИТАЙСКИМ ЯЗЫКОМ)
3. Инструкции по использованию
3-1. Инициализация системы (Первый запуск)
3-3. Примечание к веб-интерфейсу входа
3-4. Предварительно настроенные элементы
3-5. Настройка беспроводной сети
3-7. Запуск пользовательского скрипта при старте
3-8. НЕ УСТАНОВЛЯТЬ обновление окружения рабочего стола Deepin
3-9. Отображение китайских шрифтов в TTY (не удаленно) в китайской среде
3-10. Поддержка удалённого доступа через VNC с веб-интерфейса для темы рабочего стола macOS Mojave
3-11. Переключение каналов звука
3-12. Поддержка 32-битного программного обеспечения ARMHF
3-13. Включение и запуск службы Docker3-14. Включение и запуск CecOS CaaS контейнерного облака
3-15. Создание и присоединение/отсоединение от кластера Docker
3-16. Примечание к часто задаваемым вопросам
- 3-16.1 Использование профилей для подключения к беспроводным сетям графического окружения
- 3-16.2 Конфликт версий при установке пакетов с помощью команды APT
- 3-16.3 Ошибка отображения в интерфейсе браузера Chromium
- 3-16.4 Утрата соединения Bluetooth аудио
- 3-16.5 Проблема запуска с помощью USB массового хранения
- 3-16.6 Как обновить Docker CE
- 3-16.7 Изменение монофонического выхода аудио на стерео для версии системы для рабочего стола
3-17. Дополнительные инструкции по приложениям
- 3-17.1 Примечание по установке WPS Office ARM 64-битной версии для рабочего стола
- 3-17.2 Как установить официальное приложение QQ для рабочего стола (версия Linux)
- 3-17.3 Дополнительный пакет OpenCV- 3-17.4 PiBox Android Runtime
4. Инструкции по виртуальной машине
4-1. Инструкции по стандартному образу виртуальной машины PKG
4-2. Инструкции по образу виртуальной машины PKG для BT-Panel
4-3. Как увеличить размер диска виртуальной машины
5. Обновление и установка пакетов
5-1. Установка пакетов системы
5-2. Обновление ядра и прошивки
5-5. Поддержка USB-запуска для RPi4 (обновление прошивки EEPROM)
5-6. Новые возможности только для тестирования
- 5-6.1 Включены драйверы Mesa Vulkan (v3dv) для RPi4 VC4 и V3D для аппаратного ускорения OpenGL
9. Благодарность----
Скриншот рабочего стола с темой macOS Mojave в XFCE.
Скриншот версии BaseOS Plus++: Вход в систему управления через веб.
Скриншот версии BaseOS Plus++: Интерфейс информации системы управления через веб.
Скриншот версии BaseOS Plus++: Интерфейс контейнеров управления через веб.
Скриншот версии BaseOS Plus++: Интерфейс консоли управления через веб.
Скриншот основной страницы CecOS CaaS Container Cloud.
Скриншот управления кластерами CecOS CaaS Container Cloud.
Скриншот рабочего стола с темой macOS Mojave: Поддержка мультимедийных данных.
Скриншот окружения рабочего стола Deepin: Основной рабочий стол.
Скриншот окружения рабочего стола Deepin: Панель управления.
Скриншот окружения рабочего стола Deepin: Настройки системы и информация о системе.
Скриншот рабочего стола с темой macOS Mojave: Управление графическим виртуальным машинным менеджером (VMM).
Скриншот рабочего стола с темой macOS Mojave: Запуск приложения Android: DOTA.
Скриншот рабочего стола с темой macOS Mojave: Запуск приложений Android: WPS (совместимое офисное программное обеспечение из Китая) и DOTA.
Скриншот рабочего стола с темой macOS-Mojave: Запуск приложения WPS-ARM64-Edition (совместимого офисного программного обеспечения из Китая).
Скриншот рабочего стола с темой macOS-Mojave: Запуск Windows 10 Arm Desktop Edition на QEMU.
Установка Arm Windows на QEMU.
Arm desktop PIFAN desktop.
Arm Windows на QEMU: информация о системе.
Windows ARM на QEMU: запуск приложения QQ X86-desktop версии.
Windows ARM на QEMU: запуск приложения WeChat X86-desktop версии.
Windows ARM на QEMU: запуск приложения TIM X86-desktop версии.
Поддерживает также Pi Zero 2 W
Необходимо использовать ОС и версию UPKG >= 2021-11-11-v2020-2.0-U6-Release (версия ядра: 5.10.78-Release-OPENFANS+20211111-v8)
Не задавайте вопросы о том, как использовать 64-битную операционную систему на Raspberry Pi и чем она отличается от 32-битной операционной системы?
Потому что Raspberry Pi с процессором 64-битного типа, к сожалению, официальная организация Raspberry Pi Foundation долгое время не предоставляла системы или программного обеспечения для поддержки этой операционной системы. Лишь в мае 2020 года была выпущена 64-битная бета-версия, которая действительно является Debian64+Pixel... А если вы хотите использовать другую операционную систему, то используйте свою голову...Все выпускаемые в данной статье версии являются официально проверенными и использованными в реальных условиях производства предприятий. Система была строго протестирована и используется нормально со всеми совместимыми устройствами Raspberry Pi 2Bv1.2, 3B/B+/A+, 4B, CM3/4, Pi400, Zero2W, такими как локальные проводные и беспроводные сетевые карты, Bluetooth, трехмерная графика и прочее. Количество всех пакетов системы практически равно количеству пакетов в X86 версии. Система была собрана на основе официальной 64-битной базовой версии Debian (не была собрана ни на какой другой портированной версии или третьей стороной), чтобы обеспечить оригинальность.Нет никаких других связей с официальным Raspberry Pi, поэтому нет проприетарных команд, таких как raspi-config, rpi-update и т.д., вам придётся самостоятельно редактировать конфигурационный файл (/boot/config.txt).
**Почему был выбран Debian?**Потому что Raspberry Pi имеет лучшую совместимость с операционной системой Debian (это неразрывно связано с Raspbian, которая также основана на операционной системе Debian с полным тестированием и наследует мощь и производительность Debian. Например: Ubuntu — самая известная и успешная распределенная операционная система, которая также основана на Debian). Эта система полностью отличается от всех систем, которые мы выпускали ранее (включая предыдущую 64-битную версию Debian, которую мы опубликовали). На этот раз всё было создано с нуля, используя базовый уровень zero-os, и создана новая автоматическая компиляция и упаковка тестовой системы в нашей лаборатории. Мы также переопределили процесс упаковки и скорректировали все связанные конфигурации, сделав множество модификаций, корректировок и оптимизаций для системы, исправив множество ошибок ядра. Было добавлено много новых функций, особенно с поддержкой аппаратной KVM виртуализации и оптимизацией настроек для Docker. **Мы специально переопределили и оптимизировали наш собственный цепочко-инструментальный компилятор и компилятор для сборки базового ядра и модулей Raspberry Pi при выпуске версии 2.0, что значительно улучшило производительность и эффективность компилятора (Касательно цепочко-инструментального компилятора, вы можете обратиться к компилятору Huawei Ark, который имеет аналогичное воздействие; наш компилятор оптимизирован для базовых компиляторных инструментов, таких как C, C++, G++, ASM, NM, ld, CMake и GLib, а также ориентирован на аппаратуру на основе Raspberry Pi, ARM aarch64 A53 и ARM-v8a A72, включая наборы команд аппаратуры и т. д.). **20 июня 2019 года фонд Raspberry Pi выпустил новую четвертую генерацию одноплатного компьютера "Raspberry Pi 4B". Мы получили 4-ю версию 4G от официального магазина Raspberry Pi в Кембридже для первой установки.
6 июля 2019 года, спустя полмесяца после выхода Pi4, сообщество OPENFANS и Pi Fan Base совместно выпустили новую версию операционной системы Debian-Pi-Aarch64 2.0.
Это первая в мире 64-битная система, поддерживающая все 64-битные устройства Raspberry Pi!!! (Включает: 2Bv1.2, 3B/B+/A+, 4B, CM3/4, Pi400, Zero2W)
Все новые версии 2.0 поддерживают трёхмерное ускорение (с использованием FKMS), а также впервые представлена платформа управления контейнерами OPENFANS Container Cloud (также известная как CecOS CaaS, основанная на открытом проекте Portainer), которая более совершенна и мощна, чем версия системы 1.0!
Новая ОС 2.0 также следует всем превосходным традициям Debian-Pi-Aarch64 OS, созданной сообществом OPENFANS и Pi Fan Base.
Новая ОС 2.0 полностью поддерживает все одноплатные устройства Raspberry Pi aarch64: 2Bv1.2, 3B/B+/A+, 4B, CM3/4, Pi400, Zero2W и продолжает наследовать все возможности стабильной версии 1.0!
● BaseOS (без оконного менеджера, базовая версия)
Стандартное базовое изображение системы, без оконного менеджера X-Window.
**Формат имени системного образа: OPENFANS-Debian-Buster-Aarch64-XXXXXX.img**
● BaseOS Plus++ (без оконного менеджера, расширенная версия)``` Приложение дополнительных функций BaseOS с графическим веб-интерфейсом управления. Формат имени системного образа: OPENFANS-Debian-Buster-Aarch64-XXXXXX-plus.img
Уникальная система образов, внесённых из глубоко кастомизированной XFCE, полностью поддерживающая все возможности наших других версий! Формат имени системы образа: OPENFANS-Debian-Buster-Desktop-Aarch64-XXXXXX.img
● **окружение рабочего стола Deepin**
Основано на нашем собственном базовом системном образе BaseOS, из полного окружения рабочего стола Deepin 15.5 Pro было перенесено, что является первым 64-битным образом ARM64, созданным на основе полной архитектуры Debian Aarch64, адаптированной к Raspberry Pi 3B, 3B+, 3A+ 4B, и CM3, CM4. Формат имени системы образа: OPENFANS-Deepin-Professional-Desktop-Aarch64-XXXXXX.img
● **пакет обновления ядра и прошивки**
Общие правила названий имеют вид (начинаются с upkg): upkg-xxxx (годы)-xx (месяцы)-xx (день)-vxxxx-x-x-zip/zip.xz
---
### 1-2. Окружение системы (Базовое окружение)
Все образы системы версии 2.0 используют файловую систему ext4 по умолчанию, зеркало источника Tsinghua было установлено как основное хранилище программного обеспечения, и версия основана на Debian Buster 10 Arm64.
**Обратите внимание, что версия 2.0 временно не поддерживает обновление от других версий и требует свежей установки.**
```### 1-3. Сравнение возможностей различных версий
|Проекты|BaseOS|BaseOS Plus++|Полнолетное окружение рабочего стола|Окружение рабочего стола Deepin|
|---|---|---|---|---|
|Поддержка аппаратного виртуализатора KVM|★|★|★|★|
|Графический менеджер виртуальных машин|X|X|★|X|
|Контейнер Docker|☆|★|☆|☆|
|Платформа CecOS CaaS|☆|☆|☆|X|
|Менеджер WebGUI|X|★|★|X|
|Клиент Web SSH|★|★|★|★|
|Стандартный набор виртуальных машин|★|★|★|X|
|Набор BT-Panel|★|★|★|X|
---
**(1)Примечание:**
**★:** Обозначает поддерживаемое и включённое по умолчанию. Может использоваться сразу.
**☆:** Обозначает поддерживаемое, но выключено по умолчанию. Нужно запустить вручную.
(В этом документе будет приведена инструкция по использованию этого сервиса.)
**X:** Обозначает не поддерживаемое.
**(2)Управление службами**
Контейнер Docker
Ручное запуск: systemctl start docker.service Ручное завершение: systemctl stop docker.service Автоматическое запуск при старте: systemctl enable docker.service Отключение автоматического запуска при старте: systemctl disable docker.service
Платформа CecOS CaaS (порт службы: OnClickListener 8443)
Ручной запуск: systemctl start cecos-caas.service Ручной останов: systemctl stop cecos-caas.service Автозапуск включить: systemctl enable cecos-caas.service Автозапуск отключить: systemctl disable cecos-caas.service
Управление WebGUI (порт сервиса: 9090)
Ручной запуск: systemctl start cockpit.socket Ручной останов: systemctl stop cockpit.socket Автозапуск включить: systemctl enable cockpit.socket Автозапуск отключить: systemctl disable cockpit.socket
```markdown
Ручной запуск: systemctl start shellinabox.service
Ручной останов: systemctl stop shellinabox.service
Автозапуск включить: systemctl enable shellinabox.service
Автозапуск отключить: systemctl disable shellinabox.service
Незаконченные результаты тестирования, теоретические данные для справки:
Результаты тестирования UnixBench с использованием стандартной файловой системы Ext4 и Raspberry Pi 3B Plus (в сравнении с сравнимыми системами Debian Aarch64):
Общая производительность значительно превышает сравниваемую тестовую систему в 2-3 раза, некоторые показатели достигли более чем 10 раз, что составляет 1000% улучшения.
Последнее время Raspberry Pi провел много работ по оптимизации, текущая система по сравнению с предыдущей 32-битной системой имеет значительное улучшение, но ограниченная 32-битной архитектурой локального оборудования, разрыв производительности между 64-битной и 32-битной системами все еще велик.Приложение: Вентилятор Pi Debian Pi Aarch64 64-битная версия 1.0 системы против Raspbian 32-битной результаты сравнительного тестирования производительности
Результат Sysbench 0.4.12:
Проекты тестирования | ARM32/EXT4 | ARM64/F2FS | единицы измерения: время / меньше — лучше |
---|---|---|---|
Информация о системе | 2018-11-13-Raspbian | Raspberry Pi Fan 64-битная версия U8 | Увеличение в несколько раз |
CPU однопоточный | 119.2072 | 9.8725 | 12.07 |
Четырёхпоточный | 299.5217 | 24.6616 | 12.15 |
Восьмипоточный | 299.5824 | 24.6789 | 12.14 |
Случайное чтение памяти | 1.2625 | 0.8751 | 1.44 |
Прямое чтение памяти | 1.5803 | 1.1583 | 1.36 |
Прямое чтение-запись файла | 6.1621 | 2.2928 | 2.69 |
Случайное чтение-запись файла | 484.812 | 6.3527 | 76.32 |
Соотношения средней производительности: 14,95
Тестовое оборудование: Raspberry Pi 4B
Результат Sysbench 0.4.12:| Проекты тестирования | ARM32/EXT4 | ARM64/EXT4 | Единицы измерения: время / чем меньше, тем лучше | | --- | --- | --- | --- | | Система | 2019-06-20 raspbian-buster | 2019-07-06 Pi Fan 2.0 Beta Edition | Увеличение соотношения | | Однопоточный | 92,7292 | 6,7406 | 13,757 | | Четырёхпоточный | 231,6591 | 16,8172 | 13,775 | | Восьмипоточный | 231,5002 | 16,8282 | 13,757 | | Память случайная | 2,4225 | 0,6086 | 3,980 | | Память непрерывная | 2,5631 | 0,9267 | 2,766 | | Непрерывное чтение и запись файлов | 6,3636 | 1,8859 | 3,374 | | Случайное чтение и запись файлов | 627,719 | 10,6036 | 59,199 | | Выполнение взаимоисключающего блока (4096) | 0,0206 | 0,0081 | 2,543 |Максимальное соотношение производительности: 59,199
Среднее соотношение производительности: 14,144
Веб-визуальное управление на всех платформах (поддерживается только для BaseOS и полной версии с графическим интерфейсом).
С поддержкой веб-управления на новой 64-битной операционной системе версии 2.0, система обеспечивает визуальное управление всеми платформами, будь то стандартный графический интерфейс рабочего стола или системы без графического интерфейса (расширенная версия). Debian-Pi-Aarch64 открывает эру визуального управления.
Поддержка веб-управления:
1. Поддержка полной версии с графическим интерфейсом;
2. Полное открытие эры веб-управления, экономьте время использования терминальных инструментов,
в любое время, с любого места, управление через браузер;
3. По умолчанию активирован сервис контейнеров Docker,
(в версии 2.0 пожалуйста используйте и администрируйте контейнеры через CecOS CaaS Container Cloud);
4. Интегрированный веб-интерфейс для мониторинга всего сервиса;
5. Поддержка веб-интерфейса для просмотра состояния системы, информации о оборудовании, ситуаций и других данных;
6. Поддержка веб-интерфейса для установки имени хоста;
```7. Поддержка веб-интерфейса для настройки домена хоста;
8. Поддержка веб-интерфейса для установки времени хоста, серверов NTP, режима обновления;
9. Поддержка веб-интерфейса для выключения и перезапуска системы;
10. Поддержка управления журналами системы через веб-интерфейс;
11. Поддержка управления хранилищами системы и связанным периферийным оборудованием,
онлайн-разбиением разделов, монтированием оборудования и другими функциями;
13. Поддержка управления учетными записями системы через веб-интерфейс;
14. Поддержка управления службами системы через веб-интерфейс;
15. Поддержка управления обновлениями системы через веб-интерфейс;
16. Веб-интерфейс интегрирован с терминалом Shell, который можно использовать непосредственно на веб-странице;
17. Поддержка кросс-узлового и унифицированного управления: управление нескольким устройствам одним интерфейсом,
что значительно повышает эффективность управления и продуктивность;
18. Коммуникация веб-управления шифруется с помощью сертификатов SSL для обеспечения безопасности
сессионных данных.
```markdown

**Web SSH** клиентская поддержка, использующая отдельный веб-Shell (shellinabox) пакет, предоставляет отдельную **web SSH** поддержку входа.
### 2-2. Поддержка виртуализации QEMU-KVM
```Это локальная виртуальная машина QEMU с архитектурой AArch64, поддерживающая аппаратное ускорение KVM.
Мы переопубликовали бинарник KVM, чтобы исправить множество ошибок для **qemu-system-aarch64** в окружении аппаратного ускорения KVM:
По умолчанию версия системной виртуальной машины не может запуститься, система не может быть установлена, и т.д. После включения аппаратного ускорения KVM...
Мы добавили поддержку виртуальных машин KVM при компиляции ядра, что позволяет полностью поддерживать аппаратное ускорение, и добавили поддержку локального модуля ядра KVM, основные модули ядра следующие:
virtio //стандартный виртуальный диск
virtio-scsi //виртуальный SCSI диск
virtio-blk //прямое подключение блочного устройства диска
virtio-blk-scsi //прямое подключение блочного устройства диска в режиме SCSI
virtio-net //виртуальная сетевая карта virtio
virtio-balloon //устройство управления памятью
virtio-hw-random //устройство генерации случайных чисел
virtio-console //виртуальный консольный терминал
virtio-input //виртуальное устройство ввода
virtio-crypto-device //виртуальное устройство шифрования
virtio-drm-gpu //виртуальные графические возможности
12. Virtio-9p //поддержка разделенной директории с помощью v9p
13. vfio //поддержка прохождения устройств
14. vhost //взаимодействие данных с хостом
15. vhost-net //взаимодействие сетевых данных с хостом...
### Что такое KSM?
Основной принцип KSM заключается в том, что при наличии нескольких процессов операционная система Linux объединяет одинаковые страницы памяти ядра в одну страницу памяти.
Эта функция используется KVM для снижения потребления памяти несколькими похожими виртуальными машинами, что повышает эффективность использования памяти. Поскольку память делится между виртуальными машинами, несколько виртуальных машин используют меньше памяти, что особенно эффективно при использовании одного и того же образа и операционной системы для виртуальных машин. Для лучшей оптимизации эффективности памяти виртуальных машин все наши ядра поддерживают KSM по умолчанию.
Текущая версия 2.0 системы полностью поддерживает виртуализацию по умолчанию, а графический рабочий стол предоставляет визуальное приложение "**Virt-Manager**" для управления.
### 2-3. Поддержка контейнеров Docker
Здесь мы не будем подробно рассматривать известную систему Docker; вместо этого мы перекомпилировали ядро, чтобы добавить полную поддержку всех возможностей Docker. Это самое полное обеспечение поддержки Docker среди систем Raspberry Pi AArch64. Большинство других версий по-прежнему являются 32-битными системами с 32-битными Docker'ами, а локальные 64-битные ядра недостаточно поддерживают многие возможности Docker.Даже последняя версия популярной 32-битной системы Docker для Raspberry Pi **Hypriot** не обеспечивает полной поддержки **Docker Swarm**.
Вы получите следующее сообщение об ошибке, так как **Hypriot** не поддерживает **bridge vlan/vxlan netfilter**:
```bash
reexec to set bridge default vlan failed exit status 1
Это приведет к невозможности полноценного использования кластера Docker Swarm (система Hypriot OS), поскольку отсутствуют необходимые возможности поддержки сети, что вызывает проблемы с отсутствием некоторых функциональных возможностей.
Используя команды systemctl status containerd
и systemctl status docker
, а также просматривая журналы, вы можете найти множество ошибок и предупреждений на локальной 64-битной системе ARM. Локальное ядро системы потеряло по крайней мере следующие возможности: (система Hypriot OS и большинство других систем)
1. ограничение памяти cgroup
2. ограничение свопа cgroup
3. период времени cgroup rt
4. время выполнения cgroup rt
5. поддержка pid cgroup
6. cgroup памяти sysfs
7. cgroup rdma
8. cgroup perf
9. cgroup bridge vlan/vxlan
10. cgroup netfilter
11. cgroup сетевой приоритет
12. cgroup ограничение полосы пропускной способности CFS
13. Bridge vlan фильтр
14. ipvs
15. ipvs ipv6
16. память sysfs
17. Ядро KSM
...
Docker Compose
Официальный Docker не предоставляет версию docker-compose для архитектур arm/arm64, поэтому мы используем этот репозиторий для сборки и установки docker-compose.Ядро по умолчанию включает алгоритм управления затоплением TCP BBR.
Что такое TCP BBR?
Просто объясним, что решает TCP BBR:
- Полное использование пропускной способности сетевых соединений с определённым уровнем потерь,
идеально подходит для высоколатентных, широкополосных сетевых соединений;
- Снижает заполнение буфера данных на сетевых соединениях, снижая задержку,
что делает его идеальным для пользователей, имеющих низкие скорости передачи данных.
Кратко говоря, алгоритм управления затоплением TCP BBR может повысить скорость и эффективность передачи TCP до определённой степени и оптимизировать сетевую передачу.
Как отключить:
Редактируйте файл конфигурации "/etc/sysctl.conf", выполните команду "sysctl -p" для просмотра результатов, и не увидите следующих строк комментариев, что будет указывать на успешное выполнение операции.
Закомментируйте следующие две строки: (Просто поставьте "#" в начале каждой строки)
net.core.default_qdisc=fq
net.ipv4.tcp.congestion_control=bbr
Эта новая версия системы ядра по умолчанию добавляет функцию сжатия виртуальной памяти "zSWAP", которая предоставляет сжатый кэш обратной записи для страниц, предназначенных для свопа; максимальный размер физической памяти по умолчанию составляет 25% от общего объема памяти системы.
Почему zSWAP?
Когда страница памяти готова к свопу, zSWAP не перемещает её на устройство свопа, а сжимает и затем хранит в пуле памяти, динамически выделенной внутри системной памяти. Действие обратной записи на реальное устройство свопа откладывается или полностью избегается, таким образом значительно снижается количество ввода-вывода, используемого Linux системой для свопа. Для устройства типа Raspberry Pi, которое зависит от карты TF, первоначальное значение ввода-вывода не очень высоко; снижение использования ввода-вывода для свопа означает улучшение производительности системы, ввод-вывод используется в системных приложениях и других более необходимых задачах планирования. В ситуациях, когда используются файлы/разделы свопа, продолжительность жизни TF может быть увеличена за счёт снижения операций ввода-вывода на файлах/разделах свопа.zSWAP не виртуализирует блочное устройство, а внедряется в обычный код свопа перед фактическими операциями записи/чтения с диска. При первом использовании управления памятью для свопа данных, объём доступной памяти недостаточен для использования традиционных файлов/разделов свопа до тех пор, пока они не будут использованы. Поэтому zSWAP подходит для систем, уже имеющих разделы свопа, а также для аппаратных устройств, таких как Raspberry Pi, которые имеют ограниченное количество памяти.Почему не zRAM?
zSWAP использует как память, так и разделы свопа, автоматически регулируя размер памяти, при этом закэшированные данные автоматически хранятся в файле/разделе свопа, когда система начинает испытывать дефицит памяти. Это значительно повышает эффективность свопа системы, более полно использует ресурсы пространства памяти и избегает ситуацию дефицита памяти. В то время как zRam полностью использует память для выполнения операций и хранения данных, что полностью занимает память, обычно используется в случаях с большим объемом памяти, что не является подходящим для устройства с малым объемом памяти Raspberry Pi.
Алгоритмы выделения памяти и сжатия данных, используемые в этой системе:
Выделение памяти zpool: smalloc, zbud, z3fold
На практике показано, что хотя zsmalloc имеет высокий коэффициент сжатия, алгоритм сложен и требует дополнительных потоков для завершения работы с памятью, что потребляет больше времени процессора.
Реализация zbud проста, хранение страниц памяти не приводит к фрагментации памяти, но коэффициент сжатия низкий, достигая максимума 2 раза, что не удовлетворяет реальным требованиям систем с малым объемом памяти.Поэтому компания Sony разработала алгоритм выделения памяти z3fold, который точно такой же, как реализация zbud, за исключением того, что каждая страница может содержать три сжатых страницы, с максимальным коэффициентом сжатия 3 раза, и почти 4 раза по сравнению с zsmalloc. Это технология, используемая в Xperia XZP, чтобы получить опыт работы с 4 ГБ памяти на телефоне с таким же объемом.Мы выбрали алгоритм z3fold в нашей системе, и можно видеть конфигурацию в файле /boot/cmdline.txt:
zswap.enabled=1 zswap.zpool=z3fold zswap.compressor=lz4 zswap.max_pool_percent=25
Алгоритмы сжатия
Linux имеет множество алгоритмов сжатия: lz, lzo, xz, gzip, lzma... Мы采用了lz4,它具有非常高的压缩速度和较高的压缩率。与其它压缩算法相比,虽然lz4的压缩率不是最高的,但其速度确实是最快的。在使用z3fold算法的情况下,并结合了树莓派(Raspberry Pi)的性能特点以及实际测试结果,我们还希望获得良好的压缩率,但对于树莓派来说,速度是最重要的因素(考虑到它的CPU性能开销和内存大小)。
По умолчанию используется тема рабочего стола, имитирующая дизайн macOS Mojave.
Переозвучено от открытого проекта Portainer и адаптировано для китайской версии и других вариантов командой OPENFANS.
Поддержка трёхмерного ускорения, все окружения рабочих столов включены по умолчанию.
В версии 2.0 слишком много новых возможностей, поэтому мы здесь больше не будем подробно останавливаться на каждом из них.
Система автоматически расширяет корневой раздел, а затем автоматически конфигурируется до завершения процесса, при этом система автоматически перезагружается 3 раза.### 3-2. Учетные записи и пароли
Учетная запись по умолчанию: pi, пароль по умолчанию: raspberry
Учетная запись pi
поддерживает вход через SSH. Для установки пароля учетной записи root
сначала войдите в систему и используйте команду "sudo passwd root".
Или используйте команду "sudo -i" для перехода в режим пользователя root
.
1. Визуальное управление входом в систему
Адрес входа https://IP-адрес вашего Raspberry Pi:9090
Описание: Пожалуйста, войдите в систему с помощью учетной записи по умолчанию: pi
2. Веб-SSH клиентская страница входа
Адрес входа https://IP-адрес вашего Raspberry Pi:4200
Описание: Используется учетная запись с правами входа в консоли,
пользователь pi уже имеет эти права.
Система предоставляет предварительно настроенный сетевой конфигурационный профиль и задачи автозапуска при запуске системы. Пути и соответствующие профили указаны ниже:
Предварительно настроенные элементы | Пути профилей | Соответствующие пути системных файлов |
---|---|---|
Беспроводные сети | /boot/wpa_supplicant.conf | /etc/wpa_supplicant/wpa_supplicant.conf |
Кабелем соединённые сети | /boot/interfaces | /etc/network/interfaces |
Клиенты DHCP | /boot/dhclient.conf | /etc/dhcp/dhclient.conf |
Настраиваемые скрипты загрузки | /boot/rc-local | /etc/rc.local |
Если десктопная среда хочет подключаться к беспроводным сетям с помощью подхода, основывающегося на модификации конфигурации, пожалуйста, обратите внимание здесь.
Модифицируйте файл "/boot/wpa_supplicant.conf"
## Чтобы использовать этот файл, вам нужно выполнить команду: ##
## "systemctl disable network-manager" и перезапустить систему.##
##
## (Не отменяйте комментарий этой строки!) ##
## 'country' используется для указания страны Wi-Fi, 'CN' - Китай ##
#country=CN
#ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
#update_config=1
## Следующие "WIFI 1", "WIFI 2" представляют настройки нескольких беспроводных сетей ##
## Если вы не хотите настраивать несколько беспроводных сетей, ##
## то вам достаточно настроить "WIFI 1". ##
## WIFI 1 (Не отменяйте комментарий этой строки!) ##
## Кроме отмены комментариев содержимого, которое должно вступить в силу, ##
## вам нужно изменить только содержимое кавычек после "ssid" и "psk". ##
## ssid — это имя вашей беспроводной сети Wi-Fi, psk — это пароль вашей беспроводной сети Wi-Fi ##
#network={
# ssid="ваш-ssid-wifi1"
# psk="пароль-wifi1"
# priority=1
# id_str="wifi-1"
#}
```## WIFI 2 (Не отменяйте комментарий этой строки!) ##
#network={
# ssid="ваш-ssid-wifi2"
# psk="пароль-wifi2"
# priority=2
# id_str="wifi-2"
#}
Настройки кода страны для беспроводной сети
Редактирование файла "/etc/default/crda", редактирование содержимого после "REGDOMAIN=", по умолчанию установлено значение "CN" (Китай), обычно никаких дополнительных настроек не требуется.
Справочник кодов стран для беспроводной сети:
AU Австралия
CA Канада
CN Китай
GB Великобритания
HK Гонконг
JP Япония
KR Корея
DE Германия
US США
TW Тайвань
Модификация файла "/boot/interfaces"``` Файлы конфигурации interfaces (5), используемые командами ifup (8) и ifdown (8). Включите файлы из /etc/network/interfaces.d: source /etc/network/interfaces.d/* Используйте DHCP для установки адреса eth0 в inet dhcp, или используйте статический IP-адрес для установки eth0 в static. Измените другие сетевые параметры.
Если вы хотите применить изменения, отмените закомментированные строки.
#auto eth0 #allow-hotplug eth0 #iface eth0 inet dhcp #iface eth0 inet static #address 172.16.192.168 #netmask 255.255.255.0 #gateway 172.16.192.1 #dns-nameservers 8.8.8.8
Система поддерживает возможность использования пользовательских скриптов как задач автозапуска во время загрузки, что можно предварительно настроить до начала работы системы.Редактируйте файл сценария **"/boot/rc-local"** и добавьте содержание пользовательского скрипта перед строкой: **"exit 0"**.
### 3-8. НЕ УСТАНОВЛЯТЬ Обновление окружения рабочего стола Deepin
**Версии после 10 ноября 2019 года (включительно) поддерживают обновление!**
Из-за проблем совместимости с системой Deepin и внешними хранилищами (Deepin сам по себе), настоятельно рекомендуется не использовать нижеследующие команды или любые другие действия, которые могут привести к обновлению системы, если вы точно знаете, что делаете!!!
Все версии системы Deepin требуют внимания, включая все версии Deepin 1.0 и 2.0!
apt upgrade apt-get upgrade apt dist-upgrade apt-get dist-upgrade
**Примечание:**
*Некоторое программное обеспечение может быть установлено только из-за проблем совместимости с системой Deepin, что может вызвать ошибки, препятствующие запуску системы или другие непредвиденные проблемы, так как количество программного обеспечения слишком велико, мы не можем тестировать каждую отдельно, поэтому приветствуем обратную связь, рекомендуем установку через исходный код.*
*Программное обеспечение из магазина Deepin Software предоставляется Deepin, а не нами, в настоящее время магазин Deepin Software не предоставляет поддержку программного обеспечения для arm64, если вам это необходимо, пожалуйста, обращайтесь за помощью на официальном форуме Deepin.**Поэтому мы настоятельно рекомендуем использовать нашу кастомную версию рабочего стола с темой macOS Mojave.*
### 3-9. Отображение китайского шрифта в TTY (локально)
Уведомление: удаленный вход игнорирует эту проблему, путаницы не будет. При использовании локального терминала через локальный монитор или последовательное соединение, поскольку локальные стандартные TTY ядер Linux не поддерживают отображение китайских шрифтов, требуется выполнить следующие действия при появлении путаницы.
Необходимо установить расширение fbterm, чтобы сделать это, используйте следующие команды в сети:
sudo apt update; sudo apt install fbterm -y
sudo adduser root video ; sudo adduser pi video
sudo adduser имя_вашего_собственного_пользователя (если есть) video
Примечание:
Рабочий стол с темой macOS Mojave (окружение рабочего стола, полноценная версия), версия после 2019-11-17 (включительно), имеет встроенную поддержку веб-интерфейса VNC удаленного рабочего стола.``` По умолчанию пароль доступа к VNC: raspberry Адрес веб-интерфейса VNC по умолчанию: http://your-rpi-ip-addr:5901 Адрес клиента VNC по умолчанию: your-rpi-ip-addr:5900
Если вы хотите использовать клиент для подключения к серверу VNC, мы рекомендуем вам использовать RealVNC client, который можно скачать [здесь](https://www.realvnc.com/en/connect/download/viewer/).
#### Инструкции по использованию веб-интерфейса VNC удаленного рабочего стола
Существует два способа использования по умолчанию VNC:
**● Подключение реального монитора**
VNC был включен по умолчанию, поэтому никаких действий выполнять не требуется.
**● Без подключения какого-либо монитора**
VNC был включен по умолчанию, но если у вас нет подключенного монитора, следует использовать виртуальный монитор. Выполните команду: "virtual-monitor-enable", чтобы включить режим работы с виртуальным монитором. После этого система перезапустится.
#### ВАЖНО
Если вы хотите включить режим работы с виртуальным монитором, вы не должны подключаться к реальному монитору одновременно. Если вы уже включили режим работы с виртуальным монитором, выполните команду:
"virtual-monitor-disable"
чтобы вернуться к обычному режиму при подключении реального монитора.
**Примечание: Режим работы с виртуальным монитором не включен по умолчанию.**
#### Команды для по умолчанию VNC
**virtual-monitor-enable**
Включает режим работы с виртуальным монитором, без подключения реального монитора. После этого система перезапустится.
Отключает режим работы с виртуальным монитором, возвращается к обычному режиму и подключается к реальному монитору. После этого система перезапустится. Это стандартный режим системы.
**enable-vnc**
Включает службу VNC по умолчанию. После этого система перезапустится. Служба VNC включена по умолчанию.
**disable-vnc**
Отключает службу VNC по умолчанию. После этого система перезапустится.
**vnc-passwd**
Изменяет пароль доступа к VNC по умолчанию.
---
### 3-11. Переключение каналов вывода звука
Версия 2.0: По умолчанию система использует **HDMI** для вывода аудио.
Команды для переключения выхода звука:
```bash
amixer cset numid=3 2
## Установите выход здесь на значение 2, что соответствует HDMI.
## Установка выхода на значение 1 переключает на аналоговый сигнал (то есть разъем наушников).
## По умолчанию значение равно 0, что представляет автоматический выбор.
После того как вы завершите изменения в настройках аудио, вам потребуется перезапустить ваш Raspberry Pi, чтобы ваши изменения вступили в силу.
Если звук через HDMI всё ещё не воспроизводится:
В некоторых редких случаях требуется редактирование файла config.txt
, чтобы заставить систему использовать режим HDMI (в отличие от режима DVI, который не передаёт звук).
Вы можете сделать это, редактируя файл /boot/config.txt и установив значение hdmi_drive=2, затем перезагружив систему для применения изменений.### 3-12. Поддержка 32-битного программного обеспечения ARMHF
dpkg --add-architecture armhf
apt update
## Сначала необходимо установить базовую библиотеку "libc6:armhf".
apt install libc6:armhf
apt install [Имя другого пакета]:[armhf]
## Для установки 32-битного программного обеспечения добавьте суффикс ":armhf" после имени пакета.
Службы BaseOS и Desktop Full-Features Versions по умолчанию не активированы и требуют ручного запуска.
## Активировать службу Docker для автозапуска при старте системы.
systemctl enable docker.service
## Запустить службу Docker.
systemctl start docker.service
######
## Остановить службу Docker.
systemctl stop docker.service
## Отключить службу Docker от запуска при старте системы.
systemctl disable docker.service
Службы BaseOS и Desktop Full-Features Versions по умолчанию не активированы и требуют ручного запуска.
Примечание: Чтобы включить службу CecOS CaaS контейнерного облака, сначала необходимо включить и запустить службу Docker!
## Активировать службу CecOS CaaS контейнерного облака для автозапуска при старте системы.
systemctl enable cecos-caas.service
## Запустить службу CecOS CaaS контейнерного облака.
systemctl start cecos-caas.service
######
## Остановить службу CecOS CaaS контейнерного облака.
systemctl stop cecos-caas.service
## Отключить службу CecOS CaaS контейнерного облака от запуска при старте системы.
systemctl disable cecos-caas.service
```### 3-15. Создание и присоединение к кластеру Docker или выход из него
docker swarm init
docker node ls
docker swarm leave --force
### 3-16. ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ
#### 3-16.1 Использование профилей для подключения к беспроводным сетям графического окружения рабочего стола
Графическое окружение рабочего стола использует профиль для подключения к беспроводной сети, а после изменения файла **/boot/wpa_supplicant.conf**, чтобы обеспечить хорошую совместимость с сетью, выполните следующие действия:
с правами пользователя root:
```Shell
systemctl disable NetworkManager
Затем выполните:
sed -i \
's/sudo systemctl restart NetworkManager/## sudo systemctl restart NetworkManager/g' \
/home/pi/.xsessionrc
Наконец, после перезапуска все будет готово.
Описание проблемы:
Используя команду apt для установки deb-пакета онлайн, вы можете столкнуться с проблемой отсутствия подходящей версии, например:
Следующие пакеты имеют нереализованные зависимости:
package-name-1 : зависит от package-name-2 (>= x.x.x-xxx-2), но установлен x.x.x-xxx-1
рекомендует package-name-3, но он не будет установлен
E: Невозможно исправить проблемы, у вас есть сломанные пакеты.
**Причина:**Это связано с тем, что некоторые новые пакеты верхнего уровня, установленные в нашей системе, не совпадают по версии с пакетами в стандартном репозитории.Решение:
Чтобы временно включить репозиторий программного обеспечения верхнего уровня sid, добавьте команду sudo sid-used
перед вашей командой apt:
Пример: sudo sid-used
apt install package-name
Причина:
Вы можете столкнуться с этой проблемой в версии 20200615 U3, так как мы изменили mesalib, следует использовать другой способ для настройки Chromium.
Решение:
Выполните команду:
sudo sed -i \
's/"hardware_acceleration_mode":{"enabled":true},/"hardware_acceleration_mode":{"enabled":false},/' \
/home/pi/.config/chromium/Local\ State
Затем перезапустите свой браузер Chromium.
Причина:
Raspberry Pi имеет проблемы совместимости Bluetooth между alsa и pulseaudio.
Решение:
Отключите службу Bluealsa, используйте только pulseaudio для Bluetooth-audio. Выполните следующую команду и перезагрузитесь:
systemctl mask bluealsa.service
Примечание: Здесь вы должны использовать "mask" для деактивации bluealsa.service
, а не использовать "disable"!
Если у вас возникли проблемы с запуском с USB массового хранения, прочтите здесь для решения проблемы.
Выполните следующие команды от имени пользователя root:
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
echo "deb https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian \
$(lsb_release -cs) stable" | \
sudo tee /etc/apt/sources.list.d/docker.list
apt update
apt upgrade
```#### 3-16.7 Изменение монофонического выхода аудио на стерео для версии системы для рабочего стола
Редактируйте файл **/usr/share/pulseaudio/alsa-mixer/profile-sets/default.conf**
Добавьте символ ";" в начало каждой строки следующего содержимого для комментирования:
[Mapping analog-mono] device-strings = hw:%f channel-map = mono paths-output = analog-output analog-output-lineout analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono paths-input = analog-input-front-mic analog-input-rear-mic analog-input-internal-mic analog-input-dock-mic analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line analog-input-headset-mic priority = 7
Следующее — это содержимое после комментирования:
;[Mapping analog-mono] ;device-strings = hw:%f ;channel-map = mono ;paths-output = analog-output analog-output-lineout analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono ;paths-input = analog-input-front-mic analog-input-rear-mic analog-input-internal-mic analog-input-dock-mic analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line analog-input-headset-mic ;priority = 7
Наконец, перезапустите систему для применения изменений.
### 3-17. Дополнительные инструкции по приложениям
#### 3-17.1 Инструкция по установке WPS Office Arm 64-bit для рабочего стола
Получите пакет установки из папки "APP" репозитория загрузок, после распаковки установочного пакета перейдите в директорию установочного пакета. Затем подключитесь к общественной сети и выполните следующую команду от имени суперпользователя:```shell
sudo ./install.sh
Программа будет установлена.
Примечание: тестировать только на версии темы macOS Mojave с кастомным рабочим столом!!
Для тестирования и обучения только!!!
Убедитесь, что ваша система может подключаться к интернету, затем запустите следующие команды от имени суперпользователя:
qq_pkg='linuxqq_2.0.0-b1-1024_arm64.deb' ; \
cd ~ ; \
wget https://raw.githubusercontent.com/openfans-community-official/Debian-Pi-Aarch64/master/add-app/$qq_pkg ; \
apt install ./$qq_pkg -y ; \
rm -rf ./$qq_pkg
После этого установка приложения завершится.
Внимание: Этот пакет поддерживает только полную версию рабочего стола "Debian-Pi-Aarch64" !! Относительные тесты других версий.
Версия: 4.5.1
Особенности: Поддерживает аппаратное ускорение и кодирование видео с помощью графического процессора.
Скачать: Вы можете найти его в разделе "Extra" -> "OpenCV" на сайте "Debian-Pi-Aarch64" Baidu Cloud и MEGA Online Disk Share Repo.
Установка:
Скачайте пакет, убедитесь, что ваша система может подключаться к интернету, затем выполните команду:
sudo apt install -y ./xxxxxx.deb
"xxxxxx.deb
" — это имя OpenCV пакета.
После выполнения указанной выше команды перезапустите систему, все будет сделано.#### 3-17.4 PiBox Android Runtime
Для тестирования только!!
Адрес скачивания:
Baidu NetDisk -> PIFAN Apps -> Pibox (Android Box)
Метод установки:
Выполните install.sh
после распаковки.
Примечание:
Если появится предупреждение о том, что процесс "system" не отвечает, выберите "ожидание".
Известная проблема: приложение медленно открывается в первый раз после загрузки системы.
Требуется версия ядра системы ≥ "5.10.82-Release-OPENFANS+20211204-v8".
Ресурсные пакеты виртуальных машин обычно публикуются как архивные пакеты, и следующие команды выполняются для установки поддержки распаковки этих пакетов:
apt update; apt install tar gzip zip unzip bzip2 xz-utils -y
По умолчанию пользователь: root (удалённые права доступа включены), пароль: raspberry
После распаковки пакета ресурсов виртуальной машины перейдите в директорию с ресурсами виртуальной машины и распакуйте образ виртуального диска:
xz -d -k disk.qcow2.xz
Вы получите образ виртуального диска disk.qcow2, и систему можно будет восстановить в любое время с помощью указанных выше команд.
Запуск виртуальной машины:
sudo ./vm-run
## Этот скрипт запустит виртуальную машину в фоновом режиме по умолчанию.
```Запустите виртуальную машину так же, как это было сделано на предыдущей станции:
Скопируйте файл **vm_run** и переименуйте его в **vm_run2**, откройте файл **vm_run2** и удалите следующие две строки:
... ## опущено содержание
nohup
... ## опущено содержание
&
... ## опущено содержание
Затем выполните **"sudo ./vm_run2"**.
**Удалённый вход:**
Порт 22 виртуальной машины по умолчанию отображается на локальный порт 2222, поэтому SSH-доступ осуществляется непосредственно к локальному порту 2222.
Пример команды:
ssh -p 2222 root@local-ip-address
---
### 4-2 Инструкции по установке виртуальной машины BT-Panel
Чтобы заботиться о новых пользователях и отвечать на голоса людей, мы в конечном итоге "интегрировали" Pagoda для вас, используя виртуальную машину, 32-битную сверхчистую кастомизированную систему ARMHF, оптимизированную для Pagoda, даже для виртуальных машин скорость значительно выше, чем у официальной системы (кто использовал, тот понимает :)).
Для запуска тестового примера:

По умолчанию все программы установлены. Версия 5.9.X — относительно стабильная профессиональная "обучающая версия". Она предназначена только для тестирования!!
**Почему BT-Panel?**
**Почему не интегрировать напрямую в 64-битную ОС?**```
1. Полная интеграция не обязательна для всех, слишком много лишнего;
2. Загрязнение системы;
3. BT-Panel крайне плохо совместима с ARM64;
4. Установка BT-Panel не является простым процессом. Программы, необходимые для работы на ARM-системах, обычно требуют перекомпиляции. Совместимость низкая, а процесс долгий. Можно сказать, что вы начинаете сомневаться в своих действиях и хотите заплакать;
5. Мы столкнулись с различными странными проблемами во время использования;
6. Это не означает, что BT-Panel плоха в общем. Однако совместимость на ARM64 представляет собой значительную проблему. Чувствуется, что официальные лица не провели должное тестирование. Все работы выполняются как бесплатное тестирование для них.
Инструкции:
Как и при работе со стандартной виртуальной машиной, распакуйте архивированный пакет, затем переместитесь в директорию виртуальной машины и выполните необходимые операции.
Установка:
sudo ./install
Запуск BT-Panel Виртуальной Машины:
./bt_run
Остановка BT-Panel Виртуальной Машины:
Для обеспечения безопасности синхронизации данных виртуальной машины следует следовать указанным ниже шагам:
Подключитесь к виртуальной машине через SSH и выполните команду "shutdown".
```После выключения вам потребуется выполнить команду `./bt_prog` в директории BT-Panel виртуальной машины, чтобы проверить, был ли выключен виртуальный сервер.
Если нет вывода, это означает, что виртуальная машина была выключена правильно.
Если виртуальная машина не может быть грациозно выключена, выполните команду `./bt_prog kill` в директории BT-Panel виртуальной машины.
Не забудьте снова выполнить команду `./bt_prog`, чтобы проверить, действительно ли виртуальная машина выключена.
Автоматический запуск:
## Включение автоматического запуска при старте системы
./install int
## Отключение автоматического запуска при старте системы
./install uint
Стандартные значения параметров:
Проект | Содержание |
---|---|
Стандартный порт управления | 28888 |
Стандартный адрес управления | http://IP-адрес-вашего-Raspberry-Pi:28888/ |
Стандартный пользователь и пароль управления веб-интерфейса | openfans/openfans |
SSH-порт BT-Panel виртуальной машины | 2222 |
Стандартный пароль root BT-Panel виртуальной машины | raspberry |
Как использовать ssh для подключения к BT-Panel виртуальной машине?
Локальное подключение: ssh -p OnClickListener 2222 root@localhost
Внешнее подключение: ssh -p 2222 root@IP-адрес-вашего-Raspberry-Pi
ВАЖНО:
Не изменяйте стандартный порт управления BT-Panel, если вы не знаете, как изменять скрипт установки.
```Если вам требуется включить поддержку сайта для пользовательских портов, отредактируйте файл портов и добавьте ваш пользовательский порт, но не изменяйте другие стандартные порты в этом файле.
Чтобы сэкономить время и повысить производительность, все функции BT-Panel включены по умолчанию.
---
### 4-3 Как увеличить размер диска виртуальной машины
Сначала убедитесь, что ваша виртуальная машина выключена или не запущена.
В этом руководстве используется образ диска **bt.qcow2.disk** как пример.
#### 4-3.1 Расширение диска
**Просмотр размера диска**
Выполнение команды:
```shell
qemu-img info bt.qcow2.disk
Полученные данные:
Image: bt.qcow2.disk
Формат файла: qcow2
Виртуальный размер: 10ГБ (10737418240 байт)
Используемый объем: 6.4ГБ
Размер кластера: 65536
Информация специфичная для формата:
Сверка: 1.1
Ленивая проверка счетчиков: нет
Разряды счетчиков: 16
Корректность: нет
Расширение диска
Цель состоит в том, чтобы добавить 10 ГБ к размеру диска виртуальной машины.
Выполните следующую команду:
qemu-img resize bt.qcow2.disk +10G
Затем снова просмотрите размер диска
Выполнение команды:
qemu-img info bt.qcow2.disk
Результаты:
Image: bt.qcow2.disk
Формат файла: qcow2
Виртуальный размер: 20ГБ (21474836480 байт)
Используемый объем: 6.4ГБ
Размер кластера: 65536
Информация специфичная для формата:
Сверка: 1.1
Ленивая проверка счетчиков: нет
Разряды счетчиков: 16
Корректность: нет
Сначала запустите виртуальную машину и войдите в неё.
ssh -p 2222 root@localhost
Просмотр размера диска
Выполните команду:
fdisk -l /dev/sda
Результаты:
Диск /dev/sda: 20 ГБ, 21474836480 байт, 41943040 секторов # Размер увеличен до 20 ГБ
Единицы: секторы по 1 * 512 = 512 байта
Размер сектора (логический/физический): 512 байт / 512 байт
Размер I/O (минимальный/оптимальный): 512 байт / 512 байт
Тип метки диска: dos
Идентификатор диска: 0xcd0e4df1
Устройство Бут Начало Конец Секторы Размер Id Тип
/dev/sda1 * 2048 20969471 20967424 10 ГБ 83 Linux # Размер раздела не был расширен
Просмотр размера раздела
Выполните команду:
df -hT
Результаты:
Файловая система Тип Размер Использовано Доступно Использование% Монтировано на
Udev devtmpfs 496М 0 496М 0% /dev
Tmpfs tmpfs 103М 1.5М 101М 2% /run
/dev/sda1 btrfs 10Г 4.7Г 4.7Г 50% / # Объем раздела не расширен
Tmpfs tmpfs 513М 4.0К 513М 1% /dev/shm
Tmpfs tmpfs 5.0М 0 5.0М 0% /run/lock
Tmpfs tmpfs 513М 0 513М 0% /sys/fs/cgroup
Tmpfs tmpfs 103М 0 103М 0% /run/user/0
Установка parted инструмента управления дисками
apt update && apt install parted -y
Расширенное разделение
Введите следующую команду: parted и выполните следующие шаги:
parted
На этом этапе вы можете видеть информацию о диске следующим образом:```shell GNU Parted 3.2 Используется /dev/sda # Это диск, который нам нужно использовать Добро пожаловать в GNU Parted! Введите «help», чтобы просмотреть список доступных команд. (parted) print # Введите "print", чтобы просмотреть информацию о диске текущей операции Модель: QEMU QEMU HARDDISK (scsi) Диск /dev/sda: 21.5 ГБ # Общее размер увеличен до 20 ГБ Размер сектора (логический/физический): 512 Б/512 Б Таблица разделов: msdos Флаги диска: Номер Начало Конец Размер Тип Файловая система Флаги 1 1049 КБ 10.7 ГБ 10.7 ГБ основной btrfs boot
Пояснения к изменениям:
1. Добавлены пробелы после чисел и единиц измерения.
2. Удалены лишние пробелы перед единицами измерения.
3. Корректно оформлены единицы измерения (ГБ, КБ).Следующий шаг — ввести следующую команду **resizepart** :
```shell
(parted) resizepart
# Введите команду "resizepart" для расширения раздела
Номер раздела? 1
# Введите номер раздела для расширения. Поскольку наш диск имеет только один раздел, введите "1".
Предупреждение: Раздел /dev/sda1 используется. Вы уверены, что хотите продолжить?
Да/Нет? да # Подтвердите продолжение, введите "да"
Конец? [10.7ГБ]? 100%
# Введите "100%", чтобы расширить все доступное пространство до указанного выше раздела.
(parted) print
# Введите "print", чтобы просмотреть информацию о диске текущей операции
Модель: QEMU QEMU HARDDISK (scsi)
Диск /dev/sda: 21.5ГБ
Размер сектора (логический/физический): 512Б/512Б
Таблица разделов: msdos
Флаги диска:
Номер Начало Конец Размер Тип Файловая_система Флаги
1 1049КБ 21.5ГБ 21.5ГБ основной btrfs boot
# Вы можете видеть, что увеличенная емкость диска успешно расширена.
(parted) quit # Введите "quit", чтобы завершить работу
Информация: Возможно, вам потребуется обновить /etc/fstab.
Обновление таблицы разделов
Выполните следующую команду
partprobe /dev/sda
partprobe /dev/sda1
Расширение файловой системы
Наша виртуальная машина использует файловую систему btrfs. Операция расширения связанной файловой системы btrfs выполняется следующим образом:
Выполнение команды
btrfs filesystem resize max /
Вы получите следующее сообщение```shell расширение '/' до 'max'
**Перезапрос раздела**
Эта статья расширяет корневой раздел **"/"**, поэтому следующим шагом будет перезапрос корневого раздела **"/"**. Выполнение команды:
```shell
mount -o remount,rw /
Синхронизация данных
Выполнение команды:
sync
Результаты проверки
Проверка размера раздела
введите команду
df -hT
Результаты следующие:
Файловая система Тип Размер Использован Доступно Использование Вмонтировано на
Udev devtmpfs 496М 0 496М 0% /dev
Tmpfs tmpfs 103М 1.5М 101М 2% /run
/dev/sda1 btrfs 20Г 4.7Г 15Г 25% / # раздел успешно расширен
Tmpfs tmpfs 513М 4.0К 513М 1% /dev/shm
Tmpfs tmpfs 5.0М 0 5.0М 0% /run/lock
Tmpfs tmpfs 513М 0 513М 0% /sys/fs/cgroup
Tmpfs tmpfs 103М 0 103М 0% /run/user/0
Перезапустите виртуальную машину, снова войдите и выполните команду df -hT, чтобы определить результат
Для обновления системы используйте инструменты или команды системы, такие как "apt update; apt upgrade"
Из-за проблем совместимости с Deepin, не выполняйте никаких обновлений системы на рабочем столе Deepin!!
Загрузите пакет обновления ядра и прошивки, извлеките его и перейдите в каталог обновленного пакета, выполните следующую команду:``` cd ./upkg sudo sh ./sys_upgrade
По завершении перезапустите систему.
#### Примечание:
**Версия 2.0 в настоящее время не поддерживает обновление с любой другой версии и требует нового установления.**
### 5-3 Инструкции по обновлению
Нажмите **[здесь](./update.md)**, чтобы просмотреть инструкции по обновлению.
### 5-4 Последняя текущая версия
Нажмите **[здесь](./versions.md)**, чтобы просмотреть информацию о последней текущей версии.
### 5-5 Поддержка USB-boot для Rpi4 (Обновление прошивки EEPROM)
Нажмите **[здесь](./FW/)**, чтобы скачать файл для обновления прошивки EEPROM, что обеспечит поддержку USB-boot для Rpi4.
После распаковки файлов, пожалуйста, прочтите файл readme.txt и следуйте указанным шагам для обновления. (Примечание: Вы должны обновить прошивку в режиме TF-boot прежде всего).
### 5-6 Новые возможности только для тестирования
## ОБРАЩЕНИЕ: !!!!!! (Важно)
#### Следующие драйверы включены и адаптированы к самому последнему MESA после версии "2021-06-11-v2020-2.0-U6-Release (включительно)" и больше не требуется отдельная установка.
#### 5-6.1 Драйверы Mesa Vulkan (v3dv) включают RPI4 VC4 и V3D для аппаратного ускорения OpenGLМы обновили драйверы Mesa [21.0.0], добавив поддержку Vulkan (v3dv), которая включает RPI4 VC4 и V3D для аппаратного ускорения OpenGL.












**Где и как обновиться?**
Используйте права пользователя root:
**Важно:** Для этого тестирования требуется версия ядра **>= "5.10.25-Release-OPENFANS+20210325-v8"**
Вначале выполните команду: apt update; apt install dpkg-dev -y
Скачайте сжатый пакет и распакуйте его в корневую ("/") директорию.
Измените права доступа распакованного файла на пользователя "_apt", выполните команду: chown -R _apt [Путь к распакованному файлу]
Перейдите в директорию с распакованным файлом и выполните команду: sh ./install.sh
После чего перезагрузите систему, все будет сделано.
**Примечание:**
Пути к файлам для скачивания.
Для Thunder Share: "/raspberry-pi-images/2021-new/Testing/Graphic_Libs/v2/debs_repo.zip"
Для Baidu network disk: "/Debian-Pi-Aarch64-2.0-Release/Testing/Graphic_Libs/v2/debs_repo.zip"
Для MEGA: "/Debian-Pi-Aarch64/2021/extra/Graphic_Libs_Trsting/debs_repo.zip"
---
## 6. Ссылки для скачивания
- Thunder Share: [Скачать](https://pan.xunlei.com/s/VMQ7-_8i3FJgwahadCfHzyetA1) *пароль от раздачи:* **f5b3**
- Baidu network disk: [Скачать](https://pan.baidu.com/s/1VPWngCO1aEPJXFMLiODmNg) *пароль от раздачи:* **xbwy**
- MEGA: [Скачать](https://mega.nz/folder/coVQAaZR#ifOeikkhJpGYw8B7vvlDOg)
---
## 7. Другие инструкции
### 7-1 Донат
#### Благодарим за ваш донат! Мы получаем самую большую силу от вашего поддержания!
Вы можете выбрать сканирование QR-кода Alipay для прямого спонсорства, чтобы поддержать нас, и мы гарантируем, что все пожертвования будут использоваться для развития проекта и покупки оборудования.
### 7-2 Контактная информация
**Рубиния Пи Фан Бейс 64-битовая ОС специальное официальное сообщество**
* **QQ группа:** 703626518 (полностью) , 976102807 (новая)**
Официальный веб-сайт сообщества Рубиния Пи Фан Бейс: **[www.pifan.org](http://www.pifan.org)**
Официальный веб-сайт документов по технической поддержке: **[blog.pifan.org](http://blog.pifan.org)**
Официальный форум сообщества Рубиния Пи Фан Бейс: **[bbs.pifan.org](http://bbs.pifan.org)**
Официальный веб-сайт OPENFANS: **[www.openfans.org](http://www.openfans.org)**
### 7-3 Авторское право
Все вышеуказанные системы созданы открытым сообществом OPENFANS и эксклюзивно распространены и предоставлена техническая поддержка сообществом Рубиния Пи Фан Бейс;
Любое воспроизведение слов или изображений должно указывать источник системы (программы); вы можете делать любые изменения в программе или системе, но вы должны сохранять источник и readme;
Строго запрещено использование для коммерческих целей, если вам требуется использовать его коммерчески, пожалуйста, свяжитесь и получите разрешение от открытого сообщества OPENFANS и сообщества Рубиния Пи Фан Бейс;
5. Открытым сообществам OPENFANS и Рубиния Пи Фан Бейс принадлежит окончательное толкование вышеуказанного содержания.
## 8. Присоединяйтесь к нам!
Сообщество Рубиния Пи Фан Бейс принимает **добровольцев** для участия в настоящий момент. Основные требования следующие:
- **Персонал по разработке и дизайну оборудования**
1. Признайте культуру сообщества Рубиния Пи Фан Бейс и иметь большую страсть к Рубинии Пи;
2. Ответственный и добросовестный в выполнении задач, назначенных сообществом в срок и с высоким качеством;
3. Обладает навыками проектирования моделей для 3D печати или цифровой обработки сигналов;
4. Имеет практический опыт работы с аппаратной частью.- **Программисты и разработчики систем**
1. Признайте культуру сообщества Raspberry Pi Fan base и будьте полны энтузиазма по отношению к Raspberry Pi;
2. Ответственны за выполнение задач по организации работы сообщества в срок и качественно;
3. Ознакомлены с процессами сборки системы или разработкой программного обеспечения;
4. Наслаждаетесь разработочными языками, включая, но не ограничиваясь следующими: Java, Python, Go, NodeJS, C, C++...;
5. Обладаете навыками компиляции программного обеспечения и создания пакетов Deb;
6. Имеете практический опыт разработки.
```**Ещё один способ: организации, учреждения и бизнес-единицы приветствуются для обсуждения сотрудничества!!!**```Пожалуйста, свяжитесь с нами с любыми намерениями: **[admin@openfans.org](mailto:admin@openfans.org)**
Пожалуйста, заполните детали и намерения и хотя бы оставьте свой **номер мобильного телефона**, спасибо за ваше сотрудничество.
---
## 9. Благодарность
OSCHINA : [Поддержка для git репозитория](https://gitee.com/)
Raspbian: Официальная система (часть скрипта автоматического расширения)
UMRnInside : Проект [UMRnInside/RPi-arm64](https://github.com/UMRnInside/RPi-arm64) (ссылка на раздел автоматического расширения)
Andreiw: Проект [andreiw/RaspberryPiPkg](https://github.com/andreiw/RaspberryPiPkg) (версия 1.0 EFI firmware)
Sakaki(1): [ссылка](https://www.raspberrypi.org/forums/viewtopic.php?f=56&t=244478) (ссылка на проблему загрузки ядра)
Sakaki(2): Командная строка видео-плеер с аппаратной ускоренной декодировкой H264-V4L2-M2M.
Margetts99: [ссылка](http://bbs.pifan.org/?thread-132.htm) (рекомендации по интеграции WPS и отчеты о проблемах)
Windows Arm On QEMU: *см. [ссылка1](https://github.com/virtio-win/kvm-guest-drivers-windows/issues/177#issuecomment-468149012) & [ссылка2](https://www.raspberrypi.org/forums/viewtopic.php?f=56&t=248345&sid=d4dd0681937f13e9c0cb4f04e5b54979)*
**И всем остальным друзьям, кто лично спонсировал и помог нам!**
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.