LXF168:Виртуализация. Спасем и сохраним
Olkol (обсуждение | вклад) (Новая страница: «Категория: Учебники '''Виртуализация. Сохраните доступ к важным старым фай…») |
Версия 21:02, 10 ноября 2018
|
|
|
Виртуализация. Сохраните доступ к важным старым файлам на новой машине
Виртуализируйте свою машину
Дэвид Хейвард показывает, как воскресить дух старого компьютера с Linux, запустив его виртуальный образ на новом компьютере.
Виртуализация уже несколько лет является другом администратора серверной, так как преимуществ у нее масса. С появлением все более и более мощных компьютеров те полубоги, которые управляют серверами организаций по всему миру, обнаружили, что если виртуализировать некогда огромного зверя в углу кондиционируемой комнаты, это позволит сэкономить место и построить более эффективную модель управления сервером.
Но виртуализация под силу не одним обитателям Олимпа – мы тоже можем насладиться преимуществами виртуализации физического ПК. В нашем случае мы можем захотеть избавиться от старого компьютера, который включается лишь время от времени, но все еще нужен нам из-за каких-то древних программ, которые больше нигде не работают.
Место мы тоже хотим сэкономить – этот компьютер, как бы мы его ни любили, ужасно много его занимает. За то, что мы его уберем, супруги нас зауважают.
И в самом деле, хотя мы можем купить себе более мощный компьютер, с виртуализацией нам не придется уничтожать «дух» старого компьютера, а под духом мы имеем в виду то, что хотя само «железо» навсегда отправится на свалку, операционная система, приложения, настройки и все программы продолжат свою жизнь в виртуальной среде.
Сделать это на удивление просто – с помощью нескольких команд мы создадим образ старого компьютера и преобразуем его в виртуальную машину. Однако, как и с большинством задач в Linux и в компьютерах в целом, есть несколько способов добиться цели. Метод, который мы здесь рассмотрим – лишь один из многих, но также один из самых простых и наиболее эффективных; к тому же в нем используются встроенные команды Linux, а о работе системы нужно знать совсем немного. Если вы в целом представляете, как работает терминал и как в Linux идентифицируются диски, подключаемые к системе, то у вас все получится.
Начинаем
По нашему сценарию, компьютеров два: на одном – Linux Mint 13, на другом – Ubuntu 12.04. Компьютер с Ubuntu PC немного новее, и на нем довольно много оперативной памяти, а именно 8 ГБ, а на компьютере с Mint всего 1 ГБ. Назовем компьютер с Mint 13 ПК1, а с Ubuntu 12.04 – ПК2. Наша задача – создать образ ПК1 и запустить его в виртуальной среде на ПК2. Звучит довольно просто, не правда ли?
Как мы уже говорили, сделать это можно разными способами. Мы возьмем внешний USB-диск размером 500 ГБ и подключим его к ПК1. Затем создадим образ ПК1 и сохраним его в файле на USB-диске для передачи на ПК2. Впрочем, вы можете просто отключить внутренний жесткий диск со своего ПК1, подключить его к ПК2 и запустить команду на одном компьютере, вместо того, чтобы переносить образ между двумя. Каждый из методов полностью нам подходит, хотя, если честно, установка жесткого диска ПК1 на ПК2 резко все ускорила бы; но сейчас мы не торопимся.
Подготовка ПК1
Следующий этап – найти загрузочную копию дистрибутива Linux. Подойдет любой: вот у нас на флэшке есть копия Ubuntu 12.04. Загрузитесь с установочного диска и подключите внешний жесткий диск, затем запустите следующую команду, с целью разобраться в именовании съемных дисков:
lsblk
и нажмите Enter.
Выведется список всех блочных устройств (жестких дисков) в системе, включая разделы для каждого диска. В нашем случае, как показано на рис. 1, у нас есть жесткий диск объемом 232,9 ГБ с именем sda, о трех разделах, и внешний USB-диск sdc с одним разделом вместе с установкой Ubuntu. Запустив команду
sudo fdisk -l
мы получим подробную схему имен устройств и разделов. Но раз мы создаем образ всего жесткого диска, нам нужны только имя устройства диска, будь то hda или sda, и имя подключенного внешнего диска, hdb или sdb. На наших тестовых компьютерах, как показано на рис. 2, жесткий диск, образ которого мы делаем – sda, а внешний жесткий диск, на который запишем образ – sdc.
Наряду с именем устройства, команда lsblk также отобразит точку монтирования, на которой (или в которой) смонтирован внешний диск. На рис. 2 мы видим, что у единственного раздела на внешнем диске sdc точка монтирования /media/2C8069CF80699FD6. Этот путь нам пригодится в следующем разделе, когда мы перейдем к запуску команды создания образа.
Вообще говоря, стоит также отметить, что sda – это главный жесткий диск компьютера, а sdb, sdc и т. д. – остальные физические диски. С другой стороны, hda используется для более старых устройств IDE, но принцип именования hdb, hdc и т. д. остается все тем же. Мы пользуемся установочным диском для того, чтобы операционная система на ПК1 не использовалась и, следовательно, все файлы, заблокированные во время обычной работы ОС, были доступны для создания образа. Образ, кстати, вполне можно сделать и с работающей системы хоста (ПК2), но в подобных случаях пользование установочным диском рекомендуется как правильный подход.
Начинаем создавать образ ПК
Узнав, который диск какой, пора перейти собственно к созданию образа. Для этого мы воспользуемся распространенной и некоторыми редко применяемой командой dd. dd – команда очень мощная, и способна как на всевозможные волшебные преобразования и копирование данных, так и на затирание всего диска; будьте осторожны, пользуясь ею вне нашего урока!
Прежде чем заняться образом диска, создадим на внешнем диске каталог с креативным названием backup. Сюда мы запишем файл с образом.
После этого можно начать создавать образ ПК1, запустив в терминале команду:
sudo dd if=/dev/sda of=/media/2C8069CF80699FD6/backup/mint.img bs=1M
Нажмите Enter и введите свой пароль администратора для запуска команды. Здесь мы просим систему создать образ /dev/sda, жесткого диска ПК1, и скопировать его в файл mint.img в каталоге backup в точке монтирования /media/2C8069CF80699FD6/, которая, как мы выяснили, находится на внешнем диске sdc. Привесок bs=1M означает количество байт, которые считываются, записываются и конвертируются за один шаг.
Значение 1M значительно увеличит производительность при записи; другими словами, это займет меньше времени, но потребует гораздо больше памяти. Так как задача ПК1 – только запустить установочный диск, значения 1M с него хватит.
Как вы видите на рис. 3, процесс создания образа начинается с записи содержимого sda в файл mint.img. Учтите, что хотя мы и добавили параметр 1M, процесс потребует времени, в зависимости от размера диска, и приготовьтесь ждать результатов до нескольких часов.
Однажды мы решили создать образ диска в 2 ТБ, обойдясь без дополнительных ключей, и на это ушло 15 часов. Мы были не в восторге, но, как говорится, век живи – век учись.
Когда процесс создания образа закончится и у вас будут результаты работы процесса dd, отключите внешний диск и выключите ПК1 – его работа пока закончена.
Теперь подключите внешний диск с файлом образа к ПК2 и установите VirtualBox и QEMU, если еще не сделали этого; оба найдутся через менеджеры пакетов большинства дистрибутивов Linux.
Если не получается найти QEMU, поищите AQEMU, это графический интерфейс на Qt4 для управления виртуальными машинами QEMU и KVM.
Следующий этап можно выполнить по-разному. Можно сконвертировать файл образа в виртуальный диск VirtualBox и пользоваться им в самом VirtualBox, а можно запустить этот файл в QEMU.
Способ 1
Сначала сконвертируем образ ПК 1 в формат, который может читать и понимать VirtualBox, поэтому сперва скопируем свежесозданный образ mint.img на ПК2. Конечно, можно было бы работать прямо с внешнего жесткого диска, но с локальных дисков ПК2 все будет работать гораздо надежнее.
Когда файл образа скопируется, зайдите в терминал и наберите следующую команду для преобразования файла mint.img в VDI-файл для VirtualBox:
vboxmanage convertfromraw mint.img –format VDI mint.vdi
Нажмите Enter, и VirtualBox примется конвертировать образ mint.img в формат VDI, используемый как формат виртуального жесткого диска в VirtualBox. Опять же в зависимости от размера образа это может занять некоторое время.
Настройка виртуальной машины
После этого нужно открыть VirtualBox и создать новую виртуальную машину, щелкнув по кнопке New [Создать] в левом верхнем углу окна VirtualBox, затем нажать Next [Далее], указав имя новой виртуальной машины, в данном случае, Mint, и изменив Operating System [Операционную систему] и Version [Версию] на Linux и Ubuntu соответственно – см. рис. 4.
В следующем окне нужно выделить ОЗУ, достаточное для сконвертированного образа; изначально на ПК1 был 1 ГБ, поэтому все значения выше этого пойдут в плюс.
Когда вас попросят выбрать Virtual Hard Disk [Виртуальный жесткий диск], вместо варианта по умолчанию Create new hard disk [Создать новый жесткий диск] щелкните на Use existing hard disk [Использовать существующий жесткий диск] и выберите результат конверсии – файл Mint.VDI.
Наконец, нажмите Create [Создать] в окне со сводкой, и файл образа ПК1 будет использоваться как жесткий диск созданной виртуальной машины.
По сути, все, что мы сделали – дали виртуальной машине имя в VirtualBox и выделили достаточно оперативной памяти для ее запуска. Сама виртуальная машина уже существует в виде созданного и сконвертированного образа ПК1 в файле Mint.VDI.
После создания виртуальной машины подправьте все необходимые параметры, например, объем доступной видеопамяти, и нажмите Start [Запустить] для загрузки образа ПК1 в VirtualBox, как показано на рис. 5.
Способ 2
Этот способ гораздо проще, так как конвертировать ничего не надо. Воспользовавшись ранее установленной QEMU или AQEMU, перейдите в терминал и наберите:
kvm mint.img -m 2047
Образ запустится в виртуальном окружении QEMU, так же, как это было при первом создании образа ПК1, что видно из рис. 6. Однако рабочий стол, соответствующий пользователю на ПК1, не загрузится. Несмотря на это, системой можно пользоваться так же, как и на ПК1, и все ваши приложения будут доступны, как получилось с нашими. Потерялись только параметры рабочего стола. Между прочим, параметр -M также выделяет образу 2 ГБ оперативной памяти; а так как на старом компьютере было всего 1 ГБ, это уже значительное улучшение.
Хотя этот способ быстрее, он довольно ненадежен по части запуска образа. Системы образов часто «падают» и работают очень медленно – но все-таки работают, а немного разобравшись в параметрах командной строки QEMU, вы сможете устранить большинство ошибок. У каждого метода есть свои преимущества, хотя новичкам в виртуализации больше подойдет VirtualBox с его плавным и удобным интерфейсом.
Последний этап – тщательно проверить виртуальный образ в VirtualBox или QEMU. Убедитесь, что все работает как полагается, и что приложения и все специализированные программы запускаются так, как запускались на исходном ПК1.
Если вы убедились, что образ ПК1 работает именно так, как должен, наверное, пора избавить от мучений бедного зверя? Или, как мы, сохранить старые компьютеры, хотя их образы мы уже сделали. Как известно, в глубине души мы скрытые плюшкины и ненавидим саму мысль о том, чтобы выбросить железку, работает она или нет! |