Задача: Разобрать установку Ubuntu Server on Raspberry Pi 3 Model B
Т.к. я поклонник Ubuntu
то стараюсь всегда и везде ее использовать, а тут призадумался — почему на моем миникомпьютере Raspberry Pi 3 Model B
используется Raspbian Stretch & Buster
. Это Debian
ориентированные дистрибутивы, пошел на официальный сайт Ubuntu
и вышел на страницу что можно установить специализированный дистрибутив. Загорелся желанием попробовать и вот получилась заметка от которой я в будущем буду отталкиваться.
Шаг №1: Скачиваю Ubuntu Server
со страницы https://ubuntu.com/download/raspberry-pi
ekzorchik@navy:~$ ls -lh /media/ekzorchik/dw/ | grep xz -rw-rw-r-- 1 ekzorchik ekzorchik 632M янв 4 12:52 ubuntu-19.10.1-preinstalled-server-arm64+raspi3.img.xz ekzorchik@navy:~$ sudo apt-get install xz-utils -y ekzorchik@navy:~$ dpkg -l | grep xz-utils ii xz-utils 5.2.2-1.3 amd64 XZ-format compression utilities ekzorchik@navy:~$ ekzorchik@navy:~$ cd /media/ekzorchik/dw ekzorchik@navy:/media/ekzorchik/dw$ unxz ubuntu-19.10.1-preinstalled-server-arm64+raspi3.img.xz ekzorchik@navy:/media/ekzorchik/dw$ ls -lh | grep .img -rw-rw-r-- 1 ekzorchik ekzorchik 3,0G янв 4 12:52 ubuntu-19.10.1-preinstalled-server-arm64+raspi3.img
Шаг №2: Вставляю в слот картридера (я за ноутбуком Lenovo E555
) адаптер карты памяти в формате SD
который служит переходником на MicroSD (8Gb).
Шаг №3: Проверяю, что моя рабочая система Ubuntu 18.04 Desktop amd64
видит ее:
ekzorchik@navy:~$ dmesg | grep mmc [ 6880.221203] mmc0: cannot verify signal voltage switch [ 6880.355141] mmc0: new ultra high speed SDR50 SDHC card at address aaaa [ 6880.379402] mmcblk0: mmc0:aaaa SL08G 7.40 GiB [ 6880.387935] mmcblk0: p1 p2 [ 6880.966942] EXT4-fs (mmcblk0p2): recovery complete [ 6881.027688] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null) [ 6881.036047] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck. ekzorchik@navy:~$
Шаг №4: Запускаю приложение под наименованием «Диски
»
Шаг №5: Выбираю из списка моих дисков и меню «Восстановить образ диска...
»
см. скриншот для наглядного понимания что и как делается.
Выбираю полученный после распаковки образ: ubuntu-19.10.1-preinstalled-server-arm64+raspi3.img
см. скриншот для наглядного понимания процесса
и нажимаю «Начать восстановление...
«, «Восстановить
«, ввожу пароль на привилигированную операцию и нажимаю OK
, вот процесс восстановление образа на карту памяти:
см. скриншот для наглядного понимания процесса
На заметку: Советую выбирать карту памяти MicroSD
не ниже класса 10 и скорость чтение и записи не ниже 30Mbit/s
И вот образ записан
system-boot -> /dev/mmcblk0p1
writable -> /dev/mmcblk0p2
Шаг №6: Монтирую раздел system-boot
в систему Ubuntu 18.04 Desktop
дабы активировать по аналогии, как делается для дистрибутивов Raspbian Jessie, Stretch, Buster
включение возможности подключения по SSH
к системе когда миникомпьютер будет загружен после подачи питания и подключен к Вашей локальной сети:
ekzorchik@navy:~$ sudo mount /dev/mmcblk0p1 /cdrom ekzorchik@navy:~$ sudo touch /cdrom/ssh
Шаг №7: Извлекаю карту памяти из картридера
Шаг №8: Подключаю карту памяти MicroSD
в миникомпьютер Raspberry Pi 3 Model B
и подключаю кабель питания + вставляю сетевой кабель, подключаю монитор и клавиатуру
Вижу на экране приветствие:
Ubuntu 19.10 ubuntu tty1 ubuntu login: ubuntu Password: ubuntu You are required to change your password immediately (administrator enforced) Changing password for ubuntu. Current password: ubuntu New password: 712mbddr@ Retype new password: 712mbddr@ Welcome to Ubuntu 19.01 (GNU/Linux 5.3.0-1014-raspi2 aarch64) ubuntu@ubuntu:~$
Шаг №9: А вот теперь активировав аккаунт подключаюсь по SSH
ubuntu@ubuntu:~$ hostname -I 172.33.33.50 ekzorchik@navy:~$ ssh -l ubuntu 172.33.33.50 Warning: Permanently added '172.33.33.50' (ECDSA) to the list of known hosts. ubuntu@172.33.33.50's password: Welcome to Ubuntu 19.10 (GNU/Linux 5.3.0-1014-raspi2 aarch64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage System information as of Sat Jan 4 10:44:01 UTC 2020 System load: 0.18 Processes: 123 Usage of /: 25.4% of 6.98GB Users logged in: 1 Memory usage: 26% IP address for eth0: 172.33.33.50 Swap usage: 0% 0 updates can be installed immediately. 0 of these updates are security updates. Last login: Sat Jan 4 10:42:25 2020 To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@ubuntu:~$
Шаг №10: Обновляю репозитарии и установленные пакеты до самого последнего и актуального состояния на момент написания данной заметки:
ubuntu@ubuntu:~$ sudo rm -Rf /var/lib/apt/lists ubuntu@ubuntu:~$ sudo nano /etc/update-manager/release-upgrades [DEFAULT] Prompt=never ubuntu@ubuntu:~$ sudo apt-get update && sudo apt-get upgrade -y ubuntu@ubuntu:~$ sudo reboot
Шаг №11: Доустанавливаю в систему необходимые пакеты утилит:
ubuntu@ubuntu:~$ uname -a Linux ubuntu 5.3.0-1014-raspi2 #16-Ubuntu SMP Tue Nov 26 11:18:23 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux ubuntu@ubuntu:~$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 19.10 Release: 19.10 Codename: eoan ubuntu@ubuntu:~$ ubuntu@ubuntu:~$ sudo apt-get install htop net-tools curl wget wiringpi mc tmux -y
Шаг №12: Если Вы до этого использовали Raspbian
, то много из того что хорошо знали не будет работать — это большой минут, а поиск будет приводить ответам на Raspbian
, но не к ОС
в виде Ubuntu
.
ubuntu@ubuntu:~$ cat /sys/class/thermal/thermal_zone*/temp 48312 ubuntu@ubuntu:~$ ubuntu@ubuntu:~$ cpu="$(</sys/class/thermal/thermal_zone0/temp)" ubuntu@ubuntu:~$ echo "$((cpu/1000))" 49 ubuntu@ubuntu:~$ ubuntu@ubuntu:~$ paste <(cat /sys/class/thermal/thermal_zone*/type) <(cat /sys/class/thermal/thermal_zone*/temp) | column -s $'\t' -t | sed 's/\(.\)..$/.\1°C/' cpu-thermal 48.8°C ubuntu@ubuntu:~$ ubuntu@ubuntu:~$ vcgencmd measure_temp vcgencmd: command not found ubuntu@ubuntu:~$ ubuntu@ubuntu:~$ sudo raspi-config sudo: raspi-config: command not found ubuntu@ubuntu:~$ ubuntu@ubuntu:~$ sudo apt-get install -y linux-raspi2 u-boot-rpi flash-kernel linux-firmware-raspi2 ubuntu@ubuntu:~$ sudo apt-get install gpiod ubuntu@ubuntu:~$ sudo apt-get install -y python3-setuptools ubuntu@ubuntu:~$ git clone https://github.com/adafruit/Adafruit_Python_DHT.git Cloning into 'Adafruit_Python_DHT'... remote: Enumerating objects: 325, done. remote: Total 325 (delta 0), reused 0 (delta 0), pack-reused 325 Receiving objects: 100% (325/325), 98.35 KiB | 519.00 KiB/s, done. Resolving deltas: 100% (176/176), done. ubuntu@ubuntu:~$ cd Adafruit_Python_DHT/ ubuntu@ubuntu:~/Adafruit_Python_DHT$ sudo python3 setup.py install unable to execute 'aarch64-linux-gnu-gcc': No such file or directory error: command 'aarch64-linux-gnu-gcc' failed with exit status 1 ubuntu@ubuntu:~/Adafruit_Python_DHT$ ubuntu@ubuntu:~/Adafruit_Python_DHT$ sudo apt-get install python python-setuptools -y ubuntu@ubuntu:~/Adafruit_Python_DHT$ sudo python setup.py install unable to execute 'aarch64-linux-gnu-gcc': No such file or directory error: command 'aarch64-linux-gnu-gcc' failed with exit status 1 ubuntu@ubuntu:~/Adafruit_Python_DHT$
Но увы даже привычные заметки (рабочие) дабы считать показания датчика DHT 11
не работают. Так что уж лучше я буду использовать то что заточено изначально и имеет поддержку сообщества, а не проходить все грабли дабы заставить работать.
Может если использовать его как файловый сервер, Cups
и т.д то можно использовать.
Пока я не вижу практической надобности использовать Ubuntu
на миникомпьютере. На этом у меня всё, с уважением автор блога Олло Александр aka ekzorchik.