пятница, 4 мая 2012 г.

Ubuntu в виртуальной машине Parallels на BOOTCAMP.

Parallels Desktop позволяет запускать Windows в виртуальной машине с отдельного раздела на жестком диске. То есть, можно перегрузиться в полноценный Windows, а можно загрузить тот же Windows в OSX.

С Linux так просто не получается, Parallels может автоматически загрузить Ubuntu в виртуальную машину, но самостоятельно подцеплять Ubuntu с отдельного раздела (Boot Camp) не хочет. В принципе, заставить Parallels "увидеть" и запустить Linux можно, это не сложно. Но для нормальной работы в режиме виртуальной машины крайне желательно установить Parallels Tools (кстати, сейчас есть бета для 12.04).

Parallels Tools ставится замечательно, но, к сожалению, загрузить Ubuntu напрямую, не через  ВМ после этого не получатеся. Возникает две ошибки.

Первая - система не может примонтировать /medis/psf - это расшаренные в Parallels папки макоси. Ничего страшного, жмем S и едем дальше.

Вторая - ....dkms/prl_pv.ko No such device. Эта ошибка возникает из-за кастомного /etc/X11/xorg.conf, котороый использует Parallels.

Есть несложный способ эту вторую ошибку обойти (можно и первую, но, она не критичная, и возиться лениво)


Перед установкой Parallels Tools бэкапим свой xorg.conf:
sudo cp /etc/X11/xorg.conf /etc/X11/native-xorg.conf

Если файла xorg.conf нет, и все работает, тем лучше :-) Потом ставим Parallels Tools и где-нибудь размещаем вот такой простенький скрипт:

#! /bin/bash
cd /etc/X11
mount | grep /psf > /dev/null
if [ $? == 0 ]
then
echo Parallels booted, selecting relevant xorg file
cp parallels-xorg.conf xorg.conf
else
echo Native boot, selecting relevant xorg file
cp native-xorg.conf xorg.conf
fi

Скрипт этот не мой, я его где-то спер, где - не помню, но спасибо доброму человеку :-)

Собственно, это почти все. Делаем скрипт исполняемым, называем его как-нибудь, например, detect-xorg и запускаем до старта иксов, для чего нужно сделать


cd /etc/rc2.d
sudo ln -s /home/username/detect-xorg S12detect-xorg #Укажите свой путь

Вот теперь точно все. Так как человек я ленивый, и проделывать это руками не хочется, я написал небольшой скрипт, который делает это все сам: parallels-detect.sh

Да, единственное, что нужно сделать ДО запуска скрипта: sudo cp /etc/X11/xorg.conf /etc/X11/native-xorg.conf

Я просто не уверен, что Parallels при установке не сносит существующий xorg (по идее, не должен), и не знаю, куда он его сохраняет. У меня все Ubuntu грузится без xorg.conf, а проверять, сами понимаете, лень :-)

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

Отправить комментарий