четверг, 11 сентября 2008 г.

Устанавливаем VirtualBox

VirtualBox - одна из лучших программ виртуализации. Существуют версии VirtualBox под все распостраненные операционные системы. Что же это такое, виртуализация, и зачем она может быть нужна? Виртуализация - это эмуляция в программной среде ( в данном случае в среде пакета VirtualBox ) физического комьютера. На такую виртуальную машину можно установить любую операционную систему, набор программ для нее и она будет считать себя единственной хозяйкой на компе, не имея влияния на "внешний мир" и даже не зная о нем. Над этой системой (называемой "гостевой")можно издеваться как угодно, проводить различные эксперименты, итп. не боясь повредить основной операционной системе ("хост"-системе). Гостевую систему в любой момент можно стереть и начать все заново.
Программа VirtualBox была создана компанией Innotek с использованием исходного кода другого пакета виртуализации - Qemu. Существует две версии VirtualBox - свободная (OSE, англ. Open Source Edition), выпущенная под GNU GPL, и проприетарная, различающиеся по функциональности, полнофункциональная проприетарная версия для личного использования распространяется бесплатно.
В феврале 2008 Innotek был приобретен компанией Sun Microsystems, модель распространения VirtualBox при этом не изменилась. В стандартных репозиториях имеется VirtualBox-OSE, но эта версия обычно старая и сильно урезана по возможностям (в частности, в ней нет поддержки USB, других "вкусностей", таких как режим интегации дисплея, автоинтеграция мыши при переводе курсора на гостевую ОС и многих других), поэтому мы установим проприетарную версию VirtualBox с официального сайта. В инете есть многочисленные How-To по установке VirtualBox, все они почему-то предлагают скачать с сайта разработчика deb-пакет и установить его. Мы же, в соответствии с идеологией Debian пойдем другим, более правильным путем:
Итак, идем Система - Администрирование - Источники приложений - По сторонних производителей, жмем Добавить, и добавляем строку (для Ubuntu 8.04 Hardy Heron):

deb http://download.virtualbox.org/virtualbox/debian hardy non-free

Добавляем ключ репозитория, в консоли:

wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add

- и затем как обычно:

sudo apt-get update
sudo apt-get install virtualbox


После того, как VirtualBox установился, добавляем себя в группу vboxusers:

sudo adduser <ваш login> vboxusers

перезагружаемся, идем Приложения - Системеые - Sun xVM VirtualBox, Во время первого запуска появится Регистрационная форма (Innotek это нужно только для статистики). Можете ее заполнить, а можете и не заполнять :), но тогда она у вас будет появляться постоянно при запуске виртуальной машины. Создаем новую машину, выбираем тип устанавливаемой ОС, дисковое пространство (лучше оставить так как предлагается, расширять динамически по реальной потребности) устанавливаем желаемую систему (я установил XP). Все, как это принято называть "интуитивно понятно" ;). Если после установки винды кириллица в некоторых программах и в именах файлов отображается кракозябрами, идем (в винде) Control panel - Regional and Language Options - Advanced — Ставим русский язык для non-unicode programs. Далее, в меню вновь созданной виртуальной машины запускаем Устройства — установить дополнения гостевой ОС, в папке «My computer» гостевой винды появляется линк на установку VBOXADDITIONS (В виде CD-диска), устанавливаем дополнения. Теперь идем в меню «Машина» окна гостевой ОС, включаем интеграцию мыши, проверяем режимы «Поноэкранный режим», «Режим интеграции дисплея» - согласитесь, отлично?! Особенно меня впечатлил режим интеграции дисплея - Панель задач гостевой Windows частично накладывается на панель задач Ubuntu, можно запустить приложения из обеих систем, и они прекрасно сосуществуют рядышком на рабочем столе Ubuntu, курсор мыши "прозрачно" переходит из Ubuntu в Windows и обратно, можно управлять приложениями так, как будто они принадлежат одной, а не двем системам — красота.



(На скриншоте не видна панель задач Виндовс, перехватчик PrintScreen Ubuntu ее не захватывает при сохранении скриншота - но она там есть :))





понедельник, 9 июня 2008 г.

Запускаем из Ubuntu qip установленный в Windows

Организуем запуск интернет-пейджера qip, установленного в Windows из Ubuntu. Это очень удобно тем, кто (как я) имеет на компьютере обе системы и использует их попеременно - сохраняется история сообщений, настройки qip, итд. Сделать такое не просто, а очень просто. Рецепт проверен на следующих версиях софта: Ubuntu 8.04 русская, qip 8040 (установленный в Windows), wine-1.0-rc3 из репозитория разработчиков (помните, мы подключали репозиторий разработчиков wine в источники приложений) . Создаем ярлычок - правый щелчек на экране - создать кнопку запуска. Прописываем Имя - qip, Команда:

wine '/media/disk/Program Files/qip/qip.exe' /oldgif

Путь запуска прописан исходя из предположения, что в Windows qip находится в c:\Program Files\qip\qip.exe ,куда он ставится по умолчанию.



Готово! Никаких извратов типа установки виндовых шрифтов итп. - не нужно, все работает "из коробки". Не забываем, что в Ubuntu 8.04 ntfs диск не монтируется автоматом при запуке системы, как это было в 7.10, а перед запуском  qip виндовый раздел разумеется нужно примонтировать. Можно конечно прописать его монтирование в fstab, но я не стал этого делать. Разработчики Ubuntu отказались от автомонтирования разделов ntfs по "концептуальным" соображениям: Windows и Linux хотя и находятся на одном диске, не должны без явного на то указания "иметь доступ" друг к другу. В 8.04 виндовый диск монтируется при первом обращении к нему из Gnome:
например: Переход - Диск 40,0 Гб - после чего ярлычок диска появляется на рабочем столе, он смонтирован и можно запускать qip.

суббота, 7 июня 2008 г.

Устанавливаем ряд небольших полезных программ и полностью русифицируем систему.

midnight commander - в линуксе аналог досовского Norton commander и виндового FAR.
thunderbird - почтовый клиент, на мой взгляд более легкий и удобный чем по-умолчанию стоящий в Ubuntu Evolution.
d4x - одна из лучших многопоточных качалок, с веселым интерфейсом, хотя и глючновата :)
wine - позволит нам запускать многие виндовые приложения в Ubuntu.
opera - я привык к Опере, в винде это мой основной браузер. К сожалению, в Ubuntu шрифты в Опере выглядят просто ужасно, и решить эту проблему мне пока не удалось.

Устанавливаем все единой командой, перечисляя пакеты через пробел:

sudo apt-get install mc thunderbird d4x wine opera

Конечно, у вас будет свой набор любимых приложений. Я же буду возвращаться и дополнять этот список по мере того, как буду обнаруживать новые полезные пакеты.
Мы, конечно заметили, что интерфейс у нас смешанный, русско-английский. Теперь, когда необходимый софт установлен самое время окончательно русифицировать систему - весь установленный софт тоже заодно русифицируется (если для него в принципе существуют русские языковые пакеты). Вопрос: А почему разработчики Ubuntu сразу не включили локализованные языковые пакеты в дистрибутив? Ответ: из-за недостатка места на установочном CD. Для стольких языков пакеты просто не влезли.
Идем Система - Администрирование - Локализации. Стамим галочку напротив русского языка в списке (у меня эти чекбоксы, где ставят галочки были не видны, расширил мышкой окно вправо), применяем.

среда, 4 июня 2008 г.

Устанавливаем проприетарный видеодрайвер ATI

У тех, кто только начинает изучать Linux может возникнуть справедливый вопрос: А что это такое вообще, проприетарный драйвер? Зачем он нужен? А какой тогда драйвер ставится при установке, видео карта то работает? А что, разработчики не могли сделать чтобы проприетарный драйвер стоял сразу после установки системы?
Попробуем разобраться. Система Ubuntu задумывалась создавалась в соответствии с определенной философией. Философия эта, в том числе, предполагает использование свободного программного обеспечения с открытым исходным кодом. И видео драйвер "vesa", с которым изначально разворачивается Ubuntu полностью соответствует этим стандартам, он распространяется свободно и имеет открытый исходный код. Но фирмы-производители видео чипов держат в секрете спецификации на свои изделия, может быть опасаясь что технологические секреты узнают конкуренты, или еще по каким причинам. И поэтому свободное сообщество, не располагая спецификациями не может написать драйвер использующий все возможности видео чипа, такие как 3D ускорение, оверлейный вывод изображения итд. Но это могут сделать программисты работающие в фирмах-производителях видео чипов - они располагают естественно всеми необходимыми данными. И такие драйвера (называемые "проприетарными", "restricted", поставляются "как есть" и исходный код их закрыт) обладают большими возможностями чем свободные "vesa", но одновременно более глючны, ведь усилия программистов ATI большей частью направлены на отладку драйверов под Windows. Будем надеяться, что эта ситуация со временем изменится - Линукс с каждым годом отвоевывает место на десктопах у Microsoft и Apple, и скоро игнорировать это будет невозможно.
Итак, начинаем. System - Администрирование - Hardware drivers. Ставим галочку. Проприетарный драйвер будет скачан из интернета, потребуется перезагрузка. Если у вас к компьютеру подключен только один монитор, на этом установка скорее всего завершится, и может быть потребуется только подкорректировать только частоту развертки в System - Параметры - разрешение экрана. Моим же глазам предстало: ноутбучный экран (1280х800) показывал все нормально. На внешнем мониторе была та же самая картинка, только растянутая по вертикали с 800 до 1024 точек. Я принялся за изучение файла помощи к конфигурационной утилите для проприетарных драйверов ATI:

aticonfig --help

(хелп очень подробен, с примерами. Богатство возможностей поражает, сделать можно действительно все что угодно) а так же за поиски в гугле. В конечном итоге остановился (пока) на таком варианте:

sudo aticonfig --initial=dual-head --desktop-setup=clone --mode2=1280x1024,1280x800

Здесь: инициируем базовую конфигурацию для двухмониторной системы. Режим установки дисплея "clone" ( два экрана, одно изображение. Экраны в общем случае могут иметь разные разрешения и частоту вертикальной развертки). Для второго дисплея допустимы режимы 1280x1024,1280x800
Потом пару раз перегрузил иксы нажатием Ctrl+Alt+BackSpace, и установил 60 Гц для внешнего монитора в System - Параметры - разрешение экрана.
Результат: На оба монитора идет одинаковое изображение размером 1280х1024, внешний, естественно показывает его 1:1, встроенный ноутбучный "кусок" размером 1280х800, и двигая мышку к верней и нижней границе экрана можно этот "кусок" "скроллировать". Пока меня это устроило, будет настроение, поэкспериментирую еще.

Подключаемся к интернету

Теперь самое время настроить подключение к интернету. У меня, на данный момент, есть 2 варианта выйти в инет: GPRS (с подключением мобильника по bluetooth) и через CDMA модем AnyDATA 300A (подключаемого по USB кабелю). Рассмотрим пока вариант №1.
О том, как можно подключиться к инету с помощъю мобильного телефона (и вообще что можно сделать имея убунту, мобильник и блютуз) прекрасно описано здесь - читаем и делаем :)
Дополнительно делаем соединение самовосстанавливающимся в случае несанкционированного разрыва ( глюки оператора итп. ):

sudo gedit /etc/ppp/peers/provider

Добавляем строчку:


persist


Практика показала что после этого дополнения соединение становится крайне устойчивым. При любых разрывах (даже исскусственно создаваемых кнопкой сброса на телефоне!) оно примерно через минуту самовосстанавливается. Отключить соединение можно только командой poff .
Update: Способ работает и в Ubuntu 8.10 , здесь в отличие от 8.04 соединение должно создаваться ( и отключаться ) от имени администратора:

sudo pon

Выведем на верхнюю панель апплет системного монитора, чтобы удобней было следить за траффиком: правый щелк на панели - Add to panel - апплет системного монитора. Затем правый щелк на апплете, Preferences, расставляем галки на тех параметрах, которые мы хотим мониторить (в том числе Network). Левый щелчек - resources покажет израсходованный траффик.
Подключаемся к инету, пора давать команду sudo apt-get update, но прежде сделаем еще одну вещь. В дальнейшем нам пригодится программа wine, дающая возможность запускать многие Windows приложения под линуксом. Она есть в репозиториях подключенных нами, но более старая версия чем на сайте разработчиков. Это связано с тем, что в официальные репозитории софт попадает только после всесторонней проверки командой Canonical, а на это требуется время. Между тем wine развивается очень быстро, каждая новая версия лучше предыдущей, и на мой взгляд, можно смело использовать поледнюю версию, не дожидаясь проверки Canonical. Добавим репозиторий разработчиков wine в наши источники приложений следующим изящным способом (инструкция отсюда):

Добавляем ключ gpg для подключения репозитория (все репозитории в Debian-based системах защищены (от подделки :)) криптографическими алгоритмами:

wget -q http://wine.budgetdedicated.com/apt/387EE263.gpg -O- sudo apt-key add -

Добавляем сам репозиторий:

sudo wget http://wine.budgetdedicated.com/apt/sources.list.d/hardy.list -O /etc/apt/sources.list.d/winehq.list

Все, можете зайти в источники приложений и убедиться, что во вкладке Third-Party Software появился добавленный нами репозиторий WineHQ - Ubuntu 8.04 "Hardy Heron".

