Ubuntu — платформа и среда для разработки

Эпопея установки и небольшой настройки, излагаю вехи, дабы потом было что вспомнить 🙂

Комп, на который устанавливал:

  • проц i5 3570K
  • мать ElitGroup Z77H2-A3D rev.1
  • видюха используется та что в проце HD4000 (в биосе выставил 1Г оперативы для неё)
  • памяти всего 8Г
  • винт SATA баракуда 1,5Т

Устанавливал 64-х разрядную версию Ubuntu 12.04. Вы можете спросить почему Ubuntu а не Windows? Есть несколько обоснований:

  • получил я её бесплатно (никаких тебе покупок лицензий или активирований);
  • антивирусники не нужны;
  • платформа оказывается приближенной к тому что будет на сервере (ориентация на веб разработку);
  • привык я к ней и она мне кажется поудобнее винды.

В начале загрузился с компакта, выбрал безустановочный вариант. Всё успешно загрузилось, после этого уже выбрал установку на жёсткий диск.

При установки ни сучка ни задоринки не встретил. Выбирал нужные опции. Переразбил диск: уменьшил раздел, который в винде называется диск D, создал кучку разделов — свопу (не знаю нафик он мне если оперативы 7Г, если только для усыпления компа?), основной раздел (рутовый /) и домашний (/home), 8Г 60Г 250Г соответственно.

Была интересная «внештатная» ситуация. К компу был подключен внешний винт, и не понятно зачем, в процессе установки, по умолчанию, мне было предложено установить загрузчик на него. Это, кстати, происходило в том же окне где переразбиваются диски. Выбрал для загрузчика диск sda (внутренний) дабы не зависеть от внешнего диска.

Загрузчик установился нормально, распознал винду и предложил её в списке загрузчика. Первая загрузка Ubuntu в Unity прошла успешно. Но когда я зашёл в панель запуска программ, а конкретно выбрал раздел Интернет программ, произошло глухое зависание. Отресетился, и после этого пропал индикатор языков. Опечалился, но ненадолго.

Вспомнил что в убунте есть гном, заинсталил:

sudo apt-get install gnome

(во время установки выбрал на свою голову дисплейный менеджер gdm вместо lightdm)

Всё замечательно подхватилось, скачалось и установилось.

Для полного счастья зашёл на сайт google, скачал chrome. Привык я в нём по инету гулять, да и для разработки замечательно подходит.

В гноме для окон по умолчанию показывается только кнопка «закрыть» — маловато. Поставил удобного настройщика

sudo apt-get install gnome-tweak-tool

Включил все три кнопки и сделал нормальный показ часов.

После этого решил поставить пакеты для веб разработки под php

sudo apt-get install apache2 php5 php5-mysql mysql-server phpmyadmin

Строку запуска инсталляции брал отсюда
http://help.ubuntu.ru/wiki/web-server

Тупо скопипастил, и нарвался на ошибку

Не удалось найти пакет mysql-server

Оказывается символ между словами какойт-то там странный есть. Удалил и поставил заново все пробелы в строке, после этого всё установилось.

Сижу я в гноме, приготовился виртуальные хосты настраивать. Решил узнать свой IP, как и все благоверные, написал в терминале

ifconfig

А мне в ответ:
Моя хата с краю, никого и ничего не знаю. Типа — я не я и пушка не моя. В целях безопасности я вам ничего не дам, если очень надо идите сами в /sbin и ищите свой ifconfig, а я туда не пойду, мне страшно.

После такого, я в инет вылез, решил в своих записях поковыряться. Открыл гуглдоки, конечно-же через chrome, и тут бац… Повисон!!! Припёрся и не уходит!!! блииин! (полный висяк — застывший комп ни на что не реагирующий — дежавю)

Пришлось жёстко выключать. После этого gdm (если помните — дисплейный менеджер) категорически не хотел загружаться, мне был показан обычный чёрный экран с одиноким курсором.

Я систему и так и эдак уговаривал — всё тщетно. Даже на всяки случай перешёл в первый tty (Ctrl+Alt+F1 если кто не знает) и запустил там иксы (startx). Они стартанули, сказали что пожалуются в ланчпад на gdm, и благополучно продолжили свою работу. Правда панелей управления ни юнити, ни гнома не появилось. Вернулся я в первый терминал, и в файле

/etc/X11/default-display-manager

прописал на жительство другого менеждера, вместо gdm

/usr/sbin/lightdm

После такой свистопляски, я опять сижу в гноме, и размышляю что я буду делать если он снова ляжет?

Однако ifconfig теперь запускается без вопросов…

Наконец то я добрался до apache.

Проверил, запущен ли он

service apache2 status

В ответ прилетело

Apache2 is running (pid 4070).

Если я увидел бы такое

Apache2 is NOT running.

То попробовал бы сделать ему приятное

sudo service apache2 start

И опять проверил бы статус.

Возникшие ошибки — погнали бы меня в гуглопоиск, ведь моя цель — работоспособная система, готовая ради меня на всё.

Добившись благосклонности от системы, я направил свои стопы в сторону создания виртуальных хостов.

Первое что меня заинтересовало — папка /etc/apache2/sites-available

В ней создаются настроечные файлы для виртуальных хостов. Например, так может выглядеть файл test1 для локального виртуального домена test1:

<VirtualHost *:80>
	DocumentRoot /home/dmitry/www/test1
	ServerName test1
	<Directory /home/dmitry/www/test1/>
		Options -Indexes FollowSymLinks MultiViews
		AllowOverride None
		Order allow,deny
		allow from all
	</Directory>
</VirtualHost>

(dmitry это моя домашняя папка)

Если вы хотите включить для вашего сайта модуль rewrite, который позволит обрабатывать URL на уровне apache, то вместо AllowOverride None, нужно будет указать AllowOverride All.
Звезда в первой строке говорит что мне пофиг на IP нам главное чтобы узел работал. И поэтому в файле /etc/hosts
я завязал этот хост на 127.0.0.1, для этого просто добавил в этот файл такую строчку

127.0.0.1	test1

После этого, показал апачу мой новый хост

sudo a2ensite test1

Создал в своей домашней папке каталог www, а в нём папку test1 (/home/dmitry/www/test1). Зашёл в неё и создал там index.php написал там кое-чего. Если интересно то:

<body>
<?php echo "test1"; ?> 
</body>

И рестартанул апач

sudo service apache2 restart

После этого меня неудержимо понесло в хром и в строке адреса я написал http://test1

После того что я увидел, я был счастлив 🙂

Что бы мне было сухо и комфортно я устанавил парочку IDE: NetBeans (netbeans.org) и Eclipse (www.eclipse.org). NetBeans для PHP, а Eclipse для Android (это как раз то самое «и не только»).

Для того чтобы NetBeans и Eclipse нормально работали нужен JDK — качнул. Для веб разработки на java качнул SDK. Перед тем как насладиться этими двумя китами для разработки, нарвался на косяк — скачал сразу два в одном JDK+SDK — инсталлятор. И етот паразит не хотел устанавливаться, так как у меня небыло джава машины, которая находится внутри JDK которая должна установится из этого самого инсталлятора — вот такой был просак. После такого …, скачал отдельно JDK и SDK.

JDK распространяется для Linux в виде архива — распаковал его в папку bin, которую создал в своей домашней директории. Для дальнейшего удобства сделал «Создать ссылку» для директории jdk…, и назвал её, конечно-же jdk. После этого открыл файл /home/dmitry/.profile и в конце дописал установку переменной PATH

if [ -d "$HOME/bin/jdk/bin" ] ; then
    PATH="$HOME/bin/jdk/bin:$PATH"
fi

После этого перезапустил свой сеанс.

Теперь, если я в терминале пишу команду java, то получаю список опций для запуска джава машины.

dmitry@dmitry-desk:~$ java
Usage: java [-options] class [args...]
           (to execute a class)
   or  java [-options] -jar jarfile [args...]
           (to execute a jar file)

SDK даётся в виде инсталлятора, что бы его запустить, нужно выставить в свойствах флажок — исполняемый.

Думаю, теперь мой комп готов для веб-разработки 🙂

Дополнение #1:

В гноме не всё может быть «гладко». Мной был замечен глюк — после выбора «Завершение сеанса» пропала панелька смены раскладки клавиатуры. Это конечно поправимо: Системные параметры — Раскладка клавиатуры, нужно добавить раскладку Русская, там ещё нужно войти в Параметры… и выбрать «Клавиши для смены раскладки».

Для разработки под андроид, в Eclipse нужно добавить URL с которого будет установлен плагин:
https://dl-ssl.google.com/android/eclipse/

Уже прожил пол месяца с Гномом, нареканий пока нет, все глюки происходили в первые два дня.

Дополнение #2:

Выбор продолжается! Сижу в Kubutu! Почему?
Патамучта… зависонизмы продолжаются. Склоняюсь к тому, что что-то с железом. Память протестировал от начала до конца — тесты пройдены успешно. Нужно протестить мать и проц. Процессор можно протестировать в 7z например. Для матери нужно что-то найти.
Убунту с гномом зависли настолько что не хотели потом продолжать работать, и я решил — это мой шанс вспомнить как выглядит кубунту!
Как я привёл систему в нерабочее состояние?
Решил проверить как работают 3D стрелялки в убунту на моём компе. Установил Sauerbraten. Поигрался минут пять, без лагов. Боты шустро меня мочили не давая вздохнуть. Надоело. Удалил. Началось 🙂
Увидел как мне деинсталлер написал что можно ещё запустить команду apt-get autoremove — дабы избавиться от ненужных уже пакетов. Запустил на свою голову. Не обратил внимание на список пакетов которые удалялись, видимо там было что-то нужное. Причём пока пакеты удалялись произошло глухое зависание. Этим всё сказано. Я потом с часок поделал искусственное дыхание убунте — непомогло.
И у меня возникла мысль о Кубунте — вот сижу, работаю.
Один раз уже завис 🙂

Дополнение #3:

Обновился до Ubuntu 13.10.
Решил настроить виртуальные хосты. Утилита a2ensite удивила меня тем, что ей нужны файлы с расширением .conf!
Тоесть, когда вы создаёте файл настроек виртуального хоста в папке /etc/apache2/sites-available, нужно чтобы в конце его имени было .conf!
Кроме того, в самом фале настроек, в моём примере это test1, в корневом теге VirtualHost вместо *:80 нужно будет указать имя хоста — <VirtualHost test1>.

Понравилась статья? Посоветуйте другу

Количество коментариев: 0

Добавить комментарий



[ Ctrl + Enter ]