Поиск по сайту:

Как преобразовать каталог /Home в раздел в Linux


Эта тема может показаться немного странной. Я имею в виду, почему вам следует преобразовать домашний каталог в отдельный раздел?

Всякий раз, когда вы устанавливаете Linux, установщик уже выбирает «управляемое» разбиение по умолчанию. При использовании этого параметра установщик помещает домашний каталог и все остальные системные каталоги в корневой раздел (/).

Хотя эта установка работает достаточно хорошо, она представляет собой огромный риск. Если ваша система выйдет из строя или что-то повредит корневой раздел, все ваши личные файлы, находящиеся в домашнем каталоге, будут потеряны.

По этой причине важно во время установки создать отдельный домашний раздел. Это гарантирует сохранность ваших личных файлов при переустановке операционной системы или в случае сбоя корневого раздела.

Если вы приняли вариант по умолчанию при разбиении жесткого диска таким образом, чтобы все наши каталоги находились в корневом разделе, то это руководство для вас.

В этом руководстве мы перенесем домашний каталог в отдельный раздел на вновь добавленном диске. В демонстрационных целях мы будем использовать съемный USB-накопитель в качестве дополнительного накопителя. В реальном мире это может быть SSD-накопитель или дополнительный жесткий диск, который вы хотите сделать домашним разделом.

Давай начнем!

Шаг 1. Определите добавленный новый диск

До подключения съемного диска у нас есть только один жесткий диск (/dev/sda) с папкой home и всеми системными разделами, смонтированными в /. или корневой раздел.

Вот краткий обзор конфигурации вашего жесткого диска с помощью команды df.

df -Th

Далее мы подключим съемный USB 8 ГБ. Он идентифицируется как /dev/sdb и монтируется в точку монтирования /media/tecmint/USB.

Чтобы подтвердить это, мы запустим команду lsblk.

lsblk

Раздел и точка монтирования могут различаться в зависимости от ваших настроек. Например, третий диск будет обозначен как /dev/sdc, четвертый — /dev/sdd и так далее.

Шаг 2. Создайте новый раздел в Linux

Мы недавно добавили в нашу систему второй диск, но чтобы использовать его в качестве отдельного раздела для нашего домашнего каталога, нам нужно создать на нем раздел. На данный момент его нет, так как это новый диск.

Команда fdisk подтверждает это, как показано.

sudo fdisk -l

В выделенном разделе вы можете видеть, что новый диск не имеет какого-либо связанного с ним раздела, в отличие от первого диска, который имеет /dev/sda1, /dev/sda2, и /dev/sda5.

Теперь мы создадим раздел с помощью команды:

sudo fdisk /dev/sdb

При появлении запроса нажмите 'n', чтобы создать новый раздел. Затем нажмите 'p', чтобы указать создание основного раздела, и нажмите '1', чтобы указать номер раздела. Для следующих двух запросов нажмите «ENTER», чтобы принять значения по умолчанию при указании первого и последнего секторов.

Поскольку мой съемный диск имеет файловую систему NTFS, я удалю его, нажав 'Y'. Чтобы сохранить все внесенные изменения, нажмите 'w', поскольку при этом все изменения, внесенные в раздел, будут записаны.

Для подтверждения внесенных изменений еще раз выполните команду:

sudo fdisk /dev/sdb

При появлении запроса нажмите 'p' для печати. Это распечатает информацию о разделе. Из вывода вы можете видеть, что был создан новый раздел /dev/sdb1 с Linux в качестве типа файловой системы. Нам нужно отформатировать его в файловую систему ext4, что мы и сделаем в следующем разделе.

Шаг 3. Отформатируйте новый раздел в Linux

Следующим шагом будет форматирование раздела /dev/sdb1 с использованием формата файловой системы ext4. Обратите внимание, что мы форматируем /dev/sdb1 (раздел), а не /dev/sdb, который является съемным диском.

sudo mkfs.ext4 /dev/sdb1

Шаг 4. Смонтируйте новый раздел в Linux

Чтобы диск был доступен системе, нам необходимо смонтировать его в файловой системе системы. Но сначала мы создадим точку монтирования, к которой будем монтировать раздел.

sudo mkdir -p /srv/home

Далее мы смонтируем раздел в точке монтирования следующим образом. По сути, это делает диск доступным для системы.

sudo mount /dev/sdb1 /srv/home

Чтобы убедиться в этом, запустите команду df, как показано:

sudo df -Th

Шаг 5. Скопируйте файлы домашнего каталога в новый раздел

Теперь нам нужно скопировать содержимое каталога home в точку монтирования, которая теперь находится на диске. Итак, мы запустим команду:

sudo cp -aR /home/* /srv/home/

Просто чтобы убедиться, что все прошло успешно, мы проверим содержимое домашнего каталога.

ls -l /srv/home/tecmint

Из вывода вы можете ясно видеть, что все каталоги по умолчанию, которые должны находиться в домашнем каталоге, присутствуют.

Шаг 6. Создайте новый домашний каталог и смонтируйте диск.

Теперь нам нужно создать еще один домашний каталог, в который мы смонтируем наш домашний раздел. Чтобы избежать путаницы, мы переименуем наш текущий домашний каталог в показанный /home.bak.

sudo mv /home /home.bak

Далее мы создадим новый домашний каталог.

sudo mkdir /home

Затем мы отключим файловую систему /dev/sdb1 и смонтируем ее во вновь созданный домашний каталог.

sudo umount /dev/sdb1
sudo mount /dev/sdb1 /home

Чтобы убедиться, что каталог /home содержит каталоги по умолчанию, мы перейдем к его содержимому и перечислим его:

cd /home
ls -l tecmint

Кроме того, вы можете убедиться, что наша файловая система смонтирована в точке монтирования /home с помощью команды df следующим образом.

sudo df -Th /dev/sdb1

Вывод подтверждает, что файловая система /dev/sdb1 на нашем диске смонтирована в разделе /home. Однако это не переживет перезагрузку. Чтобы сделать это постоянным, требуется дополнительный шаг — изменить файл /etc/fstab, включив в него информацию о файловой системе.

Шаг 7. Постоянное монтирование раздела в Linux

Чтобы автоматически гарантировать, что файловая система монтируется каждый раз при запуске системы, мы собираемся изменить файл /etc/fstab. Но сначала давайте получим UUID файловой системы следующим образом.

sudo blkid /dev/sdb1

Скопируйте и вставьте UUID куда-нибудь в текстовый редактор, поскольку он будет использоваться на следующем шаге.

Затем откройте файл /etc/fstab.

sudo vim /etc/fstab 

Добавьте эту строку в файл, как показано. Замените uid в квадратных скобках фактическим UUID файловой системы /dev/sdb1, которую вы скопировали и вставили ранее в текстовом редакторе.

UUID=[ uid ]     /home	   ext4	   defaults	0	2

Сохраните изменения и закройте файл. Затем выполните следующую команду, чтобы смонтировать все разделы.

sudo mount -a

Теперь ваш диск будет монтироваться каждый раз при запуске системы в раздел /home.

df  -h /dev/sdb1

Чтобы избежать выполнения всех этих шагов, во время установки всегда рекомендуется иметь отдельный домашний раздел от остальных системных разделов, чтобы отделить ваши личные файлы от системных файлов. Это позволяет легко восстановить ваши данные, если что-то пойдет не так.