Даем долгожданную команду (траффик первый раз ~9 Мб):

sudo apt-get update

Эта важнейшая команда проверяет список и версии пакетов, доступных в указанных нами источниках приложений, и по итогам ее работы система:
1. Узнает какие вообще пакеты имеются в подключенных репозиториях.
2. Какие пакеты в репозиториях имеют более свежую версию, чем установленные в системе, и следовательно в системе их требуется обновить.

Вскоре на верхней панели появляется красная стрелочка - система предлагает поставить обновления безопасности, и если в параметрах обновлений задано, более свежие версии остальных обновившихся пакетов. Ставим!

Когда следует давать команду sudo apt-get update?

1. При добавлении или удалении репозиториев - обязательно.
2. Перед установкой каких-либо пакетов, если update давно (больше суток:)) не выполнялось.

В принципе, если попытаться установить пакет, обновившийся со времени последнего update apt-get это определит и сам попросит выполнить update. Настраивая периодичность проверки обновлений в "источниках приложений" мы по сути дела и задаем периодичность команды update, которую будет давать сама система.

Продолжаем. Часть 2

Подправляем системное время (после установки Ubuntu оно оказывается сбитым): правый щелчёк на часах, Adjust Date & Time, Unlock (вводим пароль).

Улучшим внешний вид шрифтов: System - Параметры - Внешний вид, вкладка Fonts, щелкаем Details... Cтавим вариант сглаживания, который отображается лучше всего, у меня это Subpixel (LCDs). Даем в терминале команду:

xdpyinfo egrep "(dimensionsresolution)"

и затем ставим полученный параметр dots per inch (точек на дюйм, у меня получилось 86) в окошечко resolution. Все, закрываем и выходим - стало получше, согласитесь? ;)

Настроим источники прилолжений и параметры обновления системы: System - Администрирование - источники приложений. На первой вкладке ничего не трогаем, там и так все нормально. Идем на вкладку Third-Party Software и отмечаем первую строчку ( http://archive.canonical.com/ubuntu hardy partner ) - это действие подключит мощный репозиторий "multiverse" со множеством несвободных, но полезных программ сознанных партнерами Canonical (Что такое репозитории, как они устроены и какие бывают читаем здесь) .
Идем на вкладку Updates, настраиваем параметры обновления. Так как у меня GPRS, я ограничусь пока только Important security updates. Если у вас быстрый безлимитный интернет (или не жалко денег) оставьте так же отмеченным Recommended update. Лично я отложил Recommended update до лучших времен подключения к безлимитному интернету. На момент написания этой заметки Important security updates весят около 10 Мб, вместе с Recommended - около 60. Там же настраиваем желаемую периодичность проверки обновлений (я поставил в ручную - не люблю когда комьютер лезет в инет без моего ведома. Если потребуется, потом всегда можно изменить).

Установили? Продолжаем.

Итак, Ubuntu установилась, и предложила вытащить диск и перезагрузится. При первой загрузке свежеустановленной системы монитор погас, на нем появилась плавающая табличка извещающая о нештатном режиме работы, и рекомендующая подавать на монитор 1280х1024@60 Гц (Кто бы сомневался, что это желательно!), ноутбучный экран был просто черным. К счастью, как это обычно и бывает в этом случае, через минуту мониторы включились и показали окно приветствия. Данный глючок имел место и в 7.04, потом с очередной порцией обновлений он самоустранился, и вот на свежей 8.04 он вновь всплыл во всей красе. Можно конечно поковыряться, в инете есть рецепты как лечить такое, но мы просто пока отключим splash (заставку, висящую на экране во время загрузки компа) - и займемся более насущными делами. В качестве бонуса вместо скучной заставки, которая тем более не отображается во время старта компа будем наблюдать лог загрузки. Запускаем окно терминала. Его можно запустить его пройдя меню Application - Стандартные - Терминал. Но так как терминал нам пригодится часто, упростим себе задачу - повесим запуск терминала на сочетание клавиш. Мне нравится сочетание Ctrl+Super (Super - это такая кнопка с кривыми окнами ;)). Итак, идем System - Параметры - Комбинации клавиш клавиатуры, ищем там Открыть терминал, и задаем желаемое сочетание клавиш. Открываем терминал (теперь это легко). Вначале забэкапим конфигурационный файл загрузчика grub, чтобы в случае если что-то пойдет не так суметь откатится к исходному состоянию (этот совет уместен перед любой правкой критически важных для работы системы конфигов):

