Перенос данных на другой диск
Высокая нагрузка на диск может приводить к задержкам при поступлении событий. В тяжелых случаях возможна полная неработоспособность ПК FindFace. Одним из способов снижения нагрузки на диск является перенос хранилищ данных ПК FindFace на другой диск.
В этом разделе:
Подготовка диска
Для того чтобы подготовить диск к миграции данных, выполните следующие действия:
Создайте новую точку монтирования (в примере
/mnt/ffdata
).sudo mkdir /mnt/ffdata sudo chown ntech:ntech /mnt/ffdata
Создайте раздел.
sudo parted /dev/sdb mklabel gpt mkpart primary ext4 1MiB 100% q sudo mkfs.ext4 /dev/sdb1
Узнайте UUID раздела (для
sdb1
в примере).sudo blkid | grep sdb1 /dev/sdb1: LABEL="data" UUID="0638ebe0-853e-43ea-8f35-bfae305695d1" TYPE="ext4" PARTUUID="8cebaacc-77d7-4757-b4c6-14147e92646c"
Настройте автоматическое монтирование раздела при загрузке ОС, добавив запись в fstab.
sudo vi /etc/fstab ------------ #DATA mount UUID=0638ebe0-853e-43ea-8f35-bfae305695d1 /mnt/ffdata/ ext4 auto,user,rw 0 2 -------------
Смонтируйте все файловые системы.
sudo mount -a
Миграция хранилища фотографий
Для миграции хранилища фотографий ПК FindFace выполните следующие действия:
Остановите сервис
findface-security
, чтобы предотвратить потерю данных.sudo systemctl stop findface-security
По умолчанию фотографии хранятся в директории
/var/lib/
. Выполните миграцию хранилища на новый диск.sudo cp -ax /var/lib/findface-security/ -R /mnt/ffdata/ sudo rm -r /var/lib/findface-security/ sudo cp -ax /var/lib/ffupload/ -R /mnt/ffdata/ sudo rm -r /var/lib/ffupload/
Создайте символические ссылки на новые директории.
sudo ln -s /mnt/ffdata/findface-security/ /var/lib/ sudo ln -s /mnt/ffdata/ffupload/ /var/lib/
Убедитесь, что права назначены верно.
sudo chown ntech:ntech /mnt/ffdata/findface-security/
Запустите сервис
findface-security
.sudo systemctl start findface-security
Миграция основной базы данных (PostgreSQL)
Для того чтобы мигрировать базу данных PostgreSQL, выполните следующие действия:
Узнайте текущую директорию базы данных.
postgres=# SHOW data_directory; data_directory ------------------------------ /var/lib/postgresql/10/main
Остановите PostgreSQL.
sudo systemctl stop postgresql
Создайте новую директорию для базы данных и назначьте ее пользователю ntech.
mkdir postgres_data_dir chown ntech postgres_data_dir
Перенесите базу данных и создайте резервную копию прежней версии.
sudo rsync -av /var/lib/postgresql /test/postgres_data_dir/ sudo mv /var/lib/postgresql/10/main /backups/pg_backup
Замените директорию в файле конфигурации PostgreSQL
<директория PostgreSQL>/postgresql.conf
.data_directory = '/test/postgres_data_dir/postgresql/10/main'
Запустите PostgreSQL.
sudo systemctl start postgresql
Убедитесь, что директория успешна изменена.
postgres=# SHOW data_directory; data_directory -------------------------------------------- /test/postgres_data_dir/postgresql/10/main