modified: rpi_backup.md
parent
3ec0a01572
commit
d95489ce93
|
@ -4,7 +4,7 @@
|
||||||
|
|
||||||
Создать резервную копию мало, необходимо также быть уверенным в том, что в случае необходимости, с ранее созданной резервной копии можно восстановиться. Ведь в процессе создания резервной копии, исходные данные могут изменяться - происходит чтение/запись, таким образом, есть вероятность, что в резервную копию попадут не консистентные данные и восстановиться с такой резервной копии будет невозможно. Чтобы избежать подобных проблем, необходимо исключить возможность изменения исходных данных в процессе создания резервных копий. Например, при создании образа системы, необходимо, чтобы раздел, резервную копию которого будем выполнять, не был смонтирован. Этого легко добиться, если это не загрузочный раздел.
|
Создать резервную копию мало, необходимо также быть уверенным в том, что в случае необходимости, с ранее созданной резервной копии можно восстановиться. Ведь в процессе создания резервной копии, исходные данные могут изменяться - происходит чтение/запись, таким образом, есть вероятность, что в резервную копию попадут не консистентные данные и восстановиться с такой резервной копии будет невозможно. Чтобы избежать подобных проблем, необходимо исключить возможность изменения исходных данных в процессе создания резервных копий. Например, при создании образа системы, необходимо, чтобы раздел, резервную копию которого будем выполнять, не был смонтирован. Этого легко добиться, если это не загрузочный раздел.
|
||||||
|
|
||||||
Но как быть, если нужно создать резервную копию (образ) загрузочного раздела или всего диска? - Необходимо выполнить загрузку с какого-нибудь live-cd и средствами этого самого live-cd создать образ системы. С Raspberry Pi 4 ситуация немного проще, достаточно извлечь SD-карту, создать её образ и сохрать этот образ в надёжном месте. Всё это ручная работа, которая требует времени.
|
Но как быть, если нужно создать резервную копию (образ) загрузочного раздела или всего диска? - Необходимо выполнить загрузку с какого-нибудь live-cd и средствами этого самого live-cd создать образ системы. С Raspberry Pi 4 ситуация немного проще, достаточно извлечь SD-карту, создать её образ и сохранить этот образ в надёжном месте. Всё это ручная работа, которая требует времени.
|
||||||
|
|
||||||
## Один из способов автоматизации создания образа системы Raspberry Pi 4 описан ниже.
|
## Один из способов автоматизации создания образа системы Raspberry Pi 4 описан ниже.
|
||||||
|
|
||||||
|
@ -15,26 +15,27 @@ Raspberry Pi 4, 400 и Compute Module 4 используют EEPROM для за
|
||||||
Таким образом, выполнить создание образа SD-карты RPI можно если:
|
Таким образом, выполнить создание образа SD-карты RPI можно если:
|
||||||
|
|
||||||
- записать образ системы на USB накопитель, подойдёт Raspberry Pi OS lite (<https://www.raspberrypi.com/software/operating-systems/>);
|
- записать образ системы на USB накопитель, подойдёт Raspberry Pi OS lite (<https://www.raspberrypi.com/software/operating-systems/>);
|
||||||
|
- подключить USB накопитель к RPI;
|
||||||
- переключить EEPROM в режим загрузки с USB;
|
- переключить EEPROM в режим загрузки с USB;
|
||||||
- выполнить загрузку с USB;
|
- выполнить загрузку с USB;
|
||||||
- создать образ SD-карты и передать его в надёжное сетевое хранилище;
|
- создать образ SD-карты и передать его в надёжное сетевое хранилище;
|
||||||
- вернуть EEPROM в режим загрузки с SD-карты;
|
- вернуть EEPROM в режим загрузки с SD-карты;
|
||||||
- перезагрузить RPI.
|
- перезагрузить RPI.
|
||||||
|
|
||||||
Ничего сложного, осталось найти способ автоматического переключения способов загрузки в EEPROM. И такой способо существует - утилита `rpi-eeprom-config`
|
Ничего сложного, осталось найти способ автоматического переключения способов загрузки в EEPROM. И такой способ существует - утилита `rpi-eeprom-config`
|
||||||
|
|
||||||
Нам достаточно двух ключей:
|
Нам достаточно двух ключей:
|
||||||
|
|
||||||
-a, --apply
|
-a, --apply
|
||||||
-o, --out
|
-o, --out
|
||||||
|
|
||||||
сохранить текущие настройки загрузчика во внешний файл
|
сохранить текущие настройки EEPROM во внешний файл
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pi@sdboot:~ $ sudo rpi-eeprom-config -o ~/eeprom.conf
|
pi@sdboot:~ $ sudo rpi-eeprom-config -o ~/eeprom.conf
|
||||||
```
|
```
|
||||||
|
|
||||||
применить конфигурацию загрузчика из файла
|
применить конфигурацию EEPROM из файла
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pi@sdboot:~ $ sudo rpi-eeprom-config -a ~/eeprom.conf
|
pi@sdboot:~ $ sudo rpi-eeprom-config -a ~/eeprom.conf
|
||||||
|
@ -42,7 +43,7 @@ pi@sdboot:~ $ sudo rpi-eeprom-config -a ~/eeprom.conf
|
||||||
|
|
||||||
Осталось окончательно сформировать архитектуру нашего решения по созданию образа.
|
Осталось окончательно сформировать архитектуру нашего решения по созданию образа.
|
||||||
|
|
||||||
**На системе с SD**
|
**На системе загруженной с SD**
|
||||||
|
|
||||||
1. Необходимо создать конфигурационный файл EEPROM, который установит загрузку на USB
|
1. Необходимо создать конфигурационный файл EEPROM, который установит загрузку на USB
|
||||||
|
|
||||||
|
@ -104,7 +105,7 @@ pi@sdboot:~ $ sudo crontab -e
|
||||||
0 2 * * 3 /opt/scripts/rpi_usb_boot.sh
|
0 2 * * 3 /opt/scripts/rpi_usb_boot.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
**На системе с USB**
|
**На системе загруженной с USB**
|
||||||
|
|
||||||
4. Обеспечить подключение к хранилищу по SSH на основе ключа
|
4. Обеспечить подключение к хранилищу по SSH на основе ключа
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue