В настоящее время у меня есть один жесткий диск с этими разделами:
/dev/sdb1 /
/dev/sdb2 swap
/dev/sdb3 /home
Я думаю о покупке ssd для моего /
раздела.
Теперь мой вопрос: возможно ли переместить / преобразовать мою текущую конфигурацию в новую (два диска, / home остается)? Предположительно изнутри работающей системы?
Я рекомендую не использовать dd
. Он просто делает тупой сектор за сектором, что означает, что он потерпит неудачу, если целевой раздел меньше, и тратит много времени на копирование свободного пространства, а если целевой раздел больше, дополнительное пространство не будет доступно, пока вы не запустите resize2fs
, чтобы расширить файловую систему.
Лучше всего делать это с live CD, потому что, если вы копируете файлы во время их изменения, вы получите поврежденные результаты.
Отформатируйте ssd и смонтируйте как новый раздел ssd, так и исходный корневой раздел, затем просто запустите sudo cp -ax /media/old-partition/* /media/new-partition
, где старый раздел и новый раздел заменяются фактическими точками монтирования. Это скопирует каждый файл, сохранив право собственности, разрешения и временные метки.
Затем запустите sudo grub-install --root-directory=/media/new-partition /dev/SSD_DEVICE
, подставив правильные значения для нового раздела и SSD_DEVICE. Это установит grub, делая диск загрузочным.
Как только вы перезагрузитесь (убедившись, что ваш BIOS настроен на загрузку с ssd вместо старого диска), убедитесь, что вы работаете с ssd, а не со старого диска, проверив выходные данные df
и / или mount
, и вы должны хорошо удалить старый раздел.
О, и вы захотите отредактировать файл /etc/fstab
в новом разделе после копирования и обновления UUID корневого раздела, чтобы он соответствовал UUID нового раздела SSD вместо старого. Вы можете найти этот UUID, запустив sudo blkid
.
Редактировать: добавлено / * в копии выше, но необходимо отредактировать более 6 символов. Теперь это 101 персонаж!
Сначала прочтите, как выполнить миграцию. Существует ли простой способ переноса ОС с одного жесткого диска на другой? .
Загрузитесь со своего SSD и добавьте следующую строку в /etc/fstab
(это только привязка):
/media/slowhd/home /home none rw,bind 0 0
Запустите mount -a
, чтобы изменения вступили в силу.
Подсказка : не делайте mount /dev/yourhd /home
, потому что вы теряете гибкость, чтобы перемещать дополнительные каталоги к вашему старому HD.
Более техническим решением было бы использование LVM (менеджер логических томов) .
Эта команда:
dd if=/dev/sdb1 of=DEVICE_PATH_OF_SSD_DRIVE
должна работать для клонирования раздела /
на диск SSD.
РЕДАКТИРОВАТЬ: это будет работать, только если ваш раздел имеет тот же размер, что и накопитель. Если они не одинакового размера, вы можете использовать partimage :
partimage -z0 -d save /dev/sdb1 clone.partimg
partimage restore DEVICE_PATH_OF_SSD_DRIVE clone.partimg
rm clone.partimg
. Предостережение в этом методе заключается в том, что на диске требуется достаточно места для образа, содержащего все содержимое. из /
. Вы должны быть в порядке, если у вас есть> 10 ГБ бесплатно. В противном случае вы можете использовать -z1
вместо -z0
для сжатия изображения. Для еще большего сжатия используйте -z2
. Кроме того, partimage не поддерживает файловую систему ext4 .
Как только вы это сделаете, вы должны смонтировать SSD и проверить, правильно ли скопированы ваши данные:
$ mkdir /tmp/ssd
$ sudo mount -t ext4 DEVICE_PATH_OF_SSD_DRIVE /tmp/ssd
$ ls /tmp/ssd
bin dev initrd.img lost+found opt sbin sys var
boot etc initrd.img.old media proc selinux tmp vmlinuz
cdrom home lib mnt root srv usr vmlinuz.old
Замените ext4
файловой системой, которую вы использовали для /
. [ 1121]
Вероятно, вам потребуется установить загрузчик GRUB на этот диск:
sudo grub-install DEVICE_PATH_OF_SSD_DRIVE
Затем вам нужно будет отредактировать файл /etc/fstab
, чтобы заменить /dev/sdb1
на путь устройства вашего SSD-диска в запись, которая монтируется на /
. (sudo $EDITOR /etc/fstab
)
Пожалуйста, подождите, пока в этом ответе будет несколько голосов, прежде чем следовать этим инструкциям. Я не эксперт в этих вещах, поэтому я мог пропустить некоторую важную информацию. Любой, кто видит какие-либо недостатки в этом, пожалуйста, добавьте комментарий, объясняющий их. Вы должны принять такие меры предосторожности, потому что если что-то пойдет не так, это может привести к тому, что ваш компьютер не загрузится.