Рабочая инструкция по переносу системы 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

4
Оставить комментарий

avatar
2 Цепочка комментария
2 Ответы по цепочке
0 Последователи
 
Популярнейший комментарий
Цепочка актуального комментария
3 Авторы комментариев
kvvТипычNik Авторы недавних комментариев

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

  Подписаться  
новее старее большинство голосов
Уведомление о
Nik
Гость
Nik

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

Типыч
Гость
Типыч

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