Raspberry pi 3 установка на hdd
ⓘ Эта статья могла быть частично или полностью переведена с помощью автоматических средств. Приносим извинения за возможные ошибки.
Обратите внимание, что Raspberry Pi 4 еще не поддерживает загрузку с USB. Функция должна быть добавлена в ближайшее время.
Как вы знаете, Raspberry Pi использует карту micro SD вместо жесткого диска. Это удобно с точки зрения размера и цены, но SD-карты в конечном итоге повреждаются из-за нескольких операций чтения и записи.
Поэтому в этом руководстве мы увидим через несколько минут, как загрузить Raspberry Pi с USB-ключа или внешнего жесткого диска.
Необходимый материал
Для выполнения этой операции вам понадобится следующее оборудование (щелкните ссылку, чтобы увидеть его стоимость на Amazon):
Разрешите Raspberry Pi загрузиться с USB-накопителя
Обратите внимание, что для Raspberry Pi 3B + вам не нужно выполнять указанные ниже операции, просто установите Raspbian на свое USB-устройство, вставленное в Pi без карты MicroSD, оно будет обнаружено автоматически.
Теперь, когда у вас есть все необходимое оборудование, вам нужно будет начать с установки Raspbian на SD-карту. Для этого мы отсылаем вас к нашей статье, чтобы установить Raspbian из Windows или Linux.
Raspbian установлен на вашу карту microSD, повторите операцию, на этот раз установив Raspbian на ваш USB-ключ / жесткий диск. Когда закончите, отключите USB-ключ / жесткий диск.
После завершения двух установок подключите SD-карту к компьютеру и перейдите в раздел boot с карты (обычно это единственная доступная из Windows) для редактирования файла config.txt и добавьте следующую строку в конец файла:
Сохраните файл, затем вставьте карту micro SD в Raspberry Pi и запустите его (вставьте только SD-карту, а не USB-ключ / жесткий диск). Обычно после запуска Raspberry Pi автоматически настраивается для запуска с USB-ключа в будущем.
Чтобы убедиться, что все в порядке, вы можете посмотреть регистр 17 OPT (программируемый одноразовый, который обозначает постоянную память, которая может быть запрограммирована только один раз). Для этого мы используем следующую команду:
Raspberry Pi должен вернуться к нам: 17: 3020000a. Если это не так, то это потому, что вы выполнили предыдущий шаг неправильно и вам нужно начать создание карты заново.
Теперь вы можете выключить Raspberry Pi, вынуть карту micro SD и вставить USB-ключ / жесткий диск с установленным Raspbian.
Все, что вам нужно сделать, это подключить Raspberry Pi, запуск займет несколько секунд, и все, ваш Raspberry Pi загрузится с вашего USB-ключа!
Не так давно я описывал процесс установки сервера Home Assistant на Raspberry Pi и упоминал недостаток подобной системы: работающий Home Assistant может довольно быстро «убивать» microSD-карточки интенсивными операциями чтения-записи.
Что нам понадобится
Для осуществления описываемых в этой статье действий понадобится:
Активация загрузки с USB на Raspberry Pi 2 / 3
Пропускайте этот пункт, если пользуетесь Raspberry Pi 3B+ или Raspberry Pi 4. Для появления возможности загрузки с USB-накопителей на Raspberry Pi 3 нужно активировать опцию USB Boot Mode путем внесения значения в OTP-память.Для нужно загрузиться в Raspberry Pi OS с microSD-карты и добавить строчку с командой в файл config.txt:
А затем перезагрузить систему:
Во время следующей загрузки команда будет обработана и пропишет активирующее возможность загрузки с USB-дисков значение в OTP-память микрокомпьютера. Данная операция необратима. Но волноваться по этому поводу не стоит: активация USB Boot Mode не лишит вас возможности запускать «малинку» с microSD-карты, а всего лишь добавит новую опцию, которая активна по умолчанию в более свежих моделях микрокомпьютера.
Также обращу внимание, что из config.txt строка program_usb_boot_mode=1 сама по себе никуда не денется, поэтому после перезагрузки ее желательно оттуда удалить.
Установка системы
Установка операционной системы для Raspberry Pi на USB-накопитель ничем принципиально не отличается от установки на microSD-карту: нам все также потребуется скачать образ нужной системы и записать его на подходящий диск.
Удобнее всего использовать для этого специальную утилиту Raspberry Pi Imager, доступную под Windows, Ubuntu и macOS. В отличие от универсальных приложений для записи образов (Rufus, Win32DiskImager, balenaEtcher и т.п.), она может работать не только с локально хранящимися файлами, но и выкачивать нужный образ с сайта Raspberry Pi Foundation прямо в процессе записи.
Выбираем нужный образ из списка:
Выбираем накопитель для записи:
И дожидаемся окончания процесса:
Загрузка
Извлекаем из Raspberry Pi microSD-карточку с системой, подключаем к USB наш внешний диск и подаем питание.
Начнется загрузка с внешнего диска и через десяток-другой секунд система будет готова к работе.
Важный момент №1: При подключении внешнего жесткого диска потребляемая Raspberry Pi 4 мощность возрастает. Чтобы не столкнуться с нехваткой мощности для полноценной работы микрокомпьютера заранее позаботьтесь о наличии хорошего блока питания и качественного кабеля.Заключение
Буквально 10 минут работы позволяют в разы повысить надежность системы, отказавшись от использования карточек памяти с ограниченным ресурсом в пользу твердотельных накопителей или обычных HDD.
17 комментария на «Raspberry Pi. Загрузка с USB-накопителя»
Цитата:
Для нужно загрузиться в Raspberry Pi OS с microSD-карты и добавить строчку с командой в файл config.txt:
echo program_usb_boot_mode=1 | sudo tee -a /boot/config.txt
====================================================
А если открыть /boot/config.txt непосредственно в корне SD-карты и записать в него данную команду? Так возможно?
Как загрузить Raspberry Pi 3 с внешнего жесткого диска
Raspberry Pi предназначен для работы с SD / MicroSD-картой. Для такой операционной системы, как PIXEL, это означает, что ваш «корневой» и «домашний» разделы расположены на SD-карте, что может быть немного ограничительным, учитывая ее чрезвычайно маленький размер хранилища. Если вы планируете запустить домашний сервер хранения на Raspberry Pi, лучше всего переместить операционную систему на внешний жесткий диск, чтобы использовать много места для хранения.
В этом руководстве мы покажем вам, как заставить Raspberry Pi 3 загружаться и запускаться с внешнего жесткого диска.
заметка: Причина, по которой здесь используется Raspberry Pi 3, заключается в том, что он не требует дополнительного источника питания для питания внешнего жесткого диска. Мощности Raspberry Pi 3 достаточно для питания внешнего жесткого диска через порт USB. Обязательно используйте официальный адаптер питания Pi или вилку питания для вывода тока 2,5 А (минимум).
Перед тем, как начать, вот требования к этому руководству:
- Raspberry Pi 3
- Карта MicroSD (минимум 4 ГБ) с установленным PIXEL. (В этом руководстве предполагается, что вы уже выполнили рабочую установку PIXEL на карту microSD. Для получения дополнительных сведений см. РуководствоУстановить картинку здесьзамалиновый пирог.)
- Внешний жесткий диск отформатирован как Ext4. (вы можете использовать этоGPartedили жекоманда fdiskОтформатируйте внешний жесткий диск как Ext 4.)
Настройте внешний жесткий диск
1. Вставьте карту microSD в Raspberry Pi 3. Вставьте внешний жесткий диск в USB-порт Raspberry Pi 3. Включите Pi.
2. Дойдя до рабочего стола, откройте терминал. Войдите в учетную запись root и установите внешний жесткий диск.
3. Далее нам нужно установить Rsync (если он еще не установлен):
4. Скопируйте все файлы с карты microSD на внешний жесткий диск. Мы используем rsync, Все права доступа к файлам и права собственности завершены.
5. Чтобы использовать все файлы запуска на внешнем жестком диске, нам нужно изменить файл запуска, чтобы он указывал на внешний жесткий диск для получения инструкций по запуску.
Нам нужно отредактировать две части этой строки. изменение root= за /dev/sda, , Добавить в конце rootdelay=5 。
Результат должен выглядеть так:
6. Наконец, мы добавляем запись жесткого диска в «/ mnt / etc / fstab», чтобы корневая папка на внешнем жестком диске автоматически монтировалась во время запуска.
Добавьте эту строку во вторую строку файла:
заметка: /devmncblk0p7 Что касается слота для карты microSD, ваша ситуация может быть другой.
После изменения это должно выглядеть так:
Вот и все. Перезагрузите Pi, и он должен загрузиться и запуститься с внешнего жесткого диска. Следует отметить, что карта microSD должна быть в слоте, потому что Pi необходимо прочитать загрузочный файл с нее перед загрузкой с внешнего жесткого диска.
Необязательно: увеличьте размер файла подкачки
Предполагая, что на внешнем жестком диске много места, вам может потребоваться увеличить размер файла подкачки, чтобы Pi мог работать немного быстрее.
1. Откройте терминал и войдите в систему под учетной записью root.
2. Отредактируйте файл подкачки.
Будет ценить CONF_SWAPSIZE Измените со 100 на 512. Сохраните и выйдите из файла.
3. Перезапустите службу, чтобы обновить изменения.
в заключении
Raspberry Pi 3 поставляется с некоторыми полезными улучшениями, такими как увеличенный объем оперативной памяти, модуль Wi-Fi и блок питания, достаточный для поддержки внешних жестких дисков. Это делает его полезным для выполнения более крупных и интенсивных проектов. Таким образом, карта microSD с небольшим объемом памяти может быть ограничивающим фактором, не говоря уже о ее низкой скорости чтения / записи и уязвимости для повреждения данных. Согласно приведенным выше инструкциям, теперь вы можете включить Raspberry Pi с внешнего жесткого диска и улучшить его производительность.
Интеллектуальная рекомендация
совместный запрос mysql с тремя таблицами (таблица сотрудников, таблица отделов, таблица зарплат)
1. Краткое изложение проблемы: (внизу есть инструкция по созданию таблицы, копирование можно непосредственно практиковать с помощью (mysql)) Найдите отделы, в которых есть хотя бы один сотрудник. Отоб.
[Загрузчик классов обучения JVM] Третий день пользовательского контента, связанного с загрузчиком классов
IP, сеанс и cookie
Доброго времени суток, Хабр! Пару недель назад зачесались руки гика — захотелось мне приобрести довольно нашумевший и всем известный одноплатный мини-компьютер Raspberry Pi. Модель была выбрана самая «крутая» — версия «B» с 512Mb ОЗУ на борту.
Этот пост о другом. После всех манипуляций с настройкой захотелось попробовать машинку, так сказать, «в деле». Идея возникла практически сразу. Дома у меня имеется 3 компьютера, 2 смартфона, бюджетный роутер, и внешний жёсткий диск на 2Tb — Seagate Expansion External. Интерфейс подключения у HDD — USB. Роутер из разъёмов имеет только Ethernet и дырку для шнура электропитания. Все мои устройства соединяются с роутером только по WiFi, и ни одно не может работать в постоянном режиме. Но тут появляется Raspberry. Миниатюрные размеры платы позволяют разместить систему вида [HDD<=USB=>RPi<=Ethernet=>DIR300NRU(роутер)<=WiFi=>LAN] прямо на подоконнике и использвать диск в локальной сети, а её мизерное энергопотребление позволяет держать включенной практически постоянно. RPi работает под управлением семейства ОС Linux, а именно я на неё установил Raspbian. Казалось бы, поставить сервер samba и расшарить диск… но это было бы слишком просто. Конечная задача усложнилась: необходимо делать внешний диск доступным в локальной сети, только в том случае, если мой смартфон к этой сети в данный момент подключён, иначе диск размонтировать, тем самым снижая на него нагрузку и его энергопотребление. Значит писать будем демон, и писать будем на Python. Поехали!
Первым делом, первым делом. samba!
Сначала нужно настроить самбу и железо. Цепляем хард к Малине через USB, Малину к роутеру по Ethernet. Всё включаем в розетку. Коннектимся по SSH к RPi, я использую PuTTY под Windows в качестве клиента.
В Raspbian «из коробки» нет возможности подключить NTFS-раздел диска для записи, монтируется он только как Read-Only и не пускает к себе по локальной сети.
Не беда, сейчас установим нужный драйвер:
Дальше нам нужно знать имя раздела для монтирования, узнаём так:
И получаем примерно такой вывод:
Disk /dev/sda: 2000.4 GB, 2000398931968 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907029164 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0006573a
Device Boot Start End Blocks Id System
/dev/sda1 2048 409602047 204800000 83 Linux
/dev/sda2 409602048 419842047 5120000 82 Linux swap / Solaris
/dev/sda3 419842048 3907028991 1743593472 7 HPFS/NTFS/exFAT
Внешний HDD у меня имеет имя sda, раздел обзывается sda3, у вас может быть другое. Запоминаем его.
Дальше смотрим куда монтировать. По умолчанию диск автоматически монтируется в /media/Имя_тома. Я решил не заморачиваться и оставить его там. Путь к директории у меня: /media/DataR.
Теперь настраиваем сам сервер samba. Открываем файл конфигурации для записи:
Про настройку можно подробно прочитать в сети, я лишь приведу свой файл конфигурации:
Настроили? Идём дальше. Проверяем работоспособность всей конструкции. Монтируем раздел (сначала размонтируем, на всякий), перезапускаем сервер samba.
Если ошибок не наблюдается, то пробуем найти сервер в сети. Если и тут всё нормально, то идём дальше.
Пишем скрипт
Писать будем на Python. Интерпретатор нам уже доступен предустановленным на Raspbian. Я решил писать сразу в консоли:
- Проверять, доступен ли IP в локальной сети
- Выполнять системные команды
- Ждать некоторое время
- Зациклить всё это дело
Итоги
Получилось, что можно настроить абсолютно всё, а также отключить (раз)монтирование раздела. Осталось прописать на устройстве статический IP для подключения к нашей локальной сети и всё, своеобразный ключ доступа к диску готов! Для полной автоматизации можно добавить скрипт в автозагрузку при старте системы. Открываем системный файл rc.local:
И дописываем в него следующую строчку:
Путь, конечно, указываете свой.
Вот и всё, спасибо за прочтение! Это был мой первый опыт разработки под Raspberry Pi, да и под Linux вообще.
UPD1: спасибо, что подсказали насчёт перезагрузки и автозапуска, первое выкинул, второе поправил
При использовании карт памяти microSD можно столкнуться с ограничениями по скорости чтения/записи данных, поэтому поддержка загрузки ОС с подключенного по USB флеш-накопителя или SSD оказывается очень полезной. Настроить такой метод загрузки очень просто — ниже представлена пошаговая инструкция.
⚠️ Данный гайд применим к моделям Raspberry Pi 4B и Pi 400.
Содержание
Обновление бутлоадера
Шаг 1. Для того, чтобы обновить загрузчик или настроить порядок загрузки необходимо установить на обычную microSD официальную систему Raspberry OS. В данном случае достаточно lite-версии без окружения рабочего стола.
Шаг 2. Вставьте карту с системой в Raspberry и загрузитесь с неё.
Шаг 3. Войдите в систему, используя логин pi и пароль raspberry.
Шаг 4. Чтобы установить самый свежий загрузчик, выполните эту команду:
Шаг 5. После успешного обновления запустите raspi-config.
Шаг 6. Выберите пункт Advanced Options, подтвердите клавишей Enter.
Шаг 7. Откройте пункт Bootloader Version, после чего выберите первый пункт и подтвердите его.
Шаг 8. На это предложение ответьте отказом:
Шаг 9. Далее выберите раздел Boot Order и переместите USB на первое место. Если такой порядок был изначально, подтвердите его, нажав Ok.
Запуск с USB
Шаг 1. Запишите любую подходящую ОС на USB-накопитель через утилиту balenaEtcher на компьютере. Для этого в окне программы выберите образ системы, диск и нажмите Flash.
Шаг 2. Отключите Raspberry Pi от питания, извлеките microSD (так как система будет всегда загружаться в первую очередь с карты памяти), вставьте USB-накопитель с записанной операционной системой и подключите питание снова.
Шаг 3. Готово, одноплатный компьютер должен загрузиться с подключенного по USB диска.
Читайте также: