<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.linuxformat.ru/wiki/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://wiki.linuxformat.ru/wiki/index.php?action=history&amp;feed=atom&amp;title=LXF84%3AQEMU</id>
		<title>LXF84:QEMU - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.linuxformat.ru/wiki/index.php?action=history&amp;feed=atom&amp;title=LXF84%3AQEMU"/>
		<link rel="alternate" type="text/html" href="http://wiki.linuxformat.ru/wiki/index.php?title=LXF84:QEMU&amp;action=history"/>
		<updated>2026-05-13T00:16:36Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.19.20+dfsg-0+deb7u3</generator>

	<entry>
		<id>http://wiki.linuxformat.ru/wiki/index.php?title=LXF84:QEMU&amp;diff=11640&amp;oldid=prev</id>
		<title>Romanakabm: /* ''QEMU'': руководство к быстрому старту */</title>
		<link rel="alternate" type="text/html" href="http://wiki.linuxformat.ru/wiki/index.php?title=LXF84:QEMU&amp;diff=11640&amp;oldid=prev"/>
				<updated>2011-04-02T20:49:27Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;&amp;#039;&amp;#039;QEMU&amp;#039;&amp;#039;: руководство к быстрому старту&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Предыдущая&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Версия 20:49, 2 апреля 2011&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 22:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 22:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Что может быть проще? После того, как выполнится эта команда,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Что может быть проще? После того, как выполнится эта команда,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;перед вами откроется окно ''QEMU'', играющее роль дисплея &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;виртуаль-&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;перед вами откроется окно ''QEMU'', играющее роль дисплея &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;виртуальной &lt;/ins&gt;машины. Загруженный в QEMU LiveCD Games Knoppix представлен&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;ной &lt;/del&gt;машины. Загруженный в QEMU LiveCD Games Knoppix представлен&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;на рис. 1.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;на рис. 1.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Romanakabm</name></author>	</entry>

	<entry>
		<id>http://wiki.linuxformat.ru/wiki/index.php?title=LXF84:QEMU&amp;diff=6697&amp;oldid=prev</id>
		<title>Crazy Rebel: викификация, оформление</title>
		<link rel="alternate" type="text/html" href="http://wiki.linuxformat.ru/wiki/index.php?title=LXF84:QEMU&amp;diff=6697&amp;oldid=prev"/>
				<updated>2009-01-29T12:23:10Z</updated>
		
		<summary type="html">&lt;p&gt;викификация, оформление&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;:  '''''QEMU'''''  Виртуализация без затрат на оборудование&lt;br /&gt;
&lt;br /&gt;
=''QEMU'': руководство к быстрому старту=&lt;br /&gt;
&lt;br /&gt;
: Пока еще не купили один из новых процессоров AMD или Intel? Не печальтесь – ''Xen'' не единственное средство виртуализации, доступное в мире Open Source. Пол Хадсон передает микрофон '''Андрею Дубравину'''.&lt;br /&gt;
&lt;br /&gt;
Проверяя очередной раз свою электронную почту, я обнаружил письмо с сообщением об ошибке в разрабатываемом мной  приложении. Я стал изучать полученную информацию и сделал вывод, что в моей рабочей ОС данной ошибки не наблюдалось. В чем же дело? Немного поразмыслив, я пришел к следующему выводу: в сообщении было указано, что мой респондент использовал Debian 3.1; я использовал эту же ОС, но с обновленными библиотеками. Можно было воспользоваться информацией об ошибке и исправить её, надеясь на то, что я все сделаю правильно и эта ошибка больше на появится. Кроме того, можно было послать новую версию программы пользователю, чтобы тот проверил её на своей системе, но согласится ли он? Могли обнаружиться и другие ошибки, связанные с несовпадением версий библиотек. Что же делать? Я принял решение поставить ещё одну ОС. Но мне не хотелось изменять таблицу разделов своего жесткого диска: это может повредить установленным ОС, да и кто знает, сколько их еще мне придется поставить? Я решил, что лучшим выходом будет воспользоваться виртуализацией, а именно – ''QEMU''. Эта программа является свободной и распространяется с исходными текстами, исключение составляет модуль ядра '''kqemu''' (также известный как '''QEMU Accelerator'''), который используется для повышения скорости работы. Он доступен только в двоичном виде, его можно бесплатно использовать, но не распространять.&lt;br /&gt;
&lt;br /&gt;
Ну что же, приступим! Для начала необходимо установить ''QEMU''. Найти последнюю версию программы и другую информацию, касающуюся ''QEMU'' можно по адресу http://fabrice.bellard.free.fr/qemu/. Там&lt;br /&gt;
же можно найти и модуль ядра '''kqemu'''. Этот модуль заметно повышает производительность, поэтому я советую его поставить, хотя ''QEMU'' будет работать и без него. В своих экспериментах я использовал ОС Debian 3.1 и ''QEMU'' версии 0.8.2.&lt;br /&gt;
&lt;br /&gt;
Модуль '''kqemu''' может работать в двух режимах: '''for user code''' и '''for user and kernel code'''. Первый режим устанавливается по умолчанию, для установки второго режима необходимо использовать ключ '''-kernel-kqemu'''. Второй режим является более быстрым, но его использование может привести к некорректной работе некоторых ОС.&lt;br /&gt;
&lt;br /&gt;
Что касается оперативной памяти, выделяемой гостевой ОС, то по умолчанию ''QEMU'' использует '''128 Мб'''. Меня это число вполне устроило, но если вы хотите поменять это значение, то можете воспользоваться&lt;br /&gt;
опцией '''-m''', в качестве параметра этой опции передается размер ОЗУ в мегабайтах.&lt;br /&gt;
&lt;br /&gt;
При дальнейшем изложении, в примерах команд, опции '''-kernel-kqemu''' и '''-m''' указываться не будут. Если в этом возникнет необходимость, вы можете добавить их самостоятельно.&lt;br /&gt;
&lt;br /&gt;
Для начала попробуем запустить какой нибудь LiveCD прямо из текущей ОС. В качестве оного можно взять один из дисков LXF. Команда для загрузки виртуальной машины прямо с CD выглядит следующим образом:&lt;br /&gt;
&lt;br /&gt;
 qemu -cdrom /dev/cdrom&lt;br /&gt;
&lt;br /&gt;
Что может быть проще? После того, как выполнится эта команда,&lt;br /&gt;
перед вами откроется окно ''QEMU'', играющее роль дисплея виртуаль-&lt;br /&gt;
ной машины. Загруженный в QEMU LiveCD Games Knoppix представлен&lt;br /&gt;
на рис. 1.&lt;br /&gt;
&lt;br /&gt;
[[Изображение:LXF84_qemu1.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''Рис. 1. Загружаем LiveCD Games Knoppix без отрыва от производства.'''&lt;br /&gt;
&lt;br /&gt;
Теперь мы можем изучать LiveCD и при этом слушать свою любимую музыку. Что же дальше? Загружаться с установочного CD мы научились, но нам еще необходимо выделить место для самой ОС. В&lt;br /&gt;
нашем случае ОС будет устанавливаться в образ диска. Существует&lt;br /&gt;
несколько форматов для хранения образов, которые поддерживает&lt;br /&gt;
программа ''QEMU'', мы воспользуемся самым распространённым – '''raw'''.&lt;br /&gt;
&lt;br /&gt;
Мне известно два способа создать пустой образ: с помощью утилиты ''qemu-img'' из состава ''QEMU'' и вручную, посредством утилиты ''dd''. С использованием ''qemu-img'' можно создать образы любых форматов,&lt;br /&gt;
поддерживаемых ''QEMU'', утилита ''dd'' позволяет создать только образы формата ''raw''. Если быть более точным, то с помощью ''dd'' можно создать заполненный нулями файл, который и является пустым ''raw''-образом. Разобраться с утилитой ''qemu-img'' не составляет труда, мы же,&lt;br /&gt;
чтобы заодно узнать побольше о Linux, воспользуемся утилитой ''dd''.&lt;br /&gt;
&lt;br /&gt;
Перед тем, как создать образ, необходимо определить его максимальный размер. Размер выбирается с учетом места, занимаемого установленной ОС, размера swap-раздела (если он используется) и объема свободного места, необходимого вам для работы. Я выбрал размер равным 3 Гб. Формат raw не поддерживает сжатие, но если создаваемый образ находится на разделе '''ext2/ext3''' (или другой ФС, поддерживающей «дыры» – '''holes'''), то «сжатие» будет производиться автоматически драйвером файловой системы (за счет преобразования длинных последовательностей нулей в более короткие), и размер образа будет занимать меньше, чем 3 Гб. Для того, чтобы посмотреть реальный размер, занимаемый файлом, можно выполнить команду ''ls -ls''.&lt;br /&gt;
&lt;br /&gt;
Создание нового образа выполняется командой:&lt;br /&gt;
&lt;br /&gt;
 dd if=/dev/zero of=&amp;lt;путь_к_файлу_образа&amp;gt; count=3G&lt;br /&gt;
&lt;br /&gt;
Все просто: содержимое устройства '''/dev/zero''' (а это одни нули) копируется в файл образа, при этом количество копируемых данных ограничено тремя гигабайтами.&lt;br /&gt;
&lt;br /&gt;
Теперь, наконец, можно приступать к установке самой ОС. Для этого можно воспользоваться следующей командой:&lt;br /&gt;
&lt;br /&gt;
 qemu -cdrom /dev/cdrom -hda &amp;lt;путь_к_файлу_образа&amp;gt; -boot d&lt;br /&gt;
&lt;br /&gt;
Опция '''boot''' позволяет изменить устройство, с которого производится загрузка. По умолчанию это '''hda''' (если устройства '''hda''' нет, то загрузка будет производиться с устройства '''cdrom'''), для загрузки с '''cdrom''' необходимо указать опцию '''boot''' с параметром '''d'''. Теперь можно загружаться в виртуальную машину и приступать к установке ОС. Созданный нами образ диска не содержит таблицы разделов, поэтому в процессе&lt;br /&gt;
установки ОС необходимо осуществить разбиение диска. В нашем случае создание разделов осуществляется через инсталлятор Debian. Далее установка ОС производится стандартным образом.&lt;br /&gt;
&lt;br /&gt;
После того, как первый этап установки будет пройден, вас попросят перезагрузиться. При этом необходимо учесть, что повторная загрузка должна выполняться уже с устройства '''hda''', а не с '''cdrom''', как в начале&lt;br /&gt;
установки. Команда для повторной загрузки будет следующей:&lt;br /&gt;
&lt;br /&gt;
 qemu -cdrom /dev/cdrom -hda &amp;lt;путь_к_файлу_образа&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Как видно, исчезла опция '''boot''', так что теперь загрузка будет производиться с устройства '''hda'''. После повторной загрузки можно закончить установку системы.&lt;br /&gt;
&lt;br /&gt;
После того, как система будет установлена, загрузите её можно с помощью команды:&lt;br /&gt;
&lt;br /&gt;
 qemu -hda &amp;lt;путь_к_файлу_образа&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Наконец, можно приступить к настоящей работе в установленной ОС! На рис. 2 показана загруженная в QEMU ОС Debian 3.1 с рабочим столом GNOME.&lt;br /&gt;
&lt;br /&gt;
[[Изображение:LXF84_qemu2.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''Рис. 2. Debian 3.1 в QEMU.'''&lt;br /&gt;
&lt;br /&gt;
Но это еще не все! Программа ''QEMU'' предоставляет возможность управлять своей работой из специальной консоли. Для переключения в консоль команд нужно воспользоваться комбинацией клавиш '''Ctrl-Alt-2'''.&lt;br /&gt;
С ее помощью можно подключить новое устройство, когда ОС уже загружена (например, для подключения устройства '''cdrom''' необходимо ввести ''change cdrom /dev/cdrom''), сохранить состояние виртуальной&lt;br /&gt;
машины в файл (попробуйте ''savevm /debain.state''), загрузить состояние виртуальной машины (команда ''loadvm'') и многое другое. Для получение более подробной информации по консоли ''QEMU'' воспользуйтесь командой '''help'''.&lt;br /&gt;
&lt;br /&gt;
''QEMU'' умеет значительно больше, чем может показаться на первый взгляд – мы даже не упомянули о таких возможностях, как эмуляция сети, загрузка ядра Linux, подключение USB-устройств и о многом другом. Думаю, с этим вы справитесь и без меня, ведь главное – дать отправную точку. '''LXF'''&lt;br /&gt;
&lt;br /&gt;
==Почему RAW?==&lt;br /&gt;
&lt;br /&gt;
QEMU поддерживает большое количество форматов дисковых образов, в том числе, '''cow''' (User Mode Linux), '''vmdk''' (VMware 3/4), '''cloop''' (сжатый loop-файл, обычно используется различными LiveCD) и '''qcow''' (родной формат QEMU). Многие из них предоставляют ряд полезных функций, например, реальное сжатие данных, динамическое изменение размера, шифрование. Почему же я порекомендовал вам именно '''raw'''? Ответ прост как и сам формат – Linux умеет работать с ним, как с обычным дисковым разделом.&lt;br /&gt;
&lt;br /&gt;
Для того, чтобы прочитать таблицу разделов файла-образа, дайте команду:&lt;br /&gt;
&lt;br /&gt;
 /sbin/fdisk -l -u &amp;lt;путь_к_файлу_образа&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Вы увидите что-то вроде:&lt;br /&gt;
&lt;br /&gt;
 ...&lt;br /&gt;
 255 heads, 63 sectors/track, 0 cylinders, total 0 sectors&lt;br /&gt;
 Units = sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Device             Boot    Start      End      Blocks Id System&lt;br /&gt;
 &amp;lt;путь_к_файлу_образа&amp;gt;1 *             63 5542424 2771181 83 Linux&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Разделы образа можно смонтировать командой ''mount'':&lt;br /&gt;
&lt;br /&gt;
 mount -o loop,offset=32256 -t ext3 &amp;lt;путь_к_файлу_образа&amp;gt; /mnt/iso&lt;br /&gt;
&lt;br /&gt;
Число '''32256''' получается путем умножения размера сектора (в нашем случае – 512 байт) на адрес начала раздела (параметр Start в выводе ''fdisk''; в нашем случае это 63). После того, как диск будет примонтирован, вы можете получить доступ к его содержимому, при условии, что файловая система, используемая гостевой ОС, поддерживается ядром Linux хотя бы на чтение.&lt;/div&gt;</summary>
		<author><name>Crazy Rebel</name></author>	</entry>

	</feed>