Перенос системы Raspbian с SD карты на USB флешку

Рабочая инструкция по переносу системы Raspbian с SD карточки на USB флешку. Загрузочный раздел обязательно остается на SD карте.

Имеется Raspberry Pi 3 B+, Raspbian Stretch на SD карте 8gb (класс 10) и USB флешка Apacer на 8gb
Все делал на рабочей системе с Domoticz на борту.

Проверяем файловую систему:

sudo df -h

/dev/root это наша файловая система
/dev/mmcblk0p1 это загрузочный раздел на sd карте

Теперь вставим флешку в малину и проверим, распознается ли она:

sudo lsusb

Device 005 – это USB-флешка

Теперь проверим, распознается ли флешка операционной системой:

sudo tail /var/log/messages

в данном случае USB-флешка обозначается как /dev/sda

Теперь займемся файловой системой. Установим:

sudo apt-get install gdisk

Далее выполним разбиение:

sudo gdisk /dev/sda

«d» для удаления,  «n» для создания нового раздела и «w», чтобы все это записать

Теперь редактируем файл /boot/cmdline.txt :

sudo nano /boot/cmdline.txt

приводим значение root=/dev/mmcblk0p2 на root=/dev/sda1

Добавляем в конце задержку в 5 секунд:

rootdelay=5

В итоге наш файл /boot/cmdline.txt должен выглядеть следующим образом:

dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/sda1 rootfstype=ext4 elevator=deadline rootwait rootdelay=5

Теперь делаем форматирование, монтирование, установку rsync и копирование:

sudo mke2fs -t ext4 -L rootfs /dev/sda1
sudo mount /dev/sda1 /mnt
sudo apt-get install rsync
sudo rsync -axv / /mnt

Процесс копирования занимает минут 10-15

Затем надо ввести изменения в таблицу файловой системы, т.е. в /etc/fstab (на флэшке, а не карте).

выполняем:

sudo nano /mnt/etc/fstab

Добавляем следующую строчку:

/dev/sda1    /   ext4    defaults,noatime  0       1

И добавляем комментарий перед отсылкой к SD-карте:

#/dev/mmcblk0p2  /            ext4    defaults,noatime       0       1

Теперь это должно выглядеть как-то так:

 

Все готово. Для проверки того, откуда у меня сейчас запустится система, я создал на usb флешке файл /mnt/home/pi/hello.txt

sudo nano /mnt/home/pi/hello.txt

и добавил текст hello

Теперь перезагружаем raspberry:

sudo reboot

И смотрим, есть ли наш файл:

sudo nano /home/pi/hello.txt

Система запустилась с usb накопителя. Что я сделал дальше, так это переустановил Domoticz:

sudo curl -L install.domoticz.com | bash

И выбрал чистую установку (вся база и все устройства с настройками естественно сохраняются, но бэкап папки domoticz обязателен)

Опять перезапустил малину и все отлично работает. Теперь на usb флешке у нас система, а на sd карте остался загрузочный раздел.

P.S.

Чтобы вернуть запуск малины с sd карты, редактируем файл /boot/cmdline.txt (Через Windows, например)

sudo nano /boot/cmdline.txt

Меняем значение root=/dev/sda1 на root=/dev/mmcblk0p2

Поделитесь с друзьями
Подписаться
Уведомить о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

4 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Nik
Nik
6 лет назад

А что даст такая манипуляция ?
SD карта дольше проживет ?

Типыч
Типыч
5 лет назад

Cделал всё по инструкции, малинка запустилась ок. Обязательно ли переустанавливать Domoticz?