Как скопировать диск через SSH

Передача команд SSH в такие утилиты, как ddgzipили rsyncэто простой способ скопировать данные VPS в один файл для последующего извлечения. Это может эффективно создать резервную копию диска VPS или перенести установленную систему между VPSs.
Это руководство демонстрирует, как загрузить .imgна свой компьютер через SSH файл, содержащий блочную копию дискового устройства вашего VPS, созданного с помощью dd.
ЗаметкаЕсли объем данных на вашем диске намного меньше размера диска, тогда загрузка копии с помощью ddможет занять больше времени, чем просто загрузка ваших файлов. Если вы заинтересованы в загрузке отдельных файлов или каталогов, просмотрите варианты, перечисленные в наших руководствах «  и «  .

Скачать диск через SSH 

Загрузитесь в Rescue Mode 

  1. Подготовьте компьютер-получатель, проверив, установлен ли SSH. Большинство Linux / Unix-подобных систем по умолчанию включают OpenSSH в свои пакеты. Если принимающей системой является Microsoft Windows, доступно несколько решений SSH, таких как  .
  2. Перезагрузите свой Линод в  и подключитесь к нему, используя  .
  3. Установите пароль администратора для системы восстановления и запустите сервер SSH:

    passwd
    service ssh start
    

Скопируйте и загрузите диск 

  1. Скопируйте диск по SSH из VPS на принимающую машину. Замените 192.0.2.9на IP-адрес VPS и /home/archive/VPS.imgпуть, по которому вы хотите сохранить диск.

    ssh root@192.0.2.9 "dd if=/dev/sda " | dd of=/home/archive/VPS.img
    
    ЗаметкаУстройство /dev/sdaиспользуется для Линод, работающих на KVM. Если ваш VPS все еще использует XEN, используйте его /dev/xvdaв этом руководстве.
  2. Принимающая машина подключится к Линоде. Проверьте отпечатки пальцев ключа SSH. Если допустимо, введите yesи нажмите Enter, чтобы продолжить:

    The authenticity of host '192.0.2.9 (192.0.2.9)' can't be established.
    RSA key fingerprint is 39:6b:eb:05:f1:28:95:f0:da:63:17:9e:6b:6b:11:4a.
    Are you sure you want to continue connecting (yes/no)? yes
    
  3. Введите пароль root, который вы создали выше для спасательной системы:

    Warning: Permanently added '192.0.2.9' (RSA) to the list of known hosts.
    root@192.0.2.9's password:
    
    Когда передача завершится, вы увидите итоговый вывод, подобный приведенному ниже:

      
            4096000+0 records in
            4096000+0 records out
            2097152000 bytes (2.1 GB) copied, 371.632 seconds, 5.6 MB/s
        
    Копирование вашего диска может занять некоторое время. Если у вас медленное интернет-соединение, добавьте -Cопцию в команду SSH, чтобы включить сжатие gzip образа диска. Если вы получили Write failed: Broken pipeошибку, повторите этот процесс.

Проверка диска 

После завершения копирования проверьте его, смонтировав изображение на принимающем устройстве.
  1. Переключить пользователей rootна принимающую машину:

    su
    
  2. Создайте каталог для монтирования диска как:

    mkdir VPS
    
  3. Смонтируйте диск. Замените VPS.imgна название диска вашего Линода.

    mount -o loop VPS.img VPS
    
  4. Перечислите каталоги на диске, чтобы указать, все ли перенесено. Ваш вывод lsпохож на ниже:

    ls VPS
    

      
            bin   dev  home  lost+found  mnt  proc  sbin     srv  tmp  var
            boot  etc  lib   media       opt  root  selinux  sys  usr
    

Загрузить диск через SSH 

Вы можете загрузить образ диска на новый сервер. Например, если вы ранее загрузили свой диск VPS и удалили VPS, чтобы остановить выставление счетов на нем, вы можете позднее создать новый VPS и загрузить диск для возобновления своих услуг.
  1. Подготовьте новый VPS, сначала создав новый диск подкачки. Выполнение этого в первую очередь означает, что вы можете просто использовать оставшееся пространство VPS для системного диска без каких-либо вычитаний. Размер диска подкачки обычно начинается с 256 МБ или 512 МБ, но может быть больше или меньше в зависимости от ваших потребностей.
  2. Получите доступ к своей Линоде через Менеджер Линод. Выберите « Создать новый диск» и выберите swapиз выпадающего меню « Тип» .
  3. Теперь используйте оставшееся место на диске, чтобы создать системный диск, на который вы будете копировать образ диска. Введите описательное имя в поле « Метка» и убедитесь, что размер достаточно велик, чтобы вместить содержимое загружаемого диска. Нажмите Сохранить изменения .
  4. Перезагрузите свой линод в  и запустите сервер SSH, как описано выше.
  5. Загрузите диск по SSH в VPS. Замените 192.0.2.9на IP-адрес VPS и путь к образу /home/archive/VPS.imgдиска.

    dd if=/home/archive/VPS.img | ssh root@192.0.2.9 "dd of=/dev/sda"
    
    Когда передача завершится, вы увидите итоговый вывод, подобный приведенному ниже:

      
            49807360+0 records in
            49807360+0 records out
            25501368320 bytes (26 GB) copied, 9462.12 s, 2.7 MB/s
    
    Копирование вашего диска может занять некоторое время. Если вы получили Write failed: Broken pipeошибку, повторите этот процесс.

Разверните Filesystem 

Если диск, созданный вами на новом сервере, больше, чем исходный диск (например, вы переносите диск с меньшего VPS на больший VPS), вам придется изменить размер файловой системы, чтобы использовать новое пространство.
Вы можете проверить, нужно ли это, сравнив пространство файловой системы с пространством нового диска:

  
    root@localhost:~# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sda         24G   19G  4.0G  83% /

  
    root@localhost:~# lsblk
    NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda     8:0    0   30G  0 disk /
В приведенном выше примере значения в столбце Размер не совпадают. Хотя диск имеет 30 ГБ, файловая система может видеть только 24 ГБ.
Чтобы использовать все доступное пространство на новом диске, выполните следующие действия в режиме восстановления. Замените /dev/sdxего на идентификатор устройства вашего системного диска (/ dev / sda, / dev / sdb и т. Д.).

e2fsck -f /dev/sdx
resize2fs /dev/sdx

Добавить комментарий

Автору будет очень приятно узнать обратную связь о своем руководстве.

Комментариев 0