sudo cp /boot/grub/menu.lst /boot/grub/menu.lst.bak

И у нас в каталоге /boot/grub/ появляется файл menu.lst.bak, являющийся точной копией menu.lst - есть на что откатиться в случае если что-то пойдет не так. Маленькое пояснение для новичков: sudo - означает что команда выполняется от имени администратора. Использовать с осторожностью! с помощью sudo в системе можно сделать всё. (И сломать тоже всё!) - за подробностями в гугл.cp - команда копирования. Более подробно посмотреть её описание и использование( как и любой другой команды ) можно набрав в терминале man <имя команды>, в данном случае:

man cp

(man здесь от слова manual - инструкция). Выход из режима просмотра мана - клавиша 'q'. Начинаем редактировать меню груба:

sudo gedit /boot/grub/menu.lst

ищем строку (у вас UUID будет другой):

kernel /boot/vmlinuz-2.6.24-16-generic root=UUID=e3e833a4-6e04-4494-8e86-d51e932518e0 ro quiet splash

и приписываем перед "splash" буковки "no", получается:

kernel /boot/vmlinuz-2.6.24-16-generic root=UUID=e3e833a4-6e04-4494-8e86-d51e932518e0 ro quiet nosplash

Сделаем сразу еще одно изменение, которое может быть актуальным для тех у кого (как у меня) на компе 2 системы - Windows и Ubuntu. Дело в том, что по-умолчанию меню груба настраивается так что при включении компа дается 10 секунд на выбор, и затем, если ничего не предпринимать загружается Ubuntu. Мне желательно, чтобы по умолчанию загружался Windows: Ищем строку (в самом начале)

default 0

Меняем 0 на 4 - будет загружаться система прописанная пятой строкой, а это как раз Windows (нумерация здесь начинается с нуля). Заодно можно изменить время ожидания выбора - строка timeout , изначально стоит 10 секунд. Сохраняем, и можно попробовать перезагрузиться, и убедиться, что желаемое достигнуто!

Начинаем

Подопытное железо: ноутбук Toshiba Satellite L30-134 ( 1.46гГц, память 512 мб, винт 60 гиг, видеокарта ATI Xpress 200, экран 1280х800). К буку подключен внешний LCD монитор размером 1280x1024.
Итак, мы держим в руках диск с Ubuntu 8.04 Hardy Heron (выносливая цапля). Может быть этот диск был был бесплатно заказан по почте, или скачан в виде ISO-образа, или переписан у знакомого убунтиста. Процесс установки подробно описан в интернете, так что просто следуем этому How-To. То что How-To составлено для версии 7.10 а мы устанавливаем 8.04 не должно нас беспокоить - различия минимальны. Новичкам очень посоветую распечатать данное руководство, и держать под рукой - пригодится. И еще один момент, об этом написано в руководстве, но повторю: Обязательно проверьте диск на ошибки перед началом установки, независимо от того из какого источника он получен. Сделать это очень легко: Ставим диск и перегружаем компьютер. В начальном меню выбираем "Проверить CD" (вроде так). Появляется надпись "Checing integrity, this may take some time". Проверка идет несколько минут, подсчитываются контрольные суммы всех инсталляционных файлов и сравниваются с эталонными значениями .Если все в порядке, будет выдана надпись "Check finished, no errors found". Установка с бракованного диска может и пройти, но даст разнообразные и трудно устранимые глюки. Что делать если проверка диска не прошла? Если образ скачан из инета, проверьте md5 сумму образа (под Windows это можно сделать бесплатной программой winmd5sum. Контрольные суммы iso-образов различных дистрибутивов Ubuntu 8.04 здесь). Если образ верен, попробуйте прожечь еще раз на половинной скорости. Если не верен, подсуньте его торрент-клиенту, найдя трекер на соответствующий образ - он исправит ошибки. Не забываем про бэкап всех важный данных в Windows перед началом установки Ubuntu!
Как лучше разбить диск и какую файловую систему избрать для убунты? Я от своего 60-гигового диска под убунту отвел 20 гигов: 6 под /, 1 под своп, остальные - под /home . О выборе файловой системы читаем статью Федорчука, из которой следует что выбираем ext3fs или ReiserFS. Я в этот раз выбрал ReiserFS.
Впервые я поставил Ubuntu 7.10, мой первый Линукс осенью 2007 года. Сейчас, после выхода Ubuntu 8.04 я решил поставить эту версию "с нуля" и начать обживать, описывая весь процесс в блоге: может быть кому-то и пригодится. Во всяком случае, сам не забуду что и как делал :)