Как сделать хостинг на своем компьютере. Виртуальный хостинг и свой домен на домашнем компьютере

03.07.2019

Что необходимо знать, чтобы создать свой ?

Во-первых, необходимо понимать суть данной услуги. Хостинг сочетает в себе качественное оборудование и программное обеспечение с одной стороны и предоставление услуги по техническому обслуживанию с . Многие эксперты отмечают, что именно услуга является наиболее важной составляющей , поскольку найти компании с качественным оборудованием и ПО не представляет проблемы.

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

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

Способы создать свой хостинг

Существует три основных способа создать свой хостинг.


  1. Первый – стать реселлером, этот способ является наиболее дешевым. Реселлер – это лицо, приобретшее сервера у известной хостинг-компании и осуществляющее продажу мест на сервере, а также ответственное за техподдержку. Однако, поскольку не принадлежит реселлеру, техподдержка будет затрудняться рядом препятствий (например, невозможностью осуществлять эффективный контроль сервера, перезагружать его и т.д.)

  2. Второй способ – это арендовать целый сервер у хостинг-компании. Это будет значительно дороже, однако такой способ имеет ряд плюсов, которых не имеет реселлерство. В частности, возможность ставить свое программное обеспечение на сервер, возможность его контроля, и как результат более оперативной техподдержки.

  3. Третий способ – это самостоятельная покупка сервера и размещение его в Дата-центре на условиях аренды места. Преимущества такого способа – более дешевая арендная плата. Недостаток – необходимость покупать сервер, который стоит достаточно дорого.

Этапы создания хостинга


  • Составление сметы проекта и средств.

  • Разработка тарифных планов для владельцев сайтов.

  • Определение способа создания хостинга (реселлерство, аренда сервера, места в Дата-центре).

  • Разработка маркетинговой стратегии для продвижения своих услуг в Интернете и нахождения клиентов.

  • Создание хостинга и его .

  • Наем персонала

Видео по теме

Источники:

  • как сделать свой хостинг сайтов

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

Вам понадобится

  • - Выделенный сервер;
  • - панель управления сервером;
  • - сотрудники техподдержки.

Инструкция

Самый ответственный этап – и площадки для его размещения. Можно, конечно, воспользоваться уже существующими панелями управления для создания хостинга, которые предлагают многие современные хостинг-провайдеры, но в этом случае успех у вашего проекта будет ограничен.

Для начала выберите дата-центр, у которого вы будете покупать выделенный сервер. Ознакомьтесь с аппаратной частью выбранных дедиков, узнайте побольше о техническом обслуживании, а при возможности нанесите визит в офис выбранной компании, чтобы получить реальное представление о том, в каком состоянии находятся сервера и серверная комната. Настоящий дата-центр не зависит от географического положения.

Выберите подходящее вам программное обеспечение, с которым вы более-менее знакомы. Так, чтобы обслуживать сервер IIS под управлением Windows, придется прочитать большое количество информации о настройке и всегда быть в курсе всех уязвимостей. Важно вовремя устанавливать последние обновления системы, ведь это прежде всего вопрос безопасности. Если вы сделали выбор в пользу Unix, то нужно обязательно знать, система, и уметь обращаться с консолью.

8

Для проверки в разных браузерах иногда бывает необходимо протестировать свой сайт до того как установить его на платный хостинг. Некоторые,в том числе и я, вообще пользуются домашним компьютером как виртульным хостингом для своего сайта.
Как пишут в Интернете, некоторые умудряются держать на своем ноутбуке несколько ресурсов и спокойно вещать их в web-сеть. Если вы тоже хотите настроить виртуальный хостинг на своем компьютере, то в этой статье вы найдете как это сделать.
Настройка виртуального хостинга не вызывает особых осложнений. Установка XAMPP была описана . Для установки полноценного сервера на домашнем компьютере необходимы некоторые требования:

У Вас должен быть уникальный(белый) или выделенный IP. Его можно приобрести у провайдера.

Вам потребуется ДНС сервер для связи ваших доменных имен с вашим сервером. Для этого необходимо при регистрации домена, выбирать регистратора, который предоставляет такие услуги. Обычно такие услуги платные. Можно воспользоваться бесплатным ДНС сервисом Яндекса.
После того как вы только установили XAMPP на домашний компьютер, у вас имеется только один локальный домен localhost. Если вы сделаете настройку виртуальных хостов, то сможете разместить сколько захочется сайтов со своими доменами. Для настройки виртуального хостинга открываете папку /xampp/apache/conf/extra/httpd-vhosts.conf.

Все что находится в этом файле, оставляете как есть. При добавлении новых хостов, первым должен быть обязательно localhost. Добавлять новые строки в такие файлы лучше всего с помощью специального блокнота Notepad++, но можно и обычным блокнотом. Добавляете такие строчки:

NameVirtualHost *:80


ServerName localhost
DocumentRoot c:/xampp/htdocs/localhost/www
ServerAdmin [email protected]


