Установка программ и редактор nano
В Linux программы не качают с сайтов по одной — есть единый "магазин приложений" прямо в терминале.
Команда apt — это как магазин приложений для Linux, только бесплатный, проверенный и без рекламы. Одна строчка — и программа установлена.
Чтобы делать проекты, тебе понадобятся дополнительные программы и библиотеки. В Raspberry Pi OS за это отвечает менеджер пакетов apt. А чтобы редактировать файлы конфигурации и код прямо в терминале, есть простой редактор nano.
Представь, что на телефоне ты не открываешь Play Market или App Store, а вместо этого ходишь по сайтам, скачиваешь установщики и вручную тащишь к ним нужные файлы. Звучит как кошмар, правда? Именно от этого кошмара спасает apt: один источник, одна команда, и система сама знает, откуда взять программу, какой версии и что ещё к ней докачать. Подросток, который привык ставить приложения в два тапа, освоит apt буквально за вечер — логика та же, просто вместо иконки ты печатаешь название.
Как работает под капотом
apt (Advanced Package Tool) хранит список доступных программ в "репозиториях" — серверах с проверенными пакетами. Команда apt update обновляет этот список, а apt install скачивает и ставит нужную программу вместе со всем, что ей требуется (зависимостями).
sudo apt update
sudo apt install python3-gpiozero fortune
# запустить установленную программу
fortune
# удалить программу
sudo apt remove fortune
Слово sudo означает "выполнить от имени администратора" — установка программ затрагивает всю систему, поэтому требует прав. Это как пароль от важной двери.
Важная деталь, которую часто пропускают: между сервером-репозиторием и твоей платой стоит локальный кеш — список пакетов, который хранится прямо на Pi. Когда ты пишешь apt install, apt сначала смотрит в этот кеш: "А знаю ли я вообще, где лежит такой пакет и какой он версии?" Если список устарел, apt будет искать программу по старому адресу — а её там уже может не быть. Поэтому apt update — это не само обновление программ, а обновление каталога. Чтобы обновить уже установленные программы до свежих версий, есть отдельная команда apt upgrade.
apt update apt install nano
+------------------+ +-------------------+
| репозиторий в | --> | читаем кеш: где |
| интернете | | лежит пакет? |
+------------------+ +-------------------+
| |
v v
+------------------+ +-------------------+
| свежий список | --> | качаем пакет + |
| пакетов (кеш) | | зависимости |
+------------------+ +-------------------+
Когда apt ставит программу, он почти никогда не качает только её одну. Почти у каждой программы есть зависимости — другие библиотеки, без которых она не запустится. apt сам строит "дерево зависимостей" и докачивает всё необходимое. Поэтому одна команда apt install может потянуть за собой десяток мелких пакетов — это нормально, не пугайся.
nano открывает файл прямо в терминале. Внизу экрана — подсказки: ^O значит "нажми Ctrl+O чтобы сохранить", ^X — выйти. Символ ^ в этих подсказках всегда означает клавишу Ctrl, так что читай их как "Ctrl плюс буква".
nano my_script.py
+-------------------------------------+
| print("Привет, Raspberry Pi!") | <- редактируешь текст
| |
+-------------------------------------+
| ^O Записать ^X Выйти ^W Поиск | <- подсказки внизу
+-------------------------------------+
Чтобы почувствовать логику кеша, можно поиграть с моделью на чистом Python прямо в браузере — без всякого железа. Представим каталог пакетов как обычный словарь и проверим, что будет, если искать программу, которой в каталоге нет:
# Мини-модель работы apt: каталог пакетов и поиск
catalog = {
"nano": "7.2",
"fortune": "1.99",
"python3-gpiozero": "2.0",
}
def install(name):
if name in catalog:
print(f"Ставлю {name} версии {catalog[name]}")
else:
print(f"Не нашёл {name} -> сделай apt update")
for pkg in ["nano", "cowsay", "fortune"]:
install(pkg)
Частые ошибки
- Забыли
sudo. Установка без прав выдаст ошибку "Permission denied". - Не сделали
apt update. Тогда apt может не найти свежие версии пакетов. - Ищут где "мышкой сохранить" в nano. В nano сохраняют через Ctrl+O, потом Enter, выходят через Ctrl+X.
- Путают
apt updateиapt upgrade. Первое обновляет список пакетов, второе — сами установленные программы. Это разные команды. - Закрывают терминал при установке. Если оборвать
apt installна полпути, база пакетов может остаться в "битом" состоянии — лечится командойsudo apt --fix-broken install.
Best practices
- Перед установкой чего-либо запускай
sudo apt update. - Не лей
sudoна каждую команду — только туда, где реально нужны права администратора. - Для своего кода на Python создавай виртуальное окружение (venv), чтобы не засорять систему.
- Раз в неделю делай
sudo apt update && sudo apt upgrade— так система остаётся свежей и защищённой. - Если не помнишь точное название пакета, ищи его командой
apt search ключевое_слово— это как поиск в магазине приложений.
Итоги. apt ставит и удаляет программы из проверенных репозиториев, sudo даёт права администратора, nano редактирует файлы прямо в терминале. Команда apt update обновляет каталог, а apt upgrade — сами программы. Теперь у тебя есть всё, чтобы писать и запускать код на Pi.