Как-то у меня не получилось любови между Windows и Octopress. Не знаю, может это я такой везучий но при генерации постов периодически выползали ошибки «Неверный аргумент UTF-8». Бесило, что я никак не мог понять откуда и что. Обычная текстовая строка. Стираешь её, пишешь то же самое, ошибка пропадает. (естественно локали были настроены, все файлы utf и так далее.)
Устав бороться не пойми с чем, решил сделать себе виртуальную машинку с Linux под блог и для других всяких мелочей, где Linux предпочтительнее. Причем не на основном компьютере, а на “таскаемом ноутбуке”. Рабочий нотик у меня старенький, особо нагружать не хотелось. Да и места там свободного кот наплакал. Не то что-бы каждый мегабайт критичен, но и не размахнешся.
По этим соображениям был выбран очень миленький дистрибутивчик Slitaz (Домашняя страница). Отличается он минималистичным стартовым размером (iso весит ~50mb), замечательно работает на 100 мегабайтах оперативки вместе с Gui, который к тому же удобен и продуман, обладает нормальной системой работы с пакетами (они у него свои). Вобщем на мой взгляд то, что доктор прописал. По моим прикидкам после установки всего, чего надо (не только для блога) всё это хозяйство легко впишется в 600-800мб и будет летать на чем угодно.
Для виртуализации я выбрал Virtual Box из соображений простоты, небольших размеров и удобства использования. Гипервизор мне точно ни к чему тут ;-)
Установка Virtual Box
- Забираем отсюда последнюю версию инсталлятора и просто запускаем setup. Внимание! Есть один подводный камень. Ни в пути к установленному VB, ни в пути к его виртуальным машинам не должно быть кириллицы, иначе эта штука работать не будет. В остальном проблем нет. Ставим, выбираем папку для виртуальных машин. Собственно вот и весь процесс.
Создание ВМ Slitaz
- Забираем отсюда последнюю стабильную версию Live CD. В моем случае это был Slitaz 4.0 Вес Live CD 37,4Mb.
- Создание виртуальной машины.
- Открываем VB, создаем машину, обзываем Slitaz, отмечаем что тип Linux, версия Linux 2.6. Далее в диалоге оставляем по умолчаниб 256mb памяти, отдаваемой машине (это даже с избытком, но пусть будет).
Выбор жесткого диска. Выбираем пункт «Создать новый виртуальный жесткий диск». Далее выбор типа жесткого диска - выбираем VDI. Далее идет вопрос о формате хранения. В данном случае оптимально будет выбрать «Динамический виртуальный жесткий диск» Пусть занимает столько места, сколько действительно надо. Минусы этого решения в данном случае не существенны абсолютно. Далее размер. Ставлю 2Gb. По моим предположениям это раза в 3 больше чем надо, но у нас выбрана динамика в форматах диска, так что пусть будет, займет машина всё равно ровно столько, сколько ей надо. Почему тогда не 100Gb? Служебная информация файловой системызанимает место. Обьявим 100Gb диск и в зависимости от выбраной ФС файл виртуальной машины сразу станет 2-4Gb.
Далее подключение образа. Идём в настройки машины и в пункте «Носители» подсовываем приводу ВМ скачанный образ. Собственно всё.
Установка Slitaz на виртуальный HDD
Скачанный нами образ является Live-CD, но в нашем случае лучше работать с установленной на виртуальный жесткий диск системой. Так что будем наш «слитазик» устанавливать.
Запускаем машину. В первом появившемся меню просто жмём «Enter» на первом пункте и ждём. По дороге спросят локаль и раскладку клавиатуры. Везде выбираем русский и буквально через несколько секунд мы уже лицезреем десктоп.
Готовим систему к установке. Сначала надо подготовить наш жесткий диск. В установщик SliTaz не входит программа подготовки жесткого диска, поэтому надо его приготовить заранее. В меню «Application» выбираем Система
->GParted Partition editor
. На вопрос о пароле отвечаем root.
Видим наш 2gb диск, помеченный как unallocated
. Не будем мудрить и всё пространство отдадим под один раздел, который отформатируем как ext3.
Сначала в меню Device
выбираем Create Partition Table...
и в открывшемся диалоге жмем apply
. Далее меню Partition
пункт New
. В открывшемся диалоге меняем метку диска по желанию (label
) и файловую систему (File system
) меняем на ext3. «Служебка» на ext3 занимает в 2 раза больше места, чем на ext2 (в районе 3% от общего размера диска, то есть около 70mb в нашем случае), но она всё таки понадежнее. Предпочитаю её даже на виртуальной машине. Остальное устраивает, жмем Apply. И последнее - в меню Edit
выбираем пункт Apply All operatuons
Все, диск готов к использованию, закрываем программу.
Запускаем панель администрации (слева вверху иконка с гаечным ключом на красном фоне). Нас спрашивают рутовые логин и пароль, вводим root
, root
и попадаем в панель администрации.
В меню выбираем пункт install
, в «выпавшем» списке выбираем install SliTaz
и далее Continue Installation
.
«Siltaz source media» оставляем без изменений, в разделе «Hard Disk drive» выбираем partition для установки (она у нас одна), галочку о форматировании можно снять, диск у нас и так готов. Далее заполняем данные на рута и первого пользователя и обязательно ставим галочку на пункте «Install Grub» и жмем кнопку продолжения инсталляции. собственно всё. Жмем кнопку перезагрузки, заново выбираем русский при первом старте и система готова.
Пока наш файл виртуальной машины занимает 220mb (из которых около 70 это служебка файловой системы ext3).
Установка VBox Guest Additions
Для того, что-бы заработали приятные плюшки вроде нормального полноэкранного режима, двусторонний буфер обмена между гостевой и хост-машинами, общие папки, «Drag-and-drop» между хостом и гостевой, необходимо в гостевую машину установить специальный пакет утилит. И вот тут начинается Марлезонский балет по полной программе. Помучался я изрядно, но в итоге всё заработало. Поехали.
- Приводу cd ВМ подсовываем
VBoxGuestAdditions.iso
, который лежит в папке, куда установлен VBox. - Запускаем ВМ
- Административная панель, пункт
Package
. - Выполняем
Recharge list
- обновляем информацию о доступных пакетах. - Устанавливаем пакет linux-api-headers
- Устанавливаем пакет linux-module-headers
- Устанавливаем пакет bzip2
- На десктопе открываем папку
My Documents
. Там видим примонтированный CD с утилитами, кликаем на него, жмём «F4». В нужном нам месте открывается терминал. Дальше нужны права рута. в терминале даем командуsu
и вводим пароль рута (root, если не меняли при установке). - Ставим пакет дав команду в терминале
./VBoxLinuxAdditions.run
. Установка идет около минуты и сопровождается потоком информации, на которую можно не обращать внимания. - в папке ‘/etc/X11/xorg.conf.d’ удаляем несколько файлов, вызывающих конфликт:
- rm /etc/X11/xorg.conf.d/10-ServerLayout.conf
- rm /etc/X11/xorg.conf.d/50-Monitor.conf
- rm /etc/X11/xorg.conf.d/60-Device.conf
- rm /etc/X11/xorg.conf.d/70-Screen.conf
- Открываем файл /etc/rcS.conf (
vi /etc/rcS.conf
илиnano /etc/rcS.conf
для не знающих vi) и добавляем “vboxguest vboxsf vboxvideo” в строку LOAD_MODULES. После редактирования должно выглядеть примерно так:LOAD_MODULES=" snd_hda_intel vboxguest vboxsf vboxvideo"
- Открываем файл /etc/slim.conf и меняем строку
login_cmd
следующим образом:login_cmd VBoxClient-all & exec /bin/sh -l ~/.xinitrc %session
- Уффф. Всё. Рестарт ;-)
- После перезагрузки системы поставьте разрешение монитора в
auto
(это в главном меню, в параметрах). - Если собираетесь использовать 3D, поставьте ещё пакет
mesa-demos
и в настройках виртуальной машины включите галочку о поддержке 3D
После установки этого удовольствия наша виртуальная машина выросла почти в 2 раза - до 500Mb.
Установка Octopress
Сначала надо подготовить среду. Ставим следующие пакеты:
*Ruby
* Ruby-dev
* Python-dev
* openssh
* git
Внимание. На момент написания этих строк Octopress без танцев с бубнами на тему версий, нормально работал только с Ruby 1.9.2.
- Зарегистрируйтесь на github.com и создайте репозиторий с именем username.github.com Именно так, с «github.com» (иначе нужны будут дополнительные танцы с настройкой)
- Тащим Octopress. Откройте терминал в домашней папке и дайте команду
git clone git://github.com/imathis/octopress.git octopress
(последний параметр - это папка котурую создаст git и сложит туда всё, что вытащит) - Переходим в новую папку с Octopress. Сейчас нам потребуются права рута, что-бы поставить недостающие части. (команда
su
). Выполняем командуgem install bundler
и затемbundle install
. Затем выходим из режима рута (командаexit
) - Назначаем тему по умолчанию = ‘rake install`
- Для того, чтобы git смог работать по SSH протоколу, необходим обмен ключами. Сгенерируем ключи. Команда `ssh-keygen -t rsa -C “name@mail.ru” создаст в домашней директории папку ~.ssh/ c 2 файлами в ней - id_rsa и id_rsa.pub. Соответственно закрытый и публичный ключи. Если не страдаете паранойей в тяжелой форме, на предложение ввести пассфразу для доступа к закрытому ключу просто нажмите ввод. Иначе при каждом чихе гита он будет с вас её требовать.
- id_rsa.pub откройте в текстовом редакторе (не консольном). Проще всего на десктопе открыть папку My Documents, в меню
view
выбратьShow hidden files
, кликнуть на папку .ssh и кликнуть на файл id_rsa.pub Открыв файл скопируйте всё содержимое. На github.com в своём аккаунте зайдите в настройки и в разделеSSH Keys
добавьте ключ. Название любое, поле ключа - то, что вы скопировали из файла. перед добавлением у вас попросят ввести пароль от аккаунта. - Необходимо чуть донастроить git. в терминале выполните команды:
- git config –global user.name “GithubComUserName”
- git config –global user.email “GithubComUserEmail” Где “GithubComUserName” и “GithubComUserEmail” соответственно ваши имя пользователя и Email с которыми вы регистрировались на github.com
- Остался последний шаг по установке Octopress. Команда
rake setup_github_pages
. На вопрос об url напишитеgit@github:USERNAME/REPONAME.git
(например git@github:Pupkin/pupkin.github.com.git ) если ваш юзернэйм на github.com pupkin и вы создали репозиторий pupkin.github.com
Собственно на этом установка завершена. можно проверить работоспособность. дайте 2 команды. rake new_post["My First Post Octo"]
и затем rake gen_deploy
. Если всё сделано правильно, вы минут через 10 сможете лицезреть свой новый блог с вашим первым постом по адресу, соответствующему названию репозитория (например pupkin.github.com)
Так как в установленном SliTaz присутствует http сервер, вы можете просматривать ваш блог до публикации. Делается это с помощью команд rake generate
и затем rake preview
. В браузере наберите http://localhost:4000
Небольшая донастройка среды
Переключение клавиатуры
В процессе установки всей этой радости русский нам не был нужен. Но теперь пора что-нибудь предпринять, поскольку хоть русскую локаль нам как-бы дали, а вот переключение раскладки клавиатуры дать забыли.
Простейший метод включения. В домашней директории создаем файлик rus.sh (touch rus.sh
), делаем его исполняемым (chmod +x rus.sh
), открываем его в текстовом редакторе и пишем в него следующее:
1 2 |
|
Теперь идем в меню->параметры->Auto started applications. Там жмем Add
и в первое поле пишем имя файлика вместе с путем нему (например /home/tux/rus.sh
Теперь отобразим индикатор раскладки. На верхней панели правый клик -> Add remove Panel items
-> add
-> из списка выбираем Keyboard layot switcher
добвляем и кнопками Up/Down выбираем позицию показа.
Установка русской локали.
Несмотря на то, что при установке мы выбирали русскую локаль и даже часть менюшек видна русском, на самом деле пакет русской локали в системе не установлен. Исправляем этот недочет и ставим пакет locale ru
или через менеджер пакетов, как вы делали это раньше, или в терминале командой tazpkg get-install locale-ru
Локаль ru_RU.UTF-8
Команда терминала loccale -a | grep ru_RU
показывает, что локали ru_RU.UTF-8 всистеме нет. Необходимо её создать.
это необходимо делать под рутом (после команды su
в терминале):
localedef -i ru_RU -f UTF-8 ru_RU.UTF-8
теперь в /etc/locale.conf прописываем
1 2 |
|
Русифкация консоли
Что-то под SH у меня не получилось написать русские буквы в терминале. А вот с bash + терминал sakura (иконка которого изначльно на верхней панели) получилось. Рецепт следующий:
- Сначала надо установть следующие пакеты:
- bash
- kbd
- kbd-base
- Далее сменить оболочку по умолчанию. Для этого:
- сделайте копию файла .profile, расположенного в вашей домашней папке, и переименуйте его в .bashrc
- отредактируйте файл /etc/passwd и измените путь к командной строке на /bin/bash. Найдите там строчку с именем пользователя, под которым работаете и поменяйте в конце строки sh на bash (это надо сделать под рутом). Этот метод конечно не по феншую, но для виртуалки и 1 пользователя сойдёт. После всех этих манипуяций надо или перегрузиться или закончить сессию и войти заново. Всё. теперь у нас более менее корректная локаль, есть русские буквы в терминале sakura. Может какие-то подводные камни потом вылезут, а пока вроде порядок.
На сладкое
Если вам лениво повторять весь процесс настройки, вы можете скачать готовую виртуальную машину отсюда. Вам останется только подключить её к установленному Virtual Box и проделать шаги 1-8 (кроме 3-го) из раздела установка Octopress. Вес архива - 173Mb.
На этом Шахерезада и заканчивает дозволенные речи. Удачной работы!