ServerName mysite.ru
ServerAlias www.mysite.ru
DocumentRoot c:/xampp/htdocs/mysite.ru/www
ServerAdmin [email protected]


ServerName mysite2.ru
ServerAlias www.mysite2.ru
DocumentRoot c:/xampp/htdocs/mysite2.ru/www
ServerAdmin [email protected]

Здесь mysite.ru и mysite2.ru названия ваших доменов, которые измените на свои. [email protected] - почта админа сайта.

После такой настройки виртуального хостинга на домашнем компьютере останется только прописать на ДНС ваши указанные в этом файле домены и направить их на ваш IP.

Чтобы запустить это все для общего доступа, обезопасить на сколько это возможно в windows, читайте мои следующие , обязательно прочтите, не запускайте сервер для всех желающих в этом состоянии, так как он совсем отрыт для всего и всех.

У меня (как и у многих web-разработчиков) имеется с десяток сайтов которые необходимо где-то размещать (хостить).

Сайты практически не приносят прибыли, поскольку это какие-то старые работы (по разным причинам не пошедшие в продакшн), домашняя страница, сайт заведенный красивой почты и тому подобное. Но в то же время эти сайты жалко бросать, а потому приходится каждый месяц на них тратить вполне реальные деньги чтобы покупать хостинг. Деньги, прямо скажем небольшие, но тем не менее их жалко, поскольку отдачи от сайтов никакой нет.

В то-же время в наличии имеется:

  • Домашний сервер на Ubuntu
  • Быстрый ethernet-интернет от МТС
Но не имеется ключевого - статического IP. Если бы он был, то все было-бы намного проще и данную статью я бы точно не писал. А выдавать статический IP мой МТС абсолютно не желает (если только я не подключусь как бизнес-клиент).

Разумеется есть всем известные Dynamic DNS сервисы вроде noip.com , но они успешно решают лишь задачу удаленного доступа к нашему серверу (по SSH или FTP), но для хостинга совершенно нам не подходят, поскольку в настройках домена на DNS-сервере нам нужно обязательно прописать A-запись с реальным IP-адресом (а не ссылку на наш виртуальный домен).

Что делать?

Я не буду останавливаться на том, как настроить linux сервер (и тем более как его выбрать), поскольку предполагаю, что он у вас уже есть. Также я не буду подробно расписывать настройки nginx и Apache, поскольку опять-таки предполагаю, что вы с этим справитесь самостоятельно.

Первое с чем у меня возникли проблемы - это как перенаправить посетителей с моих доменов (у меня есть 2 домена) на мой домашний сервер. То есть чтобы клиент который набрал domain.com попал ровно на мой домашний сервер с учетом того, что на нем каждый день меняется IP-адрес.

Для решения нам нужно настроить DNS-сервер, а именно следующие записи: SOA, NS, MX, A, CNAME. Важно чтобы мы имели возможность настройкой TTL (time to live), поскольку время жизни наших записей должно быть очень небольшим, буквально 60-120 секунд. В противном случае при смене IP-адреса сервера пользователи долго не смогут попасть на наш сервер (из-за кеширования).

Итак, нам нужен DNS сервер, варианты решения:

Рассмотрим оба варианта.

Используем сервисы которые предоставляют нам DNS-хостинг

Для этого есть ряд бесплатных сервисов, из которых самым популярным является freedns.afraid.org . На таких сервисах можно добавить свой домен(ы) и получить возможность через API обновлять у них A-запись при помощи небольшого скрипта.

Выглядит вполне неплохо, но подвох в том, что эти сервисы оставляют за собой право довешивать к вашему домену поддомены третьего уровня. То есть вы зарегистрировали у них user.ru, а они спокойно довешают свои сайты вида hello.user.ru, shop.user.ru и так далее. Разумеется от этого можно отказаться, но… за деньги. Платить деньги за такие сервисы смысла я не вижу, поскольку за сравнимые деньги вы можете купить полноценный хостинг на каком-нибудь провайдере без всяких плясок вокруг DNS настроек.

Остальные сервисы рассматривать не будем, а сосредоточимся на втором варианте.

Используем собственный DNS-сервер в связке с DDNS-доменом

Для этого варианта у нас, во-первых, должен быть DDNS-домен (который обновляется при смене IP), например, domain.ddns.net, а во-вторых, придется установить и настроить BIND на нашем сервере.

Всего необходимо сделать ровно 5 шагов. Везде под словами «domain» или «domain.ru» подразумевается ваше имя домена (короткое или полное).

1. Настроить 2 или 3 DDNS-поддомена
Почему 2 или 3? Потому, что ряд регистрантов не разрешит вам использовать домен только с одним NS-сервером. Самое обидно, что не все про это скажут - ваш домен просто не будет работать, но вы не будете понимать почему.

Тут все просто - идем на noip.com , там регистрируем аккаунт и добавляем 3 бесплатных поддомена (больше 3 не даст).

2. Настраиваем собственный DNS-сервер
Устанавливаем BIND:

$ sudo apt-get install bind9
Создаем зоны (по одной зоне на каждый наш домен):

