В настоящее время у меня установлен Ubuntu 16.04 Server на машине с небольшим SSD на 96 ГБ. Этого больше не хватает для всех пользователей на сервере, поэтому я хотел бы добавить HDD на 1 ТБ и /home
явно переместить папку в новый раздел на этом диске на 1 ТБ.
Изначально я планировал сделать это, следуя инструкции.здесь. Однако при более внимательном рассмотрении системы я обнаружил, что LVM включен:
Filesystem Size Used Avail Use% Mounted on
udev 63G 0 63G 0% /dev
tmpfs 13G 9.5M 13G 1% /run
/dev/mapper/ubuntu--vg-root 98G 76G 18G 82% /
tmpfs 63G 0 63G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 63G 0 63G 0% /sys/fs/cgroup
/dev/sda2 473M 111M 338M 25% /boot
/dev/sda1 512M 136K 512M 1% /boot/efi
tmpfs 13G 0 13G 0% /run/user/1001
Исходя из того, что я прочитал до сих пор, мне нужно добавить новый диск в ubuntu-vg
группу томов (как в шагах 2-3 изэтот ответ). Но я не уверен, как действовать дальше — стоит ли мне продолжатьшаги 4-5? Или есть другой способ явно перейти только /home
на 1-ТБ HDD и оставить /
SSD?
решение1
Есть несколько способов сделать то, что вы хотите, но я бы порекомендовал следующий:
- Разбейте новый диск на разделы. Это может быть один большой раздел LVM, или вы можете выделить один или несколько не-LVM разделов для других целей. Иногда я создаю несколько разделов LVM (они же физические тома, или PV), чтобы в будущем, если возникнет такая необходимость, можно было удалить один или несколько из них из конфигурации LVM. Обратите внимание, что я делаюнетрекомендуем размещать структуры данных PV непосредственно на диске без разделов, как показано в ответе LVM, на который вы ссылаетесь. Хотя это и законно, это может привести к путанице, поскольку жесткие диски обычно разбиты на разделы.
- Подготовьте PV для использования LVM с помощью
pvcreate
команды, как вsudo pvcreate /dev/sdb1
. - Добавьте новый(е) PV в существующую группу томов (VG) с помощью
vgextend
, как вsudo vgextend ubuntu--vg /dev/sdb1
. - Введите текст
sudo pvdisplay
, чтобы отобразить статистику по вашим фотоэлектрическим установкам, включая их размеры. - Создайте новый логический том (LV) с помощью
lvcreate
, как вsudo lvcreate -L 900G -n home ubuntu--vg /dev/sdb1
. Обратите внимание, что я указал синтаксис, который позволяет вам задать размер (через-L
) и PV, на котором будет создан LV (/dev/sdb1
). - Введите
sudo pvdisplay
еще раз, чтобы убедиться, что вы создали LV подходящего размера. Если нет, вы можете изменить его размер с помощьюlvresize
или удалить его с помощьюlvremove
и повторить попытку. - Создайте файловую систему на вашем логическом томе, например
sudo mkfs -t ext4 /dev/mapper/ubuntu--vg-home
. - Установите новый LV в удобном месте, например
sudo mount /dev/mapper/ubuntu--vg-home /mnt
, . - Скопируйте свой
/home
каталог с помощьюtar
,cp
,rsync
, или любого другого инструмента, который вы предпочитаете. - Отредактируйте
/etc/fstab
, чтобы смонтировать новый LV в/home
. - Переименуйте текущий каталог
/home
в какое-нибудь другое имя (например,/home-orig
) и создайте новый пустой/home
каталог, который будет служить точкой монтирования. - Перезагрузите и надеюсь, что все заработает.
- Если все в порядке, удалите старый
/home-orig
каталог.
Шаги 8–11 очень похожи на эквивалентные шаги в процедуре, описанной ввики-страница, на которую вы ссылаетесь,поэтому я не буду вдаваться в подробности этих шагов.
Обратите внимание, что хотя я и делал это много раз, примеры команд, которые я показал, основаны на моем чтении соответствующих страниц руководства, поэтому я мог упустить некоторые детали. Я рекомендую вам просмотреть страницы руководства и, если вы получите ошибку, исправить ее, как только выясните, в чем проблема. Кроме того, я нахожу, что стандартное наименование LVM в Ubuntu сбивает с толку, поэтому я мог неправильно истолковать эту деталь, и вам, возможно, придется ее исправить.
После того, как вы закончите с этим, у вас останется неиспользуемое пространство в вашем PV на вашем SSD. Вы можете расширить свой корневой ( /
) LV в это пространство, расширить /home
LV, чтобы охватить оба диска, создать еще один LV для какой-то специальной цели и т. д.
Вариантом этой процедуры может быть оставить текущий /home
LV там, где он есть, создать новый LV на новом диске и начать использовать новый LV в качестве избыточного пространства. Вы замечаете, что ваш компьютер является многопользовательским сервером, поэтому это может быть неудобно, но могут быть причины сделать это — например, если только один или два пользователя потребляют львиную долю дискового пространства, вы можете переместить только их домашние каталоги в новое пространство или предоставить им каталоги в новом пространстве (с точками монтирования или символическими ссылками для упрощения доступа) и указать им переместить свои большие файлы в новое пространство. Этот подход будет иметь преимущество в том, что не окажет негативного влияния на других пользователей, поскольку новое пространство для хранения на жестком диске, вероятно, будет заметно медленнее старого пространства для хранения на SSD.
решение2
новый диск можно добавить в LVM, чтобы система воспринимала все это как один диск, или можно добавить его как второй диск. С помощью второго метода новый диск можно выделить для /home.
Сначала добавьте диск в систему, затем отформатируйте его в предпочитаемой вами файловой системе. Запишите UUID, затем переместите все из /home на новый диск. /home должен быть пустым, чтобы можно было смонтировать туда новый диск.
Далее отредактируйте файл /etc/fstab. Добавьте строку:
UUID=(отмечено ранее) /home (используемая файловая система) по умолчанию 0 2
Примечание: вы можете использовать имя устройства, но UUID гарантирует, что в случае изменения имени устройства будет смонтирован правильный диск.
сохраните и перезагрузите.