Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
tristamoff
7 лет назад

Программируем golos.io имея только Windows и большое желание (часть 1, подготовка среды)

В этом цикле статей я максимально подробно расскажу как поднять инфраструктуру для установки клиента golos.io на домашнем компьютере, работающим под управлением операционной системы(ОС) Windows(или MacOS).

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

Немного теории.

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

С чего начать

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

http://i.imgur.com/2Du2Zn1.png
Под оперативную память я выделю 10Gb

https://i.imgur.com/HBt5kCX.png
Жёсткий диск я создаю новый

http://i.imgur.com/qg8RQqb.png

http://i.imgur.com/uC1sGuk.png
Я выберу динамический размер.

http://i.imgur.com/1ea1QS0.png
Под жесткий диск я выделю 20Gb. Если вы выделите 10 - тоже по идее хватит, но лучше с запасом.

http://i.imgur.com/p2CNGOH.png
Теперь виртуальная машина готова. Чтобы поставить на неё Linux - нужно скачать его образ.
Я скачивал тут http://www.kubuntu.org/getkubuntu/ версию 16.10

http://i.imgur.com/MZaBvzS.png
Вы можете скачать и любой другой дистрибьютив линукса, но с ним могут быть какие-нибудь отличия в установке и работе(может и не будут).
После того, как вы скачали образ - указывайте его как оптический диск(да да, как реальное железо).

http://i.imgur.com/lQZvqEI.png
Выставляйте его загрузку после харда, чтобы после завершения установки и перезагрузки ОС грузилась с жесткого диска и не пришлось “экстренно вытаскивать оптический диск из привода”.

http://i.imgur.com/SwR6sp1.png

Установка

Всё готово, теперь можно устанавливать линуху.
Запускаем виртуальную машину.

http://i.imgur.com/yJO18NZ.png
Она сразу подхватит установочный диск и предложит установить с него систему. То что нам и нужно.
Вы должны увидеть такой экран.

http://i.imgur.com/y1dKG8S.png

http://i.imgur.com/54lcNba.png
Выбираем язык и жмём Install Kubuntu

http://i.imgur.com/BQ86lMI.png

http://i.imgur.com/0udXzUy.png
Как правильно разбить диск - честно скажу незнаю. Желательно разбить его на 2 части - одну для системы, вторую для /home, вроде бы как-то так. Если не уверены - оставляйте один диск, всё равно это тестовая машина.

Если кто подскажет как правильно разбить и отформатировать диск - буду очень признателен


https://i.imgur.com/wlrlYYG.png
Имя пользователя указываем user(или любое другое, кроме root - он уже занят), пароль какой вам удобен, слишком замороченный смысла ставить нет, сервер ведь не в сети.
В остальном установка достаточно простая, сложностей возникнуть не должно.

http://i.imgur.com/xmg1wfP.png

http://i.imgur.com/s7upMxS.png
После завершения установки потребуется перезагрузка. Смело на неё соглашаемся. Если с загрузкой возникают какие-то трудности - можете выключить и включить виртуалку.

https://i.imgur.com/Fjp4dq0.png
Если это не поможет - ниже я написал как обновить графический интерфейс, хотя на самом деле он нам даже не нужен.

http://i.imgur.com/ihgmm7c.png

Настройка

В первую очередь устанавливаем SSH, по которому будем подконнекчиваться к этому серверу(мы ведь делаем сервер, да).
Открывайте терминал(найдёте в “пуске”) и пишите
sudo apt-get update

http://i.imgur.com/dK3vrhk.png
Потом
sudo apt-get install ssh
И заодно:
sudo apt-get install mc
В первый раз введите пароль, потом он запрашиваться не будет.
На этом пока всё, выключайте виртуальную машину.

Возвращаемся к настройкам виртуальной машины.

Открываем в настройках вкладку сеть. Там в “Адаптер 1” указываем “Сетевой мост”(остальное не трогаем).

http://i.imgur.com/euGa6NJ.png
В “Адаптер 2” указываем “Виртуальный адаптер хоста”(остальное не трогаем).
Третий и четвёртый адаптеры выключены.