$ sudo nano /etc/bind/zones.my
с содержимым:

Zone "domain.ru" { type master; file "/etc/bind/db.domain.ru"; };
и собственно файл с настройками зоны:

$ nano /etc/bind/db.domain.ru
и пишем внутри:

; ; BIND data file for local loopback interface ; $TTL 60 @ IN SOA domain.ru. admin.domain.ru. (1477015437 ; Serial 10800 ; Refresh 3600 ; Retry 604800 ; Expire 1800) ; Negative Cache TTL @ IN NS domain.ddns.net. @ IN NS domain.ddnsking.com. @ IN NS domain.myftp.biz. @ IN MX 10 mx.yandex.net. @ IN A 1.2.3.4 mail IN CNAME domain.mail.yandex.net. * IN CNAME domain.ru.
Примечание: обращаю внимание, что TTL устанавливаем равным 60 секунд. В файле /etc/bind/named.conf.local добавляем подключение нашей зоны:

Include "/etc/bind/zones.my";
Все, рестартуем BIND:

$ sudo service bind9 restart
И глянем /var/log/syslog чтобы там не было сообщений об ошибках

3. Настроить наш домен(ы)
Идем в панель управления регистратора и там в настройках нашего домена в качестве NS-серверов указываем созданные DDNS-поддомены:

Nameserver1 = domain.ddns.net nameserver2 = domain.ddnsking.com nameserver3 = domain.myftp.biz
После этого возможно придется подождать несколько часов (или даже сутки) пока настройки среплицируются между всеми серверами.

4. Настроить периодическое обновление IP-адресов
Мой роутер поддерживает обновление IP-адреса на одном домене, но мне нужно это делать сразу для 3-х доменов. Плюс нам надо обновлять IP-адрес в конфиге BIND"а, поэтому напишем скрипт который будет делать:
  1. Определять наш внешний IP-адрес
  2. Проверять изменился ли IP адрес, если не изменился, то ничего делать не надо
  3. Обновлять IP-адрес у всех DDNS-поддоменов через API сервиса noip.com
  4. Прописывать новый IP адрес в конфиг BIND"а
  5. Перезапускать BIND
Сам скрипт пусть будет на шелле:

