Can I mix packages from the Debian repositories with Raspbian?
The short answer is if you don’t know what you are doing you should not mix them. For the long answer read on.
Debian armel packages use the soft float ABI which is incompatible with the hard float ABI used by Raspbian. In theory it should be possible to install Debian armel packages in parallel with Raspbian packages using multiarch. However multiarch setups conflict with a hack we had to make to support the videocore libraries and there are other potential issues too. As such we don’t currently recommend or support multiarch configurations with Debian armel and Raspbian armhf.
Debian armhf packages should be compatible with Raspbian packages but a system with such a mixture WILL NOT RUN ON THE PI. Furthermore there may be corner cases where libraries build slightly differently on Raspbian. Such mixed systems can be useful for development (they were used heavily in the process of creating Raspbian) but are not recommended for general use.
Architecture independent («arch all») packages are compatible between Debian and Raspbian. Source packages should in general be compatible though some may need modification to adjust compiler settings (most Debian packages just use the compiler defaults but some use their own settings for various reasons). A test script for testing packages for armv7 contamination is available at http://pastebin.com/BtSdvrXM but the script is not perfect and can suffer from both false positives and false negatives.
Учетные записи пользователей
Следующим шагом должно быть отключение учетной записи Pi по умолчанию в Raspbian. Перед этим создайте новую учетную запись в системе. Вы можете использовать useradd команда, чтобы сделать это, с некоторыми дополнительными флагами, чтобы указать, что новый домашний каталог будет создан для пользователя. Войдите в систему как пользователь Pi и введите команду:
Используйте собственное имя пользователя вместо «makezine». Это создаст новую учетную запись, создаст каталог для учетной записи (например, / Главная / makezine) и добавьте новую учетную запись в группу sudo, чтобы пользователь мог использовать команду sudo. После создания новой учетной записи пользователя нам нужно установить пароль для этой учетной записи. Вы можете сделать это с помощью команды:
Далее сбросьте пароль root. Выберите что-то длинное и трудно угадать.
Наконец, вы хотите отключить учетную запись Pi:
Теперь вы можете выйти из учетной записи Pi и войти под своей новой учетной записью и паролем.
[Ubuntu] Linux Ubuntu устанавливает пароль пользователя root и разрешает удаленный вход в учетную запись root через программное обеспечение SSH
http-equiv=»Content-Type» content=»text/html;charset=UTF-8″>yle=»margin-bottom:5px;»>Теги: root Удаленный вход в root пароль root ssh
I. Обзор
Операционная система Linux — это многопользовательская операционная система, которая позволяет нескольким пользователям одновременно входить в систему и использовать ресурсы. Система будет различать файлы, процессы, задачи и рабочую среду каждого пользователя в соответствии с учетной записью, чтобы не мешать работе каждого пользователя.
2. Описание учетной записи пользователя.
В системе linux есть три типа учетных записей: 1.обычный пользователь: Задача обычных пользователей в системе — выполнять обычные операции 2.Супер администратор: Задача администратора системы — управлять обычными пользователями и всей системой. Иметь полный контроль над системой и иметь возможность выполнять все операции с ней. Выражается как корень,Пользователь root имеет высшие полномочия в системе. , По умолчанию пользователь root пользователей Ubuntu не может войти в систему.。 3.Системный пользователь, созданный при установке: Этот пользователь был добавлен в группу администраторов при ее создании В Ubuntu пользователи в группе администраторов могут использовать команду sudo для выполнения команд, которые по умолчанию могут выполнять только администраторы. Если вы не используете sudo, вы обычный пользователь.
В-третьих, используйте пользователей root
В реальных производственных операциях мы в основном используемСупер администратор Учетная запись операционной системы Linux, то есть пользователь Root,Учетная запись root по умолчанию закрыта в системе Linux , Нам нужно быть пользователем rootУстановите начальный пароль Чтобы облегчить наше использование.1. Установите пароль учетной записи Root.
2. Переключитесь в Root
3. Установите, чтобы разрешить удаленный вход Root
Сохраните и выйдите после завершения модификации, она не вступит в силу в это время, вам нужно перейти к следующему шагу, чтобы перезапустить службу
4. Перезапустите службу.
В настоящее время используйте инструменты удаленного подключения, такие какПовторно подключитесь, чтобы войти в систему с учетной записью root
Приложение: Описание группового аккаунта
1. Частная группа При создании пользователя без указания группы, к которой он принадлежит, Linux создаст частную группу с тем же именем, что и пользователь, и эта частная группа будет содержать только пользователя. 2. Стандартная группа При создании пользователя вы можете выбрать стандартную группу. Если пользователь входит в несколько групп одновременно, группа, к которой он принадлежит после входа в систему, является основной группой, а остальные — дополнительными группами.
Интеллектуальная рекомендация
19.03.21 Я загрузил комплексные обучающие видеоуроки Photoshop CC 2015 и обучающие видеоуроки по новым функциям PS CC 2015. Я просмотрел несколько видео, но мне кажется, что они в основном объясняют н…
…
проверка данных весеннего mvc Два способа проверки данных Spring MVC: 1.JSR303 2.Hibernate Validator Второй метод является дополнением к первому методу Шаги для проверки данных с использованием Hibern…
Существует два способа вызова между сервисами Springcloud: RestTemplate и Feign. Здесь мы представляем сервисы вызова RestTemplate. 1. Что такое RestTemplate RestTemplate — это структура веб-запросов …
1. Понимать предварительный, средний, последующий порядок и иерархическую последовательность бинарных деревьев; Свяжите язык C со структурой данных двоичного дерева; Освойте с…
Вам также может понравиться
Последнее обучение, как использовать Kaldi, чтобы проснуться без использования WSTF, поэтому вам нужно глубоко пойти в Kaldi для обучения. Временное состояние обучения. Три изображения представляют со…
Во время простоя некоторые веб-страницы, которые мы создали, не были завершены, но не хотят, чтобы другие видели, вы можете создать простой эффект шифрования страницы на странице этой веб-страницы, ан…
Расширенные статьи серии Zookeeper 1. NIO, ZAB соглашение, 2PC представления концепции 2. Лидер выборов 3. Рукописный распределенный замок, центр настройки ==================================== 1. NIO,…
Посмотрите на конечный эффект первым DemoPreview.gif SETP1 эффект капли воды Первая реакция на эффект капли воды — нарисовать замкнутую кривую. С помощью события MotionEvent измените радиус во время п…
…
Шаг 2. Загрузите Linux и обновление Kali
Как только Kali Linux загрузится, вы увидите экран входа в систему. Учетные данные по умолчанию — это root для логина и toor для пароля. Когда Kali загрузится, откройте терминал. Первым делом нужно изменить дефолтный пароль, чтобы у нас все-таки был хоть какой-то уровень контроля над тем, кто обращается к нашему устройству. Для этого введите в консоли passwd root и дважды введите новый пароль.
Обновим систему. Подключите вашу Pi к Интернету через Ethernet-кабель или щелкните по значку Wi-Fi в правом верхнем углу и выберите сеть с доступом в Интернет. В окне терминала последовательно введите следующие команды apt-get. Это может занять некоторое время.
apt-get update apt-get upgrade apt-get dist-upgrade
Вы должны увидеть некоторый вывод этих команд на экран, как показано на скриншоте ниже. После того, как обновление системы будет завершено, мы будем готовы начать настройку Raspberry Pi.
Как восстановить доступ к Debian Linux в случае проблем с sudo или утратой root-пароля
В некоторых ситуациях может получиться так, что мы потеряем административный доступ к серверу на базе Debian GNU/Linux. Например, к такому исходу могут привести некорректные действия администратора по настройке механизма sudo (ошибки при правке файлов и/или ) и, как следствие, получение ошибки «Username is not in the sudoers file» при любых дальнейших попытках использования sudo. Иногда бывают ситуации, когда локальный доступ к серверу есть, а данные административной учётной записи недоступны и требуется восстановить административный доступ к серверу.
Загрузка в recovery mode
В типичных ситуациях в Linux имеется режим восстановления Recovery Mode, который, как правило, доступен из загрузчика ОС. В этом режиме наша Linux-система доступна в режиме супер-пользователя root, и мы можем исправить в ней имеющиеся у нас проблемы, например внести корректировки в файлы sudo или добавить/изменить учётные данные локального администратора.
Для того, чтобы попасть в меню загрузки, в процессе запуска ОС Debian нажимаем кнопку Shift. В появившемся меню загрузчика GRUB выбираем расширенный режим загрузки:
Затем выбираем интересующее нас ядро Linux в режиме recovery mode…
Однако в случае с Debian, где супер-пользователь root в конфигурации по умолчанию выключен, мы можем получить сообщение о невозможности загрузки консоли восстановления «Cannot open access to console, the root account is locked»:
В таком случае мы можем прибегнуть к приёму изменения параметров загрузки ядра.
Нестандартная загрузка
В процессе загрузки в GRUB выбираем в списке ядер нужное нам ядро (режим recovery mode здесь уже не важен) и нажимаем «e» для редактирования параметров загрузки.
Находим строку начинающуюся с «linux …»
В конце строки меняем значение «» на «», а в самом конце строки дописываем вызов оболочки «».
После чего для продолжения загрузки жмём F10
Теперь мы получили беспарольный root-доступ к нашему серверу. Здесь можно исправить имеющиеся у нас проблемы, например внести корректировки в файлы sudo. После внесения нужных правок система может быть загружена обычным образом (все сделанные нами ранее изменения в GRUB были временными).
Дополнительные источники информации:
- Ubuntu Wiki — Lost Password?
- How to Fix “Username is not in the sudoers file. This incident will be reported” in Ubuntu
Проверено на следующих конфигурациях:
Версия ОС |
---|
Debian GNU/Linux Stretch 9.4 |
Автор первичной редакции:Алексей Максимов
Время публикации: 13.06.2018 15:45
Cross-upgrading 14.04 to 16.04
You can upgrade an old unofficial 14.04 installation to the official 16.04 installation, though it takes a number of additional steps.
Note that Ubuntu’s setup uses u-boot as an intermediary bootloader, which is different from the previous system of the RPI2 booting the kernel directly. This will be reflected in the upgrade procedure.
Once you begin this procedure, if you reboot the installation without completing the entire upgrade procedure, you will be left with an unbootable system.
First, remove a number of PPA packages which are obsoleted / incompatible with the 16.04.
apt-get --purge remove rpi2-ubuntu-errata raspberrypi-bootloader-nokernel \ linux-image-rpi2 flash-kernel
Back up and remove the apt PPA configuration and module blacklists (the latter will be provided directly by the 4.4.0 kernel package).
mkdir -p /root/xenial-upgrade tar zcvf /root/xenial-upgrade/etc.tar.gz \ /etc/modprobe.d/rpi2.conf \ /lib/modules-load.d/rpi2.conf \ /etc/apt/preferences.d/rpi2-ppa \ /etc/apt/sources.list.d/fo0bar-rpi2* \ /etc/apt/trusted.gpg.d/fo0bar-rpi2* rm -f \ /etc/modprobe.d/rpi2.conf \ /lib/modules-load.d/rpi2.conf \ /etc/apt/preferences.d/rpi2-ppa \ /etc/apt/sources.list.d/fo0bar-rpi2* \ /etc/apt/trusted.gpg.d/fo0bar-rpi2*
Back up and remove the contents of /boot/firmware, which will be recreated.
tar zcvf /root/xenial-upgrade/firmware.tar.gz /boot/firmware/* rm -rf /boot/firmware/*
Update apt sources without the old PPA configuration.
apt-get update
Run do-release-upgrade as normal. When asked to reboot at the end, do not, and select «n» instead.
do-release-upgrade -d # -d will be unneeded once 16.04.1 is released
Install new firmware, u-boot and 4.4.0 kernel metapackages.
apt-get install u-boot-rpi u-boot-tools linux-raspi2 linux-firmware-raspi2 \ linux-firmware flash-kernel
Install the RPI2 DT-compatible u-boot image.
apt-get install binutils # for "strings" wget -O /tmp/mkknlimg https://raw.githubusercontent.com/raspberrypi/linux/rpi-4.4.y/scripts/mkknlimg chmod 0755 /tmp/mkknlimg /tmp/mkknlimg --dtok /usr/lib/u-boot/rpi_2/u-boot.bin /boot/firmware/uboot.bin
Install basic config.txt and cmdline.txt configurations. If your root device is not on the second SD partition (uncommon) or you have a more advanced configuration, recreate them here.
cat <<"EOM" >/boot/firmware/config.txt kernel=uboot.bin dtparam=i2c_arm=on dtparam=spi=on EOM cat <<"EOM" >/boot/firmware/cmdline.txt net.ifnames=0 dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait EOM
Update the initrd and re-flash the kernel configuration.
update-initramfs -u flash-kernel
Reboot!
reboot
Optionally add ppa:ubuntu-raspi2/ppa as described above.
Установка minidnla
Ставим приложение
Правим конфиг
раскоментируем строчку чтобы не запускать от рута
Прописываем списком все папки где лежат наши медиа файлы (могут быть разбросаны в разных папках и на разных дисках)
можно там прописывать сразу и тип файлов:
A-аудио P-картинки V-видео PV-картинки и видео,
если не указывать то minidlna сам определит тип файлов
Прописываем в конфиг папку, в которой будет хранится кеш-база медиа-ресурсов (чтобы не насиловать SD карту, прописываем на HDD), предварительно создав каталог на HDD.
Если нужно все папки выше указанные собрать в одну корневую, а не по отдельности то прописываем
Чтобы телек долго не ждал пока появится сервер в списке медиа ресурсов, прописываем чтобы minidnla каждые 15 секунд кричал в сеть что он работает
Рестартуем сервис
Добавляем генерацию превьюшек для видео
Создаем файл со скриптом:
Запускаем скрипт, добавляя параметром каталог с видео, сгенерируются файлы превьюшек с таким же именем что и видео.
Подключение жестких дисков
Диски подключаем через USB3.0, через один или два порта. Если диски NTFS нужно поставить пакет (если еще не установлен).
Список подключенных дисков получаем командой:
Создаем каталоги, в который будем монтировать наши USB HDD (название можно придумать любое):
Устанавливаем права на запись на эти каталоги (либо другие если нужно ограничить)
Прописываем в конец файла /etc/fstab команду авто монтирования нашего USB HDD:
Названия дисков смотрим из команды получения дисков, описанной выше (тип файловой системы указываем тот который присутствует на дисках, в данном случае NTFS).
После этого перезагружаемся и получаем примонтированные диски.
Параметр nofail позволяет загрузиться даже если не удастся примонтировать диск (без него придется проделать шаги, описанные ниже, но есть и отрицательный момент — если диск не примонтируется, а мы будем на него писать — по факту будет литься на нашу SD-карту, причем файлов будет не видно, чтобы их увидеть выполняем команды:
В этом случае в /mnt/ будет отображаться наша флешка и можно оттуда удалить файлы, которые должны были литься на HDD, но попали на флешку.
Если мы не прописали nofail и при редактировании fstab косякнули, то при загрузке можем получить такую надпись:
В этом случае вытаскиваем SD карту, подключаем через картридер к компу, находим диск boot и в нем файл cmdline.txt.
Дописываем в конец первой строки с параметрами init=/bin/sh (создавать новую строку не надо, просто дописываем в конец).
Вставляем карту обратно и загружаемся.
Чтобы отредактировать fstab монтируем раздел для записи:
Вносим правки, исправляя косяки
Подключаем карту обратно к картридеру и убираем внесенный ранее текст init=/bin/sh
После этого перезагружаемся в обычном режиме.
Можно добавить пользователей под которым лить файлы на диски по FTP:
Форматируем диск в ext-4
Для секьюрности можно отформатировать диски в ext4.
Если диск уже примонтирован, то нужно размонтировать
Запускаем fdisk для нужного диска
Дальше выбираем команду d и удаляем раздел (если разделов несколько то несколько раз запускаем команду d и выбираем нужный раздел, если раздел только один то удаляется без лишних вопросов).
Затем создаем новый раздел командой n, первый сектор выбираем 2048.
Далее сохраняем изменения командой w
После этого форматируем созданный раздел в ext4
Переключение на суперпользователя
Еще раз уточню, что команда sudo идеально подходит для получения необходимых привилегий без переключения учетной записи. Ее можно использовать как для выполнения одного действия, так и нескольких. Если вы желаете временно получить рут-права через эту команду, введите sudo -s или sudo -i. В первом случае домашний каталог остается текущим, а во втором меняется на /root.
Примерно так же работает и команда su, но она обладает дополнительными аргументами, которые следует уточнить:
- -c – позволяет выполнить команду;
- -g – устанавливает группу для пользователя;
- -G – дополнительные группы для юзера;
- -, -l, —login – один из режимов входа, при котором происходит переключение домашнего каталога;
- -p – сохранение переменных окружения;
- -s – выбор оболочки для выхода.
Есть вариант выполнить вход в оболочку под суперпользователем, но он имеет свои неудобства. Он заключается в переключении в доступную виртуальную консоль, что осуществляется комбинацией Ctrl + Alt + F1-F6. Там понадобится ввести логин и пароль root для получения доступа. Главный недостаток этого метода – потеря возможности взаимодействия с графическим интерфейсом операционной системы.
Второй вариант – ввод такого же логина и пароля при входе через графическую форму авторизации. Так вы сразу получите доступ ко всем файлам, даже не надо будет вводить sudo. Однако неопытным пользователям такой метод не подходит, поскольку возникает риск удаления или изменения системных файлов, что иногда приводит к поломке ОС.
Вы уже сами решайте, какой вариант хотите использовать, и готовы ли смириться со всеми ограничениями и недостатками, которые накладывает каждый из них.
Ставим Zabbix 4.0
Создаем пользователя и базу для zabbix в MariaDB под рутом:
Далее устанавливаем zabbix
Импортируем схему и данные (вводим пароль от базы zabbix)
Редактируем конфиг:
Добавляем туда пароль от базы zabbix
Чтобы при перезагрузке сервера zabbix не вешал на пол часа систему из-за того MariaDB успела остановиться раньше чем zabbix (в этому случае zabbix будет пытаться долго и упорно сконнектиться с базой) — прописываем в настройках сервиса что требуется mysql:
В редакторе прописываем следующие строчки и сохраняем файл:
Стартуем сервер и агент zabbix и прописываем в автозапуск
Далее настраиваем фронтенд для zabbix, редактируем конфиг zabbix для апача
прописываем нашу таймзону там где комментарий # php_value date.timezone Europe/Riga и рестартуем апач
Выставляем права на файлы zabbix
Заходим в веб-морду zabbix http://raspberry-ip/zabbix/ и прописываем настройки zabbix, после завершения входим с дефолтными пользователем и паролем:
Username: Admin
Password: zabbix
Меняем сразу пароль на свой.
Качаем этот архив, распаковываем. Файл userparameter_rpi.conf копируем в папку /etc/zabbix/zabbix_agentd.d , а файл rpi_zabbix_cputemp.xml импортируем в шаблоны zabbix (Настройка-Шаблоны-Импорт). Добавляем импортированный шаблон «Raspberry PI CPU Temperature» — Настройка-Узлы сети-Шаблоны.
Перезапускаем агент:
4 ответа
12
Raspbian по умолчанию настроен таким образом, чтобы учетная запись root не могла войти в систему с использованием пароля. Это делается, начиная с ввода в , который начинается:
Поля разделяются двоеточиями и объясняются в (обратите внимание на ), поскольку предоставит вам справочную страницу для команды ; раздел 5 предназначен для файлов конфигурации, и в этом случае они имеют одинаковое имя). Здесь первое — это имя (), третье и четвертое — числовые uid и gid (оба ), а второе — для пароля
Для большинства записей это будет , указывая, что фактический пароль находится в другом файле, .
Обратите внимание, что «фактический пароль» на самом деле не хранится нигде. То, что хранится в , является односторонним хешем фактического пароля
Односторонний хеш является результатом процесса, который всегда будет давать то же самое (позволяя проверить ваш пароль), но необратим. Другими словами, если кто-то обманывает , невозможно выводить пароль из хэша. Однако, если они могут изменить , очевидно, что они могут отключить или изменить то, что будет работать как пароль. Но они никогда не смогут обнаружить ваши пароли. Вот почему даже не может этого сделать (хотя root всегда может изменить их на что-то другое, не требуя оригинала).
В корневом случае запись в начинается так же, как и для большинства других системных учетных записей:
указывает, что в настоящее время нет возможного пароля, который может быть использован для этой учетной записи.
Пользователь root может изменить это, однако, используя команду , чтобы установить новый пароль, который заменит на хэш, упомянутый ранее (они всегда начинаются , где — это случайное значение, которое используется как «соль» для хэша, но вам не нужно это понимать).
Во всяком случае, когда я устанавливаю карту из нового изображения, первое, что я делаю, это перейти в и удалить , чтобы теперь начиналась запись root
Обратите внимание, что теперь нет второго поля. Это означает, что есть no password , и все, что вам нужно сделать, это ввести в приглашении для входа и войти в систему как
Затем вы можете использовать , чтобы установить его.
Итак, у вас есть два варианта, но они оба требуют, чтобы вы вытащили карту из pi и получили доступ к второму разделу из другой системы (которая может читать /записывать разделы ext4).
-
Восстановить . Если у вас есть ссылочный образ, это легко, вы можете просто вернуть его обратно, заменив его. В противном случае это более сложный вариант, поскольку вы должны знать, что вы делаете (и ваша запись трека с помощью не так хороша …).
-
Измените и удалите этот , как описано выше, верните карту, войдите в систему как , Создайте пароль. Конечно, вам все равно нужно исправить , но проб и ошибок будет проще, поскольку, если вы действительно , вы всегда сможете получить к нему доступ.
Если у вас нет системы, которая может получить доступ к файловым системам ext4 (здесь присутствует живой CD-диск Debian), то вы застряли. Вам придется перепрограммировать карту и начать заново.
3
Raspbian не имеет пароля . В этом отношении он отличается от Ubuntu. Вы можете создать пароль , но AFAIK, для которого требуется .
Лучше всего отредактировать файлы, установив SD-карту на Linux-машине.
Это можно сделать на Pi if
1. У вас есть SD-кард-ридер
2. Вы используете хорошую ОС на другой SD для загрузки Pi.
-1
Если вы загрузите Puppy Linux для малины Pi из и установите его на флэш-накопитель, после чего вы сможете загрузить с него компьютер, и поскольку Puppy всегда работает от имени пользователя root без пароля, вы можете изменить что-либо на компьютер, который вы хотите. Внесите свои изменения, затем перезагрузите компьютер без загрузочного носителя Puppy. Теперь компьютер загрузится в вашу измененную систему без Puppy.
Я немного новичок в Raspberry Pi, поэтому я не знаю, как загрузить его с другого устройства (thumbdrive), но, вероятно, есть способ. Возможно, система Noobs, удерживая сдвиг во время загрузки.
Я добавлю простую альтернативу загрузке с другого диска: вместо этого Raspberry Pi можно загрузить с установки Puppy на SD-карте (или на карте microSD), и исходный установочный носитель можно было прочитать и изменить с карты читатель подключен к той же Малиновой Пи.
What do I need in my sources.list file to access the Raspbian repository?
Your /etc/apt/sources.list file should look as follows:
deb http://archive.raspbian.org/raspbian wheezy main contrib non-free rpi deb-src http://archive.raspbian.org/raspbian wheezy main contrib non-free rpi
When using apt-get, you will will want to install the Raspbian public key in your apt-get keyring, it should already be there if you used debootstrap from the Raspbian repository but if you need to add it manually this can be done with following command:
wget http://archive.raspbian.org/raspbian.public.key -O - | sudo apt-key add -
Mirrors of Raspbian that may be more suitable for users in different geographic locations can be found here.
What is Debian?
Debian is a free operating system for your computer and includes the basic set of programs and utilities that make your computer run along with many thousands of other packages. Debian has a reputation within the Linux community for being very high-quality, stable and scalable. Debian also has an extensive and friendly user community that can help new users with support for practically any problem. This makes Debian an ideal operating system for the Raspberry Pi that will be used by children and many others using Linux for the first time.
Further information about what Debian is can be found here, here, and here.
Boot sequence
Change the bootloader
The official Ubuntu images use u-boot as the bootloader. However, the Pi’s own built in bootloader can be used with a few changes to the config.txt file on the system-boot partition.
Write the image to an SD card as normal, but before you insert it into the Pi, re-insert the SD card so that you can make changes. Open the config.txt on the first partition (labelled system-boot). Change the kernel line(s), add an initramfs line, and comment out (#) the device_tree_address line as follows:
kernel=vmlinuz initramfs initrd.img followkernel #device_tree_address=0x03000000
The second partition contains the Linux root filesystem. Copy the dtb file for your machine (e.g. bcm2710-rpi-3-b.dtb) plus the overlay folder if needed from /lib/firmware/4.X.X-XXXX-raspi2/device-tree to the system-boot partition.
For the Pi 3B+ you may also have to (bootcode.bin, fixup.dat and start.elf) on the system-boot partition if the version of linux-firmware-raspi2 pre-dates the 3B+.
Place the SD card in your Pi and turn on!
Update flash-kernel database
The flash-kernel package is used to copy the kernel and initrd to the fat system-boot partition.
If your new machine is missing from the flash-kernel database («unsupported platform» error message when you update the kernel) then add an entry to /etc/flash-kernel/db. The full database can be found at /usr/share/flash-kernel/db/all.db. For the Machine field use the output of:
cat /proc/device-tree/model ; echo
An example entry for the Raspberry Pi 3 Model B Plus would be:
Machine: Raspberry Pi 3 Model B Plus DTB-Id: bcm2710-rpi-3-b-plus.dtb Boot-DTB-Path: /boot/firmware/bcm2710-rpi-3-b-plus.dtb Boot-Kernel-Path: /boot/firmware/vmlinuz Boot-Initrd-Path: /boot/firmware/initrd.img
If you need to manually copy across the kernel and initrd files (note, the system-boot partition is mounted at /boot/firmware):
sudo cp /boot/vmlinuz /boot/firmware/ sudo cp /boot/initrd.img /boot/firmware/
The sudo command
Let’s see now what’s sudo and how to use it.
Sudo presentation
Sudo is a prefix command used to run any command with root permissions.
When you put “sudo” just before your command, you get administrator privileges for this command.The system can ask your password the first time you use it.
Check this tutorial if you want to know how to give the sudo permission to a new user.
How to use sudo
Usage:
Here is an example:
You need root privileges to stop your Raspberry Pi.So the first command failed with “authentication required”, but the second is ok.
A bit lost in the Linux command line? Check this article first, which will give you the most important commands to remember, and a free downloadable cheat sheet so you can have the commands at your fingertips.
Switch to root on Raspberry Pi OS
If you are on a project, which need you to run 50 commands as root, maybe it’ll be boring to think about adding sudo before each one.
There is a way to switch from your user to root user:su is a command to switch user, if you are root, it allows you switch to another user:Without a parameter, it gives you the root terminal, but you need sudo to run this command.
Here is an example:
Master your Raspberry Pi in 30 daysSale: 10% off today.Download the eBook.Uncover the secrets of the Raspberry Pi in a 30 days challenge.Learn useful Linux skills and practice multiples projects.Get it Now!
As you see, in the second line I get a # terminal, beginning by root@raspberrypi.So I’m ready to run all my commands as root.
Use “exit” to come back to the pi user terminal.
Copy the ISO contents to the FAT partition
You can use dd to burn the ISO to a separate USB flash drive, but if you don’t have a spare flash drive, then you can combine the contents of the ISO with the bootloader files. The following downloads the mini ISO and copies all the files from it:
wget http://ports.ubuntu.com/dists/bionic/main/installer-arm64/current/images/netboot/mini.iso mkdir /tmp/mini-iso sudo mount -o loop mini.iso /tmp/mini-iso sudo cp -rT /tmp/mini-iso /mnt
Note, if you are doing this via a graphical file manager then you must ensure you copy the hidden .disk folder.
Finally extract the bootaa64.efi file and copy it across:
mkdir /tmp/efi-img sudo mount -o loop /tmp/mini-iso/boot/grub/efi.img /tmp/efi-img sudo cp -rT /tmp/efi-img /mnt sync sudo umount /tmp/efi-img sudo umount /tmp/mini-iso sudo umount /mnt
Packages
Raspberry Pi packages
Although the majority of the Raspberry Pi cloud/server image works like any other Ubuntu system, there are a few packages that you may not be familiar with. Briefly:
-
linux-firmware-raspi2 — GPU firmware bootloader files and WiFi firmware configuration files
-
linux-raspi2 (linux-image-raspi2) — Linux kernel with patches from https://github.com/raspberrypi/linux
-
u-boot-rpi — Provides the various uboot* binaries under /boot/firmware
-
flash-kernel — Automatically copies the latest kernel, dtb file and u-boot script to the pi’s fat formatted GPU firmware partition
The GPU firmware partition is mounted at /boot/firmware. The /boot/firmware/config.txt file contains the system configuration and refers to several other files within /boot/firmware. Note, it is likely that you will have to adapt third party instructions to these file locations.
Optional PPAs
While the official image includes compatible firmware, bootloader and kernel, there are a few packages available in an unofficial PPA (ppa:ubuntu-raspi2/ppa) which are useful on the Raspberry Pi, including:
-
libraspberrypi-bin — VideoCore utilities from https://github.com/raspberrypi/userland such as vcgencmd, raspistill, etc.
-
libraspberrypi-bin-nonfree — Binary VideoCore utilities not provided in the open source userland repository, currently vcdbg and edidparser.
-
xserver-xorg-video-fbturbo — An accelerated x.org video driver, though this is limited to hardware accelerated window moving/scrolling on the Raspberry Pi.
-
hello-dkms — Not strictly to do with the Raspberry Pi, but a small example DKMS project to test building kernel DKMS modules.
To install:
sudo add-apt-repository ppa:ubuntu-raspi2/ppa sudo apt-get update
Further/updated Raspberry Pi packages can be found in the Ubuntu Pi Flavour Maker PPA. Many of these packages rely on the user being a member of groups:
sudo groupadd -f --system gpio sudo groupadd -f --system i2c sudo groupadd -f --system input sudo groupadd -f --system spi
Desktop
This is a small ubuntu-server image. If you want a full desktop, go ahead and do so:
$ sudo apt-get install xubuntu-desktop # or $ sudo apt-get install lubuntu-desktop # or $ sudo apt-get install kubuntu-desktop # etc
Tasks can be installed with Tasksel.
Accelerated X driver
An accelerated x.org video driver is available (fbturbo), though this is limited to hardware accelerated window moving/scrolling on the Raspberry Pi. Install the optional PPA above, then:
$ sudo apt-get install xserver-xorg-video-fbturbo
Then add this to /etc/X11/xorg.conf (create if it doesn’t already exist):
Section "Device" Identifier "Raspberry Pi FBDEV" Driver "fbturbo" Option "fbdev" "/dev/fb0" Option "SwapbuffersWait" "true" EndSection
VideoCore
As with Raspbian, VideoCore packages are available. Install the optional PPA above, then:
$ sudo apt-get install libraspberrypi-bin libraspberrypi-dev
However, since these packages are compiled from source during build, the files are installed in their «proper» locations in /usr. Some third-party scripts may expect e.g. /opt/vc/bin/vcgencmd; if so, this hack should do it:
$ sudo ln -s /usr /opt/vc
(Raspbian packages use precompiled repositories during build, which install in /opt/vc.) vcdbg and edidparser are not part of the open source package and must be installed separately:
$ sudo apt-get install libraspberrypi-bin-nonfree