https://i.imgur.com/aUUCDIf.png
Теперь вновь запускайте виртуальную машину, ОС теперь запустится с харда.
Если у вас вылезет ошибка о конфликте IP адресов - ничего страшного, закрываем её и всё будет работать.

https://i.imgur.com/qFOhu13.png

Сейчас небольшое отступление. Работать с виртуальной машиной я буду по SSH с основной ОС, так как виртуальная машина реально подтормаживает и работать в ней очень неудобно. Почему так - я незнаю. Мне это и не важно по большому счёту, визуальная оболочка мне не нужна.

Если у вас ничего не сломалось и не умерло - то Ubuntu успешно загрузилась.
Если отвалилась графическая оболочка - я поправил её так(пишем это в терминале):
sudo add-apt-repository ppa:kubuntu-ppa/backports
sudo apt update
sudo apt full-upgrade

Сейчас нужно отредактировать настройки сети. Для этого запускайте консоль(терминал).
Открывайте консоль и пишите
sudo mcedit /etc/network/interfaces
У вас откроется окно редактирования конфига сети
Закомментируйте всё что там есть(решетки вначале строки) и напишите
auto eth1
iface eth1 inet dhcp

https://i.imgur.com/HgIf35N.png
На скрншоте не очень видно, но думаю вы справитесь
Затем F2 - сохранить и F10 - выход.

Теперь нужно перезагрузить виртуальную машину

После перезагрузки напишите в терминале
ifconfig
Система вывалит вам данные о сетевом подключении. Ищите там IP адрес машины.

https://i.imgur.com/QzwBUSL.png
В моём случае это 192.168.1.136 - это адрес сервера в моей локальной сети, к нему я и буду подключаться.

Как говорил чуть выше - работать с виртуалкой я буду по SSH из под винды. Самый удобный SSH клиент для Windows - это WinSCP. Скачиваем тут
Клиент также бесплатен.
Устанавливаем его и запускаем. В левой части его окна будет только пункт New Site. Выбираем его и в правой части вписываем:

  • Host name - IP из ifconfig
  • User name - указанный вами логин в процессе установки(у меня это user)
  • Password - пароль от user
  • Port number - оставляем 22

Как заполните - жмите Save(отметьте “Save password”)
Всё, теперь если сделать двойной щелчок по сохранённому хосту - вы подключитесь к нему по SSH.

http://i.imgur.com/egEHdoN.png
Программа предложит закэшировать ключ сервера-соглашаемся.

http://i.imgur.com/S7H5Gzi.png
После этого у вас откроется проводник - в левой части ваш компьютер, а в правой домашняя директория пользователя, под которым вы законнектились

http://i.imgur.com/F072yl5.png
После подключения нажмите Ctrl+P - и запустится PuTTY(консольная утилита). С помощью неё мы будем общаться сервером.

http://i.imgur.com/QMJsulf.png
Если у вас это получилось - значит вы успешно создали сервер на виртуальной машине и подключились к нему.
Если вы выключаете(или перезагружаете) компьютер - то конечно надо будет потом запустить виртуалбокс и в нём запустить виртуальную машину.
Теперь на базе этого сервера можно развернуть клиент golos.io, чем мы и займёмся в следующем уроке.

Заключение

На этом данный урок я хотел бы завершить, он и так получился достаточно раздутым из-за фото. Но зато всё максимально подробно, надеюсь вам всё понятно. Если что-то неясно - спрашивайте в комментариях.
В следующем уроке мы сделаем форк клиента golos.io и запустим его на этой виртуальной машине.

Так что если вам интересно как устроен клиент голоса и вы хотите подёргать его за сиськи кишки - можете за выходные неспеша проделать всё что описано в этом уроке. Дальше я покажу как запустить копию голоса и даже отправить свои правки разработчикам клиента, и они будут работать. @b1acksun, @sheriff, @pav не дадут соврать)

0
69.158 GOLOS
На Golos с January 2017
Комментарии (28)
Сортировать по:
Сначала старые