$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda5 33G 31G 467M 99% /var
/dev/sda6 120G 22G 93G 19% /var/lib/postgresql
Я хотел бы объединить их в один /var
раздел (без потери данных)
Я могу отключить его на некоторое время
Убедитесь, что раздел /dev/sda6
расположен сразу после /dev/sda5
, например, с помощью GParted.
Резервное копирование! Резервное копирование!! Резервное копирование!! (Сделайте 3 резервных копии)
Работа с разделами опасна. Убедитесь, что вы сделали резервные копии и копии важных данных на внешнем носителе. Избегайте создания резервных копий на том же диске, с которым вы собираетесь работать.
Источник: https://askubuntu.com/a/1005841/250300
Удалить (или закомментировать ) запись /dev/sda6
в /etc/fstab
, поэтому она не ищется во время следующей загрузки.
Мы могли бы выключить только PostgreSQL (как правило: все, что могло бы изменить данные при копировании их) для следующего шага, но нам нужно будет загрузить живой носитель, чтобы изменить размер разделов, так что загрузите ваш живой носитель Теперь.
Смонтировать разделы, о которых идет речь. Обратите внимание, что буква устройства (a
в /dev/sda
) может быть изменена во время сеанса связи, поэтому при необходимости измените команды.
for p in sda5 sda6
do
sudo mkdir /media/$p
sudo mount /dev/$p /media/$p
done
Скопируйте все свои данные из раздела для удаления в другое место. Вы можете использовать cp
, rsync
или tar
(со сжатием или без).
Я бы использовал tar
со сжатием, поскольку он создает копию только для чтения, а с современным оборудованием быстрее сжимать большие данные, чем записывать их без сжатия.
Я выбрал /media/data/
в качестве целевого местоположения, адаптирую его к своему.
Я использую sudo
, так как некоторые данные в /var/lib/postgresql
могут быть не читаемыми для вошедшего в систему пользователя, но это также может быть не нужно здесь.
sudo tar -cJvf /media/data/var-lib-postgresql.txz /media/sda6/
Размонтировать разделы.
sudo umount /media/sda{5,6}
Теперь запустите GParted, удалите оригинал /dev/sda6
и разверните /dev/sda5
, чтобы использовать освободившееся пространство. Подробные инструкции можно найти на https://askubuntu.com/a/1005841/250300 .
Смонтировать sda5 снова.
sudo mount /dev/sda5 /media/sda5
Убедитесь, что папка /media/sda5/postgresql
пуста. Если нет, очистите его, поскольку он, скорее всего, содержит данные, использованные до создания /dev/sda6
.
Восстановите ваши данные:
cd /media/sda5/postgresql && sudo tar -xvf /media/data/var-lib-postgresql.txz
Перезагрузите систему.