Преамбула
Я — «виндузятник», старательно стремящийся приобщиться к миру Linux. Моей главной целью было «вживую» увидеть KDE4.*, для чего и был выбран дистрибутив openSUSE 11.3. Собственно, выбирать было особо не из чего, т.к. такие объемы данных я могу получать только из DVD журнала «Хакер», а все другие дистры, которые у меня есть, оказались с Gnome.
Пару месяцев назад взамен давно утраченному ноутбуку я купил нетбук, естественно, без DVD-привода. И это особо не напрягало: Windows я установил с помощью флэш-драйва на 4 гибайта, а файлы просто копирую с другого ноутбука через кросс-кабель.
Но тут пришло время Linux…
Много fail'ов и один success
Что ж… Копируя на свой жесткий файл opensuse-i386-11.3.iso я даже не представлял, сколько часов я потрачу на установку «хамелеона».
Естественно, первым в дело пошел практически самый простой способ:
Flash-drive + ISO
Вооружившись своим боевым, видавшим десятки имэйджей, тысячи файлов, пару перепрошивок контроллера, и неимоверно глючащим драйвом Kingston DT100 и UNetbootin, я принялся сажать хамелеона на чип.
Образ не влез на диск. Сказать больше нечего. Fail.
VirtualBox + реальный раздел
В журнале «Хакер» был опубликован якобы весьма распространенный способ установки разных ОС из-под Windows: подключение реального жесткого диска (или отдельного раздела) к виртуальной машинке.
Итак, что нам нужно:
- переходим в папку с VirtualBox и командуем:
VBoxManage internalcommands createrawvmdk -filename d:\realhd.vmdk -rawdisk \\.\PhysicalDrive0
- создаем новую ВМ. выделяя ей побольше ресурсов, и подключаем полученный файл
d:\realhd.vmdk
как жесткий диск; - подключаем имеющийся у нас образ с дистрибутивом;
- запускаем.
Работает. Но такое ощущение сохранилось ровно до тех пор, пока я не вспомнил, что внутри моего калькулятор стоит Atom, пусть и N550. Перемещение курсора — с огромной задержкой, про реакцию на нажатия молчу.
В итоге, всеми правдами и неправдами установка доходит до разбивки диска на разделы и их монтирования. Вот он и затык. До этого момента я доходил и проваливался на нем 3 или 4 раза:
- ошибка монтирования разделов NTFS;
- проверка предыдущего;
- отменил монтирование. Получил ошибку при разрезании диска.
В общем, я стал грешить на ВиртуалБокс и кривое его подключение к физическому диску (а ведь зря, и дальнейшие эксперименты это подтвердили).
На сим терпение иссякло, диск лег на полочку, образ отправился в корзинку, я полез при«ман»ивать более продуктивные способы реализации своих коварных планов… Ах, да: fail.
GRUB4DOS + ISO
Перелопачивая папку с дистрибутивами различных программ, я набрел на WinSetup. Но речь сейчас не о «сетупе», а о волшебной штуке, которая является для него служебной — GRUB4DOS.
Я уже как-то читал, что он способен напрямую загружать ОС из ISO, но первые попытки успехом не увенчались — а перезагружаться каждый раз было тяжко (тогда и ВМ у меня не подключалась к HD, и о командной строке в Grub я не знал). Применим же более научный метод — чтение темплейтов конфигов.
Но сперва, используя
grubinst_gui.exe
установим загрузчик на диск.Дабы не сильно вмешиваться в жизнь ОСей, у меня заранее был заготовлен стомегабайтный раздел (как оказалось, так в последствии меньше возни и больше вкусных плюшек).
Итак:
- выбираем жесткий диск;
- обновляем Part List с помощью кнопки «Refresh», в заполнившемся списке выбираем необходимый раздел, ориентируясь на ФС и размер тома.
- cтавим галку «Grub 2» и устанавливаем («Install»);
- копируем файлы груба в корень истерзанного раздела и принимаемся за меню, в моем случае добавились такие пункты:
# Так как Груб встал на первый раздел (hd0,0) и при установке не затер
# собственный бутлоадер 7ки, можно указывать просто загрузочнй диск.
title Windows 7
rootnoverify (hd0,1)
chainloader +1
# Мой образ лежит по дороге "d:\sys\Images\openSUSE11.3.iso"
# Не забываем заменит Win-слэши (обратные) на *nix-слэши (прямые)
title Install openSUSE 11.3
map (hd0,2)/sys/Images/openSUSE11.3.iso (hd32)
map --hook
chainloader (hd32)
Еще один важный момент: образ должен быть contiguous, без дыр или, проще говоря, дефрагментирован. Воспользуемся советом Груба и призовем утилиту contig из комплекта Sysinternals:
contig d:\sys\Images\*
Перезагружаемся, выбираем второй пункт меню. Установщик. Текстовый. Просит вставить диск за нумеромъ первымъ. Сыграем в дурачка и нажмем «Отмена». Настройки… подсунем-ка ему исошник в качестве репозитория… Не вышло. Ну и ладно. Fail.
Перекур и обдумывание
Слышу, слышу свисты маститых и не очень линуксоидов и улюлюканья гуру командной строки. Крики «Погугли!»…
Конечно можно было бы, но… глубокая Адыгея, модем «Билайн», скорость 32Kb/s… Лучше уж научный тык.
В общем, путем тыканья пальцем в экран и мозг образовались дополнительные методы.
Flash-drive + урезанный ISO
Возвращаюсь к первому пункту, беру ISO и натравливаю на него UltraISO — да только rpm-щепки летят. Образ «худеет» на полгигабайта и теперь вполне помещается на флешку.
На этот раз диск я писал с помощью WinSetup (подробная инструкция прилагается к дистру), т.к. запись, сделанная UNetbootin «не заиграла».
Перезагружаемся. И хамелеоновский YaST отсылает нас к 4-му пункту, а именно — текстовый установщик и ни намека на подключенный дистрибутив. Fail.
GRUB4DOS + ISO + распакованный образ на ntfs-разделе (надежда на сукцесс)
Переходим к следующей вехе извращений — распакованные образы.
Раз уж текстовый установщик позволяет подключить к себе папку, воспользуемся этим.
- с помощью архиватора (7Zip, WinRAR) или путем монтирования в виртуальный CD-драйв извлечем содержимое диска в папку на HDD (у меня это NTFS-раздел), например «d:\suse»;
- добьемся появления текстового загрузчика — я загружался с помощью 3-го способа.
- запускаем виртуалку и пробуем. Лицо расплывается в довольной улыбке — после текстового сразу загрузился графический инсталлятор, даже без вопросов (ну почему-у меня это не насторожило?),- пальцы крэшат ВМ и перезагружают бедный нетбук.
- загружаем наш инсталлер и улыбка потихоньку сползает: все тот же вопрос «Где диск?», на указанную папку не реагирует. Самый позорный фэйл.
А все потому что кое-кто
GRUB4DOS + ISO + распакованный образ на ext2-разделе (новая надежда)
Терпение на исходе, мозг закипает. Закипает и не знает, что успех так близок…
На меня, по всей видимости, спустилось озарение, и догадался положить дистрибутив на linux-раздел. Но и тут все оказалось не так просто.
PartedMagic отказался запускаться. По всем вышеизложенным причинам.
Хорошо, что в VirtalBox у меня уже стояла Ubuntu. В принципе, не важно, какой дистриб, лишь бы в нем можно было сконфигурировать разделы.
- подключаем к убунту наш реально-виртуальный диск
realhd.vmdk
; - делим нашу неразмеченную область на дополнительные разделы — я не заморачивался и сделал два — для / и для swap. Форматируем в ext4;
- монтируем наш будущий корневой каталог (пусть будет
/media/suse
); - подключаем ISO-образ и копируем содержимое в папку
/media/suse/suse_inst/
; - Reset, ибо на горячий рестарт сил уже нет. Шутка, нельзя так делать
:); - делаем все так, как и в предыдущие разы — текстовый инсталлер -> папка (теперь уже на ext4, а не на NTFS) -> появился графический инсталлятор -> соглашение и первичная настройка -> разметка диска, здесь нужно от всего отказаться. выбрав ручную настройку и примонтировать наши разделы. Swap, естественно, подцепился без проблем. А вот рут… Оказалось, что нельзя монтировать и, соответственно, устанавливать на диск, где лежат установочные файлы — чтобы случайно их не повредить. Вот так-то. Fail.
GRUB4DOS + распакованный ISO на отдельном ext2-разделе
Делаем все тоже самое, что и в предыдущей попытке, кроме пунктов 2,3,4 — мы должны создать еще один дополнительный раздел (я сделал ext2), на который помещаем дистрибутив, который и указываем при установке как репозиторий.
Success.
Дополнительные косячки
- Очень внимательно следите за тем, что предлагает сделать openSUSE в автоматическом режиме. У меня, например, он захотел затереть все существующие разделы и заюзать весь диск под свои нужды (хотя под виртуалкой такого не было).
- Хамелеонка не смог создать в существующем Грубе записи для себя, поэтому я вообще не стал ставить загрузчик для него. Чтобы сделать также, нужно записать всю инфу, которую он хочет поместить в лоадер — ядра и их параметры, а после установки присоединить их к Grub. У меня вышло так:
title openSUSE 11.3 Desktop
kernel (hd0,6)/boot/vmlinuz-2.6.34-12-desktop root=/dev/disk/by-id/ata-SAMSUNG_HM321HI_S26VJ9FB404025-part7 resume=/dev/disk/by-id/ata-SAMSUNG_HM321HI_S26VJ9FB404025-part5 splash=silent quiet showopts
initrd (hd0,6)/boot/initrd-2.6.34-12-desktop
title Xen
kernel (hd0,6)/boot/vmlinuz-2.6.34-12-xen root=/dev/disk/by-id/ata-SAMSUNG_HM321HI_S26VJ9FB404025-part7 resume=/dev/disk/by-id/ata-SAMSUNG_HM321HI_S26VJ9FB404025-part5 splash=silent quiet showopts
initrd (hd0,6)/boot/initrd-2.6.34-12-xen
title openSUSE 11.3 Failsafe
kernel (hd0,6)/boot/vmlinuz root=/dev/disk/by-id/ata-SAMSUNG_HM321HI_S26VJ9FB404025-part7 showopts apm=off noresume nosmp maxcpus=0 edd=off powersaved=off nohz=off highres=off processor.max_cstate=1 nomodeset x11failsafe
initrd (hd0,6)/boot/initrd
- при установке не монтируйте NTFS-разделы — у меня это приводило к ошибке.
Заключение
Вот такими тернистыми путями и стал я обладателем openSUSE 11.3. Вопросов было много, появилось же еще больше. Но это уже совсем другая история…
P.S. Прошу прощения за отсутствие скриншотов, но я не смог пройти через этот ад еще раз.