Как клонировать физическую систему в виртуальную машину?

Вот решение только для bash -, использующее globstarпараметр оболочки:

$ shopt -s globstar; c=0; for f in ** ; do echo "${f##*/}"; [[ "${f##*/}" =~ ^lib* ]] && [[ -d "$f" ]]  && ((c++)); done ; echo $c

Или в формате скрипта для удобства чтения:

#!/usr/bin/env bash
shopt -s globstar 
c=0
for f in **
do 
    echo "${f##*/}"
    if [[ "${f##*/}" =~ ^lib* ]] && [[ -d "$f" ]]
    then 
        ((c++))
    done
echo $c

globstarпозволяет нам включить рекурсивную подстановку и через [[с сопоставлением с образцом и флагом -d, чтобы проверить, является ли это каталогом, мы увеличиваем переменную-счетчик $c, которую мы печатаем в конце.

1
08.08.2019, 17:59
2 ответа

Я рекомендую сделать дамп диска в файл на внешнем диске (для скорости записи и свободного места ).

# /dev/sda is assumed your laptop drive
dd if=/dev/sda bs=1M of=/path/to/external_drive_mounted/laptop_dump.raw

Затем создайте диск дляvirtualbox:

VBoxManage internalcommands createrawvmdk -filename /path/to/file.vmdk \
    -rawdisk /path/to/external_drive_mounted/laptop_dump.raw

Этот диск указывает только на необработанный дамп.

Теперь вы можете создать виртуальную машину с этим диском и поэкспериментировать.

3
27.01.2020, 23:41

Загрузите Live Linux...

Запустите GParted, уменьшите размер вашей системы Ext4. Создайте новый раздел для дампа.


И затем, вот пример как root:

dd if=/dev/sda | bzip2 > /some/path/sda-dd.bz2

Это может дать вам некоторое преимущество в виде дополнительного пространства.

0
27.01.2020, 23:41

Теги

Похожие вопросы