#!/bin/sh # This script works via noip.com service + local Bind server # Settings ZONES_CONFIG=zones.my IP_FILE=./current_ip.txt DDNS_USER=user DDNS_PASS=password DDNS_HOST=domain.ddns.net DDNS_HOSTS=domain.ddns.net,domain.ddnsking.com,domain.myftp.biz # Start DATE=$(date +"%Y-%m-%d %H:%M:%S") # detect an external IP IP=$(dig +short $DDNS_HOST) if [ $? -ne 0 ] || [ -z $IP ] || [ $IP = "0.0.0.0" ] ; then echo "$DATE Can"t detect a remote IP. Aborting." exit 1 fi # verify IP changing PREV_IP="(unknown)" if [ -e $IP_FILE ] ; then PREV_IP=$(cat $IP_FILE) fi if [ $IP = $PREV_IP ] ; then echo "$DATE IP "$IP" has not changed" else echo "$DATE IP has been changed from "$PREV_IP" to "$IP"" echo "$DATE IP will be updated on DDNS server" /usr/bin/curl -u $DDNS_USER:$DDNS_PASS "https://dynupdate.no-ip.com/nic/update?hostname=$DDNS_HOSTS&myip=$IP" fi echo $IP > $IP_FILE # check BIND config cd /etc/bind if [ ! -e $ZONES_CONFIG ] ; then echo "$DATE File $ZONES_CONFIG not found!" exit 1 fi # read the list of active zones ZONE_FILES=$(grep file $ZONES_CONFIG | grep -v ^# | perl -ne "/file "(.+)"/ && print "$1\n"") for ZONE_FILE in $ZONE_FILES; do echo "$DATE Process the zone config $ZONE_FILE" cat $ZONE_FILE | perl -ne "s/([\t ]+IN[\t ]+A[\t ]+)[\d\.]*/\${1}${IP}/; print \${_}" > $ZONE_FILE.tmp if [ $(diff -w $ZONE_FILE $ZONE_FILE.tmp | wc -l) -ne 0 ] ; then # update serial number STAMP=$(date +%s) cat $ZONE_FILE.tmp | perl -ne "s/\d+(?=.+Serial)/$STAMP/; print \${_}" > $ZONE_FILE # reload BIND service bind9 reload echo "$DATE Config $ZONE_FILE is updated" else # nothing to do rm $ZONE_FILE.tmp echo "$DATE Config $ZONE_FILE is NOT changed" fi done
Скрипт нужно запускать под рутом (чтобы ему хватило прав обновлять конфиги BIND"а и рестартовать его). Добавляем в crontab рута его запуск каждую минуту:

* * * * * cd /home/root && ./update_bind_config.sh >> /var/log/update_bind_config.log
Пару слов про определение текущего IP-адреса. В скрипте выше это делается через резолвинг DDNS-поддомена domain.ddns.net. То есть сначала наш роутер его туда прописывает, а потом мы читаем. Это не очень хороший вариант, поскольку мы завязываемся на роутер и можем потерять несколько минут пока на DDNS-поддомене обновится IP-адрес на актуальный. Все это время наш сервер будет недоступен.

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

IP=$(perl -le "use LWP::UserAgent; my $content=LWP::UserAgent->new->get("http://router")->decoded_content(); $content =~ q(([\d\.]+)); print $1")
В данном варианте мы загружаем главную страницу роутера (через http), дальше регэкспом находим на ней текущий IP-адрес. Разумеется, этот вариант подходит далеко не всем, но на DD-WRT прошивках работает.

5. Настройка роутера
Про необходимость настроить обращение к DDNS-сервису я уже писал, но еще не забывайте про необходимость настроить форвардинг портов на вашем роутере:
  • HTTP - TCP, 80-ый порт
  • DNS - TCP+UDP, 53 порт

Вывод

Итак, что я получил в итоге:
  • Мои сайты живут на домашнем сервере, за который я никому не плачу;
  • Мои домены резолвятся через мой собственный DNS-сервер, время жизни записей 1 минута, то есть обновление происходит очень быстро;
  • В качестве NS-записей указаны не реальные IP-адреса (которые у меня часто меняются), а DDNS-поддомены;
  • Актуальность записей в DDNS-поддоменах и в конфиге моего DNS-сервера обеспечивается автоматически, без какого-либо вмешательства со моей стороны.
По моим замерам, когда МТС (мой провайдер) обновляет мне IP-адрес, то мои сайты начинают работать спустя где-то 2 минуты. Это вполне приемлемо для меня.

P.S. Если кому-то понравилась данная заметка, то я могу написать вторую часть, где расскажу как настроить работу с использованием DNS-хостинга Яндекса. Это позволит отказаться от собственного DNS-сервера, отказаться от DDNS-поддоменов, плюс чуть улучшит надежность работы (поскольку DNS-сервер никогда не будет менять свой IP). Именно такую схему я использую в настоящий момент.

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

Как не странно, но если вы читали статью о , то вы уже умете хостить сайты на своем домашнем компьютере. Оказывается, все что нужно для того, чтобы сайт грузился не с какого-то сервера хостинг-провайдера, а со своего знакомого родного домашнего компьютера – это описанным в статье образом настроить связку apache+php+mysql и связать доменное имя с IP-адресом вашего домашнего компьютера.

Повторюсь:

  • О том как настраивать Apache + PHP + MySQL я писал .
  • О том, как связать IP-адрес и доменное имя я записал .

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

Замечательно, если компьютер подключен напрямую к провайдеру сетевым проводом и в настройках сети задан внешний статический IP-адрес. Именно этот IP и нужно будет указать в настройках доменного имени.

Но, обычное дело, когда компьютер, который будет выполнять роль сервера, расположен либо в локальной подсети, либо перед ним стоит какой-нибудь АДСЛ-модем и внешний IP-адрес (который вы можете узнать воспользовавшись сервисом myip.ru) – это адрес роутера либо адрес АДСЛ-модема. IP-адрес компьютера имеет при этом локальный вид (либо 192.168.0.ХХХ, либо 10.0.0.Х). Здесь уже сложнее, но все равно можно реализовать поставленную цель и сделать у себя дома филиал хостинг-провайдера.

Необходимо реализовать так называемый проброс портов . Т.е. настроить роутер или АДСЛ-модем следующим образом:

  • Пользователь набрал адрес сайта сайт.
  • Name-сервер сообщил IP-адрес. Этот IP-адрес является внешним статическим адресом либо роутера, либо АДСЛ-модема, либо шлюза, через который компьютер-сервер выходит в интернет.
  • Запрос пришел к роутеру на 80-й порт (именно через 80-й порт осуществляется http-соединение).
  • Роутер настроен таким образом, что все запросы, приходящие на 80-й порт, перенаправляет компьютеру локальной подсети с определенным IP, например 192.168.0.200.
  • Запрос пошел на локальный компьютер-сервер, а там его уже с радостью встречает Apache и выдает нужный сайт.

Но с пробросом портов мы разберемся чуть позже. Пока поковыряем сам компьютер-сервер.

Характеристики компьютера-сервера

Здесь очень сложно говорить о каких-либо точных параметрах.

Если вы собираетесь поиграть в хостинг-провайдера, то сервер должен быть четырехъядерным компьютером с 4-мя Гигабайтами оперативки, и несколькими жесткими дисками, объединенными в RAID-массив . Такой компьютер делится на несколько виртуальных серверов, управление которыми дается клиентам.

Если вы собрались подхостить пару сайтов, типа сайт, то вполне хватит обычного современного компьютера. А там уже нужно экспериментировать для достижения оптимального результата.

Направлю ваше внимание на следующую особенность: важно количество оперативной памяти на сервере. Т.к. процесс загрузки посетителем одной и той же страницы сайта можно ускорить путем хранения данных в оперативной памяти. Чем больше оперативки, тем лучше.

Скорость чтения с жесткого диска и его надежность можно повысить все теми же RAID-массивами .

Но неоспоримым оказывается тот факт, что ОС Windows, из-за огромного количества дыр в безопасности, множества вирусов, нестабильности работы – на сервере не место.

Поэтому на серверах бал правят операционные системы семейства Linux. Но не пугайтесь, принципы работы в Linux не так и сложны, как кажется, а настройка Apache + PHP + MySQL практически ничем не отличается от настройки в Windows.

Установка ArchLinux

Давайте-ка, уважаемый читатель, я познакомлю вас с установкой операционной системы ArchLinux.

Существует множество операционных систем, разработанных на основе Linux . Это и всем известная Ubuntu и openSUSE и многие другие. Одним из завоевавших популярность дистрибутивов является ArchLinux. С ним-то мы и будем знакомиться.

Почему именно ArchLinux:

  • На мой взгляд, оптимально подходящий дистрибутив для сервера. В нем нет никакой лишней тяжести, все настраивает и устанавливает сам пользователь (оставляя только то, что действительно необходимо).
  • Мощная система установки обновлений Pacman .

Теперь я подробно опишу процесс установки ArchLinux на будущий сервер.

В случае обычного домашнего компьютера, из которого мы планируем сделать сервер, подойдет дистрибутив Core ISOs: i686 , Torrent-ссылку на который можно получить на этой странице .

Данный дистрибутив представляет собой 32-х битную версию с присутствующими в скачиваемом образе необходимыми файлами установки (короче говоря, это то, что нам нужно).

Как я уже писал в статье о моих программах, я буду использовать инструментарий .

Для начала запускаю из TCUP Torrent-клиент и примерно через час дистрибутив у меня на жестком диске.

Теперь, как вы, наверное, догадались, нужно нарезать дистрибутив на диск. Идеальным окажется обычный CD, но где его в наше прогрессивное время взять, поэтому я использую чистую DVD (ради такого дела не жаль).

Нарезать будем плагином все того же TCUP.

Запускаем плагин Прожиг CD/DVD . Далее выбираем пункт Проект: Образ ISO/CUE и, прямо в открывшееся содержимое пункта, копируем скачанный дистрибутив ArcLinux-а (при помощи всем знакомой кнопки F5).

Запись начинаем, естественно, кликом на пункт Запись диска .

Выбираю низкую скорость записи, спешить нам некуда. И поехали трансформировать образ диска в загрузочно-устновочный диск ArcLinux.

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

Считается, что дойдя до понимания необходимости установки Linux, пользователь знает где именно в BIOS подопытного компьютера можно включить загрузку с CD.

Грузимся с CD.

Выбираем пункт Boot Arch Linux Live CD . После чего наблюдаем процесс загрузки операционной системы.

Хозяйке на заметку root – это логин суперпользователя, обладающего самыми широкими правами по настройке системы.

В установочном режиме учетная запись root-пользователя не имеет пароля. Пароль мы создадим на одном из последних шагов установки ОС Arch Linux.

Если обратить внимание на появившуюся, после авторизации, красиво оформленную надпись, то станет понятно – установку нужно начитать с ввода команды / arc/ setup и подтверждаю ввод нажатием, вы не поверите, Enter.

Все, приступаем непосредственно к установке.

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

1. Select Source

На данном этапе нам предлагается выбрать между установкой с CD или из интернета. Т.к. мы скачали полный дистрибутив, то выбираем пункт CD-ROM or OTHER SOURCE и нажимаем Enter.

2. Set clock

Select region and timezone. Здесь необходимо выбрать временной регион. Я выбираю Europe и после Kiev (т.к. территориально я нахожусь в Украине).

Set time and date Здесь без лишних пояснений выбираю UTC. В режиме manuale редактирую дату. После корректировки возвращаюсь в подменю установки даты и времени, выбрав пункт return.

Настройку времени и даты я закончил, выбираю 3-й пункт Return to Main Menu.

Теперь самая интересная и сложная часть – разбивка жесткого диска. Но мы эту науку быстро одолеем.

Выбираю пункт

3. Prepare Hard Drive(s)

Разбивать будем в ручном режиме. Поэтому в подменю выбираем пункт 2. Manually Partition Hard Drives.


Я имею диск в 18 Гбайт, о чем с радостью меня информирует программа разбивки диска.

На данном этапе хочу пояснить принципы работы с оборудованием и файловой иерархией Arch Linux:

В Linux нет дисков С:, D: и т.д., как мы привыкли видеть в Windows. Здесь вся иерархия начинается от корня, обозначаемого / Все находится внутри этого слеша и распределено по папкам.

Удивительно для пользователя Windows, но все оборудование хранится в папке /dev. Мой единственный жесткий диск обозначается как sda. Именно поэтому я вижу надпись /dev/sda: 18GiB, которая говорит о том, что на компьютере есть одно устройство, распознанное как жесткий диск размером в 18 ГигаБайт и оно, как и все устройства, засунуто в папку dev.

А теперь мы приступим непосредственно к созданию разделов на жестком диске.

Выбираю диск /dev/sda и нажимаю Enter. После этого запускается программа cfdisk, при помощи которой мы и будем делить диск на разделы. Убираем приветственное окно программы cfdisk, нажав Enter и наблюдаем интерфейс программы cfdisk.

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

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

Создадим три раздела:

  • Загрузочный раздел, который будет содержать ядро системы (для него нам достаточно отвести 50 Мбайт).
  • Раздел подкачки или swap. Он используется для хранения данных из оперативной памяти, когда они уже там не умещаются (512 Мбайт).
  • Раздел для всего остального, корневой раздел /. Для него задействуем все что осталось.

Итак, выбираю пункт New и создаю загрузочный раздел. На следующей развилке я вбираю пункт Primary. Далее выбираю размер раздела, в моем случае достаточно 50 МегаБайт. Выбор подтверждаю пунктом Beginning.

После создания раздела указываю его тип (пункт Type) как 83 (Linux).

Первый раздел создан. Теперь я перемещаюсь на пункт, символизирующий оставшееся свободное место на диске и снова нажимаю New.

Теперь я буду создавать раздел подкачки swap.

Используем вышеописанный алгоритм. Размер данного раздела будет равен 512 Мегабайт.

В качестве типа данного раздела (Type) необходимо указать 82.

Все остальное помечаем как sda3, туда мы будем монтировать корень /.

Размеченный жесткий диск sda имеет следующий вид:

Настал этап указать один из дисков, как загрузочный. Для этого мы перемещаемся на sda1 и помечаем его пунктом Bootable.

Все, уважаемый читатель, с разметкой диска покончено. Выбираем в интерфейсе cfdisk пункт write (в нижнем меню) и сохраняем внесенные изменения.

После сохранения можно выйти (пункт Quit).

Мы снова попадаем в знакомое нам меню установки Arch, где выбираем пункт DONE.

После выбора DONE, мы окажемся в подменю работы с диском, где будет заботливо выбран пункт 3. Manually Configure block devices, filesystems and mounpoints

Нажимаем Enter и переходим к монтированию разделов жесткого диска.

Перейдя в соответствующий раздел меню мы сможем указать файловые системы и точки монтирования (что именно должно располагаться в выбранном разделе жесткого диска).

Итак, начинаем с sda1. Этот раздел загрузочный. Для него оптимальной окажется файловая система ext3, поддерживающая восстановление после сбоя.

Как и договаривались, монтируем на sda1 загрузочный раздел /boot.

Никаких дополнительных опций указывать не будем, нажимаем Enter.

Аналогично вышеописанному создаем файловую систему и точку монтирования для sda2. Файловая система – swap. Это собственно все, что нужно было указать для sda2.

Sda3 будет иметь файловую систему ext3 монтировать туда будем, как и договаривались, все остальное, т.е. /.

Вот результат:

Остается лишь выбрать done и все, что мы наворотили, применится.

Вот теперь уж с настройкой жесткого диска действительно все. Arch заботливо выбирает пятый пункт в меню установки 5 Return to Main Menu.

Продолжаем устанавливать наш замечательный Linux.

В главном меню установки выбран пункт 4. Select Packages . В нем нам нужно выбрать ничто иное как base.

После выбора base появится перечень входящих в установку пакетов. Не парим себе лишний раз мозг, жмем OK.

Попадаем на 5-й пункт меню Install Packages , которым запускается установка пакетов. Если вы видите вот это

и CD старательно шуршит, значит все нормально, ждите окончания установки.

Все, уважаемый читатель, процесс установки Arch Linux закончен, приступаем к конфигурированию. Все, что мы сейчас наконфигурируем, можно будет поправить в любой удобный момент.

6. Configure System

На следующем экране нам предложат выбрать редактор для изменения текстовых файлов конфигурации. Выбираем nano и не парим мозг.

После выбора редактора текстовых файлов мы видим список всех файлов конфигурации. Но не пугайтесь, править нужно лишь часть из них.

Основной конфигурационный файл – /etc/rc.conf

Выбираем соответствующий пункт и нажимаем Enter.

Редактор nano загружает содержимое текстового файла rc.conf, расположенного в папке файлов конфигурации etc.

Для начала мы настроим сеть. Переходим к разделу NETWORKING в файле и внимательно впиваемся взглядом в строчки

#eth0="eth0 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255" eth0="dhcp" INTERFACES=(eth0) gateway="default gw 192.168.0.1" ROUTES=(!gateway)

Значит так, если мы настраиваем сервер, то речи о динамической раздаче IP-адресов быть не может. Поэтому мы убираем комментирующую решетку перед первой строкой и ставим ее на вторую строчку. Получается вот что:

Eth0="eth0 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255" #eth0="dhcp"

Теперь развлекаемся с первой строкой. Вместо 192.168.0.2 прописываем IP-адрес сервера. Мой сервак находится в локальной сети и имеет адрес 192.168.0.200 (именно его я и указываю).

netmask 255.255.255.0 Это нас устраивает. Данный формат маски говорит о том, что в подсети могут находится 254 компьютера (первые три составляющие IP-адреса у них фиксированы, а последняя изменяется от 1 до 254). Ну и ладно.

broadcast 192.168.0.255 – это IP-адрес для широковещательных пакетов. Если на данный IP будет отправлен пакет, то его получат все компьютеры подсети. Ну и хорошо, нас это устраивает.

В результате имеем следующее вместо первой строки:

Eth0="eth0 192.168.0.200 netmask 255.255.255.0 broadcast 192.168.0.255"

Крутим ниже, к строке

Gateway="default gw 192.168.0.1" ROUTES=(!gateway)

Первая строка указывает шлюз. Моя локальная сеть организована таким образом, что перед сервером расположен роутер, имеющий адрес 192.168.0.1, его я и указываю в качестве шлюза. Если в вашем случае, никакого роутера нет, то администратор сети должен сообщить вам IP-адрес шлюза, его здесь и укажете.

Во второй строке нам нужно, всего на всего, убрать восклицательный знак:

ROUTES=(gateway)

С этим файлов все. Жмем ctrl+o для записи и ctrl+x для выхода.

Следующим конфигурационным файлом, к которому мы проявим интерес, будет /etc/resolv.conf

Здесь все очень просто. В формате nameserver ip необходимо указать DNS.

Прямо под строкой #nameserver дописываем следующее

nameserver 192.168.0.1

nameserver 8.8.8.8

Кто такой 192.168.0.1 вы, уважаемый читатель, уже знаете.

8.8.8.8 – это DNS от Google. Указываю его, в качестве альтернативного.

Следующий интересный файл – /etc/hosts.deny

По умолчанию в этом файле запрещаются все соединения. Поправить это можно закомментировав строку ALL: ALL: DENY, т.е. поставить # перед фразой решетку, вот так:

# ALL: ALL: DENY

Сохраняем файл и выходим.

Следующим шагом мы подкорректируем зеркала для обновления, содержащиеся в файле /etc/pacman.d/mirrirlist

Прокручиваем файл к разделу Russia и раскомметируем строчки с адресом yandex.ru

Сохраняем, закрываем.

Последняя операция – установка пароля для супермощного пользователя root. Задайте его, и не забудьте.

Вводя пароль знайте, что в Linux символы паролей не закрываются звездочками, они просто вообще не показываются (чтобы нельзя было подсмотреть даже количества знаков в пароле и потом как-то их подобрать).

Жмем Done в самом конце.

Изменения применяются.

Последнее, что нам нужно будет сделать – это выбрать загрузчика. Пункт 7 Install Bootloader .

Здесь все просто, не парим мозг, выбираем Grub. После его выбора мы увидим содержимое файла конфигурации загрузчика. Он нас не интересует, сразу выходим оттуда.

Теперь нам нужно выбрать, куда устанавливать загрузчик. Выбираем пункт /dev/sda

Все, уважаемый читатель, 8 Exit Install .

Поздравляю, Arch Linux стоит, вводите команду reboot и не забудьте вынуть загрузочный диск из СДРОМА. Кстати, СДРОМ не откроется, пока не начнется перезагрузка, потому что диск примонтирован, вот такие особенности Linux.

Все, Linux загрузился и приглашает начать работу с ввода логина и пароля. А вы что ожидали?

Логинимся как root (пароль от рута вы сами завали, так что вводите, если не забыли).

Поздравляю, вы залогинились как root (по крайней мере, я точно залогинился).

Теперь проверим работоспособность сетевого соединения. Я надеюсь, вы подключили компьютер к локальной сети обычным сетевым проводом.

Тогда все должно работать, пишем команду ping google. com и наблюдаем веселую картину удачных пингов.

Когда картина пинга наскучит, нажмите ctrl+c.

Если ping у вас не проходит, то убедитесь в том, что вы получали в детстве достаточно витаминов.

Наконец-то теперь мы можем установить программу для удаленного SSH доступа через Putty. Помните я об этом ?

Теперь мы узнаем как это все настраивается на стороне сервера.

Установив SSH-доступ я смогу удаленно управлять сервером и записывать видеоуроки, делать обычные скрины а не сидеть перед монитором с фотоаппаратом.

У Arch есть такая замечательная штуковина, как менеджер пакетов. Называется он pacman. Назначение pacman-а – установка необходимых программ, их обновление, обновление всех имеющихся программ, установка необходимых компонентов для вновь устанавливаемых программ. В общем, замечательная вещь. Подробнее о pacman можно читать .

А пока введем команду pacman - Syu , которая синхронизует данные о пакетах на серверах Яндекса.

После завершения синхронизации мы установим программу для SSH доступа. Называется она openssh. Установка происходит командой pacman -Sv openssh

Pacman скачает и установит программу и все недостающие компоненты. Почему-то с первого раза у меня обновился только лишь pacman, а openssh не установился. Поэтому я повторяю команду pacman -Sv openssh

На этот раз попытка увенчалась удачной установкой программы.

Вот где расположен файл запуска /etc/rc.d/sshd

Для того, чтобы запустить openssh, необходимо ввести следующую команду:

/ etc/ rc. d/ sshd start

После чего будет возможен SSH-доступ к серверу.

Для доступа к серверу мы будем использовать программу Putty. Скачать ее можно либо с официального сайта , либо с Deposit Files (*.zip, 243 КБайта).

Вводим IP-адрес сервера (в моем случае 192.168.0.200) и подключаемся по SSH.

После соединения, в окошке Putty мы видим все тоже самое, что и на мониторе сервера. Клавиатуру и монитор сервера можно отодвинуть подальше, в ближайшее время они нам не понадобятся.

Напоследок мы обновим нашу систему замечательной командой pacman – Syu

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

Пока на этом все. До следующей встречи предлагаю вам, уважаемый читатель, потыкать в google вопросами типа «основные команды linux» много всего забавного найдете.

Знакомьтесь - Демьян. Начинающий русский блогер, которому надоело постить свои записки на Тамблере и он хочет свой сайт. Вот только Демьян - жадный. Настолько жадный, что ему жалко $3 в месяц за хостинг.

Однажды, Демьяну сказали, что можно сделать хостинг прямо на своем компьютере. Да не просто хостинг, а целый выделенный сервер, который потянет не только блог, но и интернет-магазин, где Демьян будет продавать свои футболки, шапки и прочий мерч.

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

Подготовка

Превратить компьютер в хостинг Демьян сможет где-то за час. Но сначала ему нужно подготовиться.

Компьютер

Компьютера у Демьяна нет - есть только ноутбук, с которого он сидит ВК и листает фоточки в Инстаграме. Даже Демьян понимает, что делать хостинг на старом ноутбуке, который он везде таскает за собой - как-то некомильфо.

Покупать компьютер в местных магазинах Демьян не хочет - все знают, что местные цены выше! Поэтому он заходит на буржуйский http://pcpartpicker.com и, оплакивая свои кровные, собирает себе системный блок. Останавливается Демьян на двухъядерном Pentium G4560 и 4 ГБ ОЗУ, что обходится ему в $250. Еще $50 он тратит на доставку.

Увидев цены на Виндоус, Демьян падает в обморок. Но с Линукс Демьян вообще не дружит и знакомиться не хочет. Он скачивает пиратскую Виндоус и устанавливает её, обещая купить лицензию потом - с первой прибыли.

Интернет

Без хорошего интернета Демьяну не обойтись - как же еще к нему будут заходить толпы восторженных читателей? А нынешние 10 Мбит/с даже YouTube ему нормально посмотреть не дают.

Тоскливо вздыхая, Демьян ходит по провайдерам в поисках дешевых 100 Мбит/с. Узнав, зачем ему такой канал, все провайдеры тут же тыкают пальцем в Соглашение Пользователя и предлагают только специальные тарифы для хостинга - в 5 раз дороже. А некоторые вообще хостинг не разрешают. Наконец, Демьян находит нового провайдера, который готов подключить его хостинг за 500 рублей в месяц - но только на первое время.

Там же Демьян подключает выделенный IP-адрес. Это обходится еще в 100 рублей в месяц.

Установка серверного ПО

Собрав свою машину и подключив к ней найденный на барахолке монитор, Демьян наконец приступает к работе. Почитав форумы, он узнаёт - чтобы его хостинг работал с современными CMS, нужны специальные программы - сервер Apache, PHP, MySQL, PHPMyAdmin и т.д.

Можно скачать их и установить по одной - но это долго, сложно и может привести к конфликту версий. К счастью, Демьяну показывают набор программ, который всё установит и настроит за него - Wampserver .

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

Рентабельность

Давайте посчитаем, сколько денег Демьян умудрился сэкономить:

  1. Электроэнергия . Средний тариф на электроэнергию по России - 5,31 р/кВт*ч. Средний компьютер потребляет около 600 Вт*ч. Это значит, что только за электричество Демьян платит 2300 рублей в месяц.
  2. Интернет. 100 Мбит/с стоят Демьяну 500 рублей в месяц + 100 за IP. И ему еще очень сильно повезло с щедрым провайдером.

Отсюда получаем, что выделенный сервер обходится Демьяну в 2950 рублей в месяц.

При этом:

  1. Нет техподдержки. Все проблемы решает сам Демьян, пользуясь инструкциями и форумами.
  2. Демьяну снятся кошмары о счетах за электроэнергию. Хорошо еще, что у него однотарифная система и ему не приходится платить за перерасход.
  3. Наличие блога в интернете зависит от городской электросети.
  4. Нелицензионная Windows на сервере вынуждает Демьяна дергаться при каждом дверном звонке.

А Unihost предлагает примерно такой же сервер всего за 2500 рублей в месяц, без всех вышеперечисленных проблем. То есть Демьян «обул» себя сам на 450 рублей в месяц, а также получил проблемы с законом.

Похожие статьи