«Деньги, карты, два ствола» (linux, kodi, tv-box)

— Мамо! Купіть мені плєєр!
— Який тобі плєєр, доцю? Ти ще коньків не сточила!..

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

Но так уж вышло, что телик я себе купил … обычный (хорошо, хоть с HDMI-входами!). И это — лишь одна из причин всего того «перфоманса», который описан в этой заметке. Телевизор мой стоит себе на стенке в зале. Рядом разместился AV-ресивер (музыку тоже люблю послушать иногда), колонки, саб, одним словом — «всё пучком». И лишь компьютера там нет! Ну и последний «гвоздь в крышку» — моя домашняя «файлопомойка» (сервер, на котором хранятся все те самые файлы медиа-контента) живет на антресоли, образно говоря, «на другом краю мира» (квартиры). И никаких кабелей между этими локациями не было проложено по определению (ну кто мог себе такое даже представить в конце прошлого века, когда делался ремонт квартиры?!). Ну и последнее — музыку  я люблю «пускать» на ресивер «по цифре», но при этом, из цифровых входов у моего «старичка» имеются лишь S/PDIF и его оптическая разновидность — TOSLINK. А фильмы жена любит смотреть со звуком из телевизора («А чего оно так громко гупает с твоих колонок?»). Ну вот вроде как и закончили с «вводными»…

Итак, первый плейер, на который были возложены обязанности развлекать нас, представлял собой мини-ПК Raspberry-PI, с установленной на нем дополнительной платой PiFi-Digi (цифровые выходы звука S/PDIF и TOSLINK). Вот такая себе «сладкая парочка»:

Ах да, кроме «вышеперечисленных товарищей» в процессе также участвовали:

  • USB-адаптер беспроводной сети Tp-Link TL-WN725N (надо ж было как-то к «файлопомойке» подключаться)
  • Беспроводная «аэро-мышь» i7 Rii mini (в качестве пульта ДУ)

Установленное на «малину» ПО представляло собой (в разное время) различные дистрибутивы Linux, с установленной на них программой медиа-плейера Kodi («в девичестве» называвшейся XBMC, и к которой я за эти годы, можно сказать, «прикипел душой»). И все было бы хорошо, если бы не те самые «НО», которые по определению есть всегда и везде:

  • Компьютер сей особой производительностью не блистал. Это была модель из «более ранних» версий (model B): одно ядро частотой 700 МГц, памяти 512 Мб. Возможно, текущие версии «малины» (например, Raspberry-PI model 3B+) работали бы пошустрей, но тратить деньги на «эксперименты по проверке теорий» абсолютно не хотелось. Кроме того, и плату S/PDIF тоже пришлось бы покупать новую…
  • Дизайн изделия (именно такой, как и показан на фото выше, без корпуса) тоже особо глаз не радовал (не столько мой глаз, сколько жены).
  • Были еще какие-то мелочи, но, видимо, настолько незначительные, что уже и из памяти выветрились.

Железо

Вдруг как-то неожиданно освободился мини-пк, работавший моей домашней «файлопомойкой» (мини-сервером, выполнявшим разные задачи, в том числе и хранения медиа-контента). Вот такой, как показан на картинках ниже (разве что, wi-fi адаптера в моем не было, и как следствие, антенки — тоже):

А главный «сюрприз» ждал меня внутри этого компьютера — при тщательном осмотре его материнской платы на ней было обнаружено место для установки передатчика TOSLINK (оптического варианта S/PDIF). Использованный в компьютере чип аудио-кодека ALC662 от ф. Realtek имеет соответсвующий выход. Последующая проверка цепей показала, что все необходимые подключения и элементы на плате присутствовали, и не хватало лишь самого передатчика! На следующей картинке место для установки TOSLINK видно (в левом нижнем углу платы, пониже светло-зеленого гнезда аналогового аудио-выхода):

Отлично! Передатчик TOTX179 был куплен и распаян на плате, в корпусе мини-пк было «прогрызено» отверстие под него, и новый медиа-плейер был практически готов! Оставалось лишь поставить на него ОС и программу-проигрыватель.

«Муки выбора» (софт)

Глобально «что устанавливать» — вопрос не стоял абсолютно! Все тот же Kodi поверх все того же Linux-а. Ответ на вопрос о том, «какой Linux устанавливать», мне тоже известен уже давно — тот, который знаешь, иначе «танцы с бубном» затянутся надолго! А «знакомы» мне два дистрибутива — Ubuntu и Debian. Вопрос был лишь в том, «что где доступно и почем?». Речь о том, что версии плейера Kodi, включенные в различные дистрибутивы их авторами, во первых, отличаются, а во вторых, не дают «гибкости выбора» (как вы можете увидеть в приведенной ниже таблице, в официальных репозиториях присутствует лишь по одной версии Kodi для каждого из релизов). Но тут мною для Ubuntu были найдены так называемые PPA на сервере launchpad.net, «и всё сразу-же стало на свои места»! 🙂

Ниже приведена таблица, в которой указано, какие версии Kodi доступны в разных версиях Linux-ов (для Ubuntu рассматривались только LTS-релизы). На всякий случай уточню — приведенная в таблице информация была актуальна на момент написания данной заметки.

Дистрибутив Релиз Доступность Kodi в репозиториях
Официальный PPA
Ubuntu 16.04 LTS (Xenial) 15.2 16.1 (kodi-old)
17.6 (stable)
18.0 (unstable)
Ubuntu 18.04 LTS (Bionic) 17.6 17.6 (stable)
18.0 (unstable)
Debian 8 (jessie) 16.1 (backports)
Debian 9 (stretch) 17.1

По итогам «исследований» мною был выбран дистрибутив Ubuntu, и вот почему: использование PPA предоставляло возможность установить 2 или 3 разных версии проигрывателя Kodi, не меняя при этом саму ОС. Причем, в плане самого проигрывателя Kodi мои личные предпочтения склонялись к версиям 16 и 18. Поводом для такого моего выбора послужила опция в настройках звука, которая в 16-й версии Kodi присутствовала, в 17-й версии её убрали, а в 18-й — снова вернули! Речь идет о возможности «задрать» уровень громкости центрального канала, когда плейер выполняет т.н. downmix из многоканального (5.1) звука в двухканальное стерео. Эта штука очень сильно помогает при просмотре на телевизоре (имеющем лишь стерео-динамики) фильмов с такими «качественными» переводами, при которых голоса актеров «озвучки» выведены лишь в центральный канал да еще и со слабым уровнем, в результате чего их очень плохо слышно на фоне «громогласных» звуковых эффектов. А с учетом того, что иногда «задирать центр» приходится аж до уровня в +10…+16 дБ, то лично для себя эту опцию я считаю весьма и весьма полезной! Настройка параметра в 16-й версии Kodi показана на скриншоте:

Релиз Ubuntu мною был выбран такой: 16.04 LTS, и вот почему. Во первых, в нём возможно установить любую из ТРЁХ различных версий проигрывателя Kodi (естественно, речь про установку именно с помощью PPA). А во вторых — настройка сетевых адаптеров в нём осуществляется ещё «по-старому». Не скажу, что я не нашел для 18.04 LTS информацию о том, как в ней вернуться к «старому» ifupdown вместо «нового» netplan, или не нашел, что и как нужно прописать в настройках netplan для запуска моего адаптера TL-WN725N. НО, под управлением netplan он все равно стартовать не захотел, а менять в «новом» дистрибутиве «новый» netplan на «старый» ifupdown я посчитал просто «не красивым». Кстати, в случае использования Network Manager-а всё настраивалось, подключалось и работало на ура, но в том-то и дело, что в мои планы его использование не входило, о причинах чего будет сказано в следующем абзаце…

Дело в том, что для работы Kodi не нужны никакие «графические рабочие столы» (такие как Gnome, KDE, и т.п.). У него есть возможность работать в т.н. «standalone» режиме, для которого — да, нужен X-сервер, но вот desktop-ы всякие там — совсем не обязательны! А за то время, что пользуюсь линуксами разными, я уже успел убедиться, что «графический десктоп» — это самая «прожорливая» часть ПО в данных системах! Поэтому, ставить на свой плейер я режил серверную версию Ubuntu — ту самую, которая совсем без графики! Расчитывая при этом впоследствии «досыпать» поверх «голой консоли» лишь самый необходимый минимум. И вот именно по причине отсутсвия графического десктопа никакой Network Manager моему плейеру просто «не светил»!

Установка ОС

Установка ОС Ubuntu в интернете описана столько раз, что останавливаться на этом не вижу смысла. Пошли на сайт, скачали образ диска (iso-файл), записали его на «болванку» или флешку, загрузились с нее и установили. Единственное, на всякий случай повторюсь — лично себе я устанавливал 64-битную версию server-а Ubuntu 16.04.5 LTS. И еще одна настоятельная рекомендация — устанавливая ОС, не используйте слово «kodi» в качестве логина (юзер с таким именем будет создан позже, при установке программы Kodi).

Настройка беспроводной сети

Считаю нужным уточнить — всю установку и настройку плейера я проводил, подключив его к сети (роутеру) ETHERNET-КАБЕЛЕМ. Связано это с тем, что так БАНАЛЬНО ПРОЩЕ! Не могу сказать, что современные версии Ubuntu «проблемны» в плане поддержки большинства популярных (наиболее массово производимых) Wi-Fi-адаптеров, но сам я никогда не возился с их настройкой именно во время установки ОС. Проще всё проделать, подключившись кабелем. И лишь потом настраивать Wi-Fi (естественно, продолжая «висеть на кабеле», чтоб не отвечать на вопросы типа «А как я могу скачать пакеты, если к интернету не подключен?» 🙂 )…

Должен сделать еще одно краткое отступление. Естественно, описываемые в этой заметке действия проделывались не раз, не два, и не двадцать два. И лишь по итогам всех этих (за)нудных «экспериментов» была написана статья, которая теперь выглядит как «просто раз, два, три…». В ходе этих «экспериментов» действия предпринимались самые разные, и далеко не всегда действительно необходимые. А главное, потом было сложно понять, лучше стало после них, или хуже. Потому что «всё продолжало работать также, как и до того как…».

И вот сейчас речь пойдет именно о таком «сомнительной необходимости» действии — установке «из исходников» драйвера для моего Wi-Fi-адаптера. На всякий случай напомню, мною использовался USB адаптер Tp-Link TL-WN725N с чипом RTL8188EUS от Realtek внутри. Должен сразу же добавить — Ubuntu сама распознает указанный адаптер и сама устанавливает драйвер для него. Но я в эти «дебри» с установкой драйвера «из исходников» полез на том этапе, когда у меня в Ubuntu 18.04 LTS никак не получалось настроить подключение к беспроводной сети в программе netplan (подумал, «А вдруг поможет?»). По факту — не помогло, но инфа осталась, вот и выкладываю ее тут. Итак, чтобы установить драйвер на RTL8188EUS выполните следующее (приведены команды, которые необходимо выполнить в консоли):

  1. Установите необходимые дополнительные пакеты:
sudo apt-get update
sudo apt-get install -y linux-headers-$(uname -r) build-essential git
  1. Скопируйте исходники драйвера:
git clone https://github.com/lwfinger/rtl8188eu
  1. Перейдите в папку с исходниками:
cd rtl8188eu
  1. Выполните сборку и установку драйверов:
make all
sudo make install
  1. Включите использование системой модуля установленного вами драйвера:
sudo insmod 8188eu.ko

После перезагрузки ОС должна начать использовать установленный вами драйвер вместо встроенного. Но повторюсь, разницы в работе Wi-Fi после смены драйвера лично я не заметил, поэтому считаю установку драйвера не обязательной.

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

  1. Для этого в консоли введите команды:
sudo apt-get update
sudo apt-get install -y wireless-tools wpasupplicant
  1. Настройте параметры подключения к беспроводной сети (предполагается, что ваша сеть использует WPA-PSK или WPA-PSK2 шифрование). Для этого запустите редактор, указав для редактирования соответсвующий файл настроек:
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
  1. Редактор должен сообщить вам, что он открыл [Новый файл]. В файл впишите такие строки:
country=GB
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
   ssid="тут_впишите_SSID_вашей_сети"
   psk="тут_впишите_ключ_шифрования_вашей_сети"
}

Естественно, что SSID и пароль (выделенные выше красным цветом) вы должны указать СВОИ собственные! Двухбуквенный код страны, при желании, также можете указать свой (список кодов можно тут просмотреть в таблице). Правда, я не заметил особой разницы от его смены. Выполнив это, сохраните файл (нажмите F3 и затем подтвердите имя файла для сохранения, нажав Enter) и выйдите из редактора (нажав F2).

  1. И завершающий шаг — настройка сетевых параметров адаптера в файле /etc/network/interfaces. Правда, перед этим вам нужно уточнить какое «имя» система присвоила вашему беспроводному адаптеру. Это можно сделать следующей командой:
iwconfig

В ответ вы должны получить список всех сетевых адаптеров, которые ОС обнаружила в вашем компьютере. Напротив тех  из них, которые не являются беспроводными, будет указано «no wireless extensions». По поводу же того адаптера, который программа опознает как беспроводной, будет указано нечто наподобие такого:

wlx30b5c216a241  unassociated  ESSID:""  Nickname:"<WIFI@REALTEK>"
          Mode:Auto  Frequency=2.412 GHz  Access Point: Not-Associated   
          Sensitivity:0/0  
          Retry:off   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

В показанном примере видно, что имя беспроводного сетевого адаптера — wlx30b5c216a241 (выделено мной). Вот именно для него и нужно прописать настройки в файл /etc/network/interfaces. Откройте данный файл в редакторе:

sudo nano /etc/network/interfaces

Впишите в конце файла (не удаляя и не меняя остальные, уже имеющиеся там строки) следующее:

allow-hotplug wlx30b5c216a241
auto wlx30b5c216a241
iface wlx30b5c216a241 inet dhcp
#wireless-power off
	wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

Естетсвенно, редактируя файл, «имя» адаптера указывайте то, которое будет использовано в вашей системе.

Вписанные вами в файл команды означают следующее: адаптер допускает «горячее подключение» (1-я строка), должен запускаться «автоматом» при старте системы (2-я строка), получать все настройки (IP-адрес, шлюз, DNS) автоматически, по DHCP-протоколу (3-я строка) и для подключения к беспроводной сети использовать настройки из соответсвующего файла (5-я строка). 4-я строка запрещает управление питанием для данного адаптера (в том смысле, что драйверу адаптера запрещено снижать мощность передатчика Wi-Fi-радиомодуля с целью экономии энергии), но чтобы данная директива начала работать, ее нужно «раскомментировать» (удалить «#» в начале строки).

  1. Сохраните изменения и выйдите из редактора.

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

Установка Kodi

Для установки Kodi на Ubuntu-server нужно выполнить несколько действий, а именно:

  • Добавить PPA репозитория Kodi на сервере launchpad.net;
  • Установить X-server;
  • Установить Kodi;
  • Создать новый Unit для Sysytemd, который будет запускать Kodi как standalone-демон при запуске ОС;
  • Создать новое правило для polkit, которое позволяет неавторизованному пользователю управлять перезагрузкой/выключением системы (это добавит соответсвующие кнопки в меню Kodi);

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

Чтобы воспользоваться данным скриптом и установить Kodi с его помощью, выполните следующее:

  1. Установите необходимый пакет:
sudo apt-get update
sudo apt install git -y
  1. Клонируйте скрипт автора с сайта GitHub на свой компьютер:
git clone https://github.com/abacao/Boot2Kodi.git
  1. Перейдите в папку со скриптом:
cd Boot2Kodi
  1. ВНИМАНИЕ — ЭТО НЕ ОБЯЗАТЕЛЬНЫЙ ШАГ! Так как по умолчанию этот скрипт подключает т.н. «stable»-ветку репозитория Kodi, то в результате его выполнения на компьютер будет установлена текущая «стабильная» версия программы, а именно — 17.6 (учтите, что данная информация была актуальна на момент написания заметки, при выходе новых версий проигрывателя наверняка всё изменится, поэтому, уточните свежую раскладку по версиям на странице проекта на сервере launchpad.net или тут). Если вы хотите установить именно текущую стабильную версию программы Kodi (17-ю), просто пропустите этот шаг и сразу переходите к 5-му пункту! Если же вы хотите установить Kodi версий 16.х (предыдущую) или 18.х («нестабильный» релиз-кандидат), то тогда вам нужно будет выполнить следующее:

Откройте файл скрипта в редакторе:

nano install.sh

Найдите в нем такую строку (где-то в начале файла):

add-apt-repository ppa:team-xbmc/ppa -y

И отредактируйте её. Если вы хотите установить Kodi версии 16.х, измените ее так, чтобы строка стала выглядеть следующим образом:

add-apt-repository ppa:team-xbmc/kodi-old -y

Если же вы хотите установить Kodi версии 18.х, то строку нужно привести к такому виду:

add-apt-repository ppa:team-xbmc/unstable -y

Сохраните изменения и выйдите из редактора.

  1. Запустите скрипт на выполнение:
sudo sh ./install.sh

По окончании работы скрипта программа Kodi будет установлена и запущена.

Звук — донастройка и метод переключения

Как уже было сказано в начале заметки, в моем случае звук проигрывателя должен был выводиться «наружу» двумя различными способами. При просмотре фильмов — по HDMI на телевизор. А при прослушивании музыки — по S/PDIF (TOSLINK) на AV-ресивер. Но тут меня поджидала «засада» — Kodi видела только лишь два выхода (а главное — ни одного из тех, что были нужны мне!):

Причина «фокуса» крылась в программе pulseaudio — это она предоставляла проигрывателю информацию о всего двух возможных способах вывода звука. В случае, если бы на компьютере был установлен какой-нибудь «графический десктоп», в нем присутствовали бы средства для настройки предпочтений из числа ВСЕХ имеющихся в компьютере аудио-устройств. Но увы, в моём распоряжении были сервер и «голая консоль» на нём! Решением оказалось «грохнуть» pulseaudio (и в таком случае Kodi использзовал бы сведения, предоставляемые другой программой аудио — alsa). И как показала дальнейшая проверка — в таком случае список для выбора оказывается гораздо шире:

Естественно, этот вариант устраивал меня намного лучше — в нем были доступны к  выбору нужные мне и HDMI, и S/PDIF!

Интернет предлагал мне вообще полностью удалить программу pulseaudio с компьютера. Но я воспользовался другими найдным советом — просто запретить pulseaudio сканирование аудио-устройств. И этого оказалось достаточно! Чтобы настроить систему таким образом, нужно выполнить следующее:

  1. Откройте в редакторе файл настроек программы pulseaudio:
sudo nano /etc/pulse/client.conf
  1. Найдите в файле такую строку:
; autospawn = yes
  1. Отредактируйте ее так, чтобы она стала выглядеть следующим образом:
 autospawn = no
  1. Сохраните изменения и выйдите из редактора.
  2. Перезагрузите компьютер.

Всё! После перезагрузки в настройках Kodi вы увидите максимально полный перечень устройств для вывода звука, имеющихся в вашем компьютере!

Для переключения вывода звука с одного интерфейса (в моем случае, с HDMI) на другой (S/PDIF) интернет настойчиво предлагал мне установить в программу Kodi дополнительный плагин. И я даже установил его! И даже выполнил весь тот «кордебалет», который нужен был для его настройки! Но скажу честно — это была не совсем тривиальная задача! Нужно было найти специальный xml-файл с настройками интерфейса, найти в нем конкретную запись, отредактировать её, дополнительно добавить туда еще какой-то код, скопировать файлы иконок, и т.д. и т.п… Короче говоря — не понравилось мне все это! И поэтому я свою задачу решил совсем иначе — просто создал в программе Kodi еще один (новый) профиль (пользователя)! В каждом из профилей я настроил свой собственный способ вывода звука (а также, и дополнительные параметры): в одном используется HDMI, в другом — S/PDIF! И теперь в случае необходимости я просто переключаюсь из одного профиля в другой (штатными средствами программы Kodi)! В итоге — никакой мороки с правкой xml-файлов…

Кеширование

100500 раз в интернете читал высказывания о том, что «мультимедиа по Wi-Fi — это плохое решение!». Но кабеля у меня как не было (между «файлопомойкой» и плейером), так и нет по сей день! А «киношку» посмотреть какую-никакую охота все-равно.

Еще во времена, когда плейером трудился старенький Raspberry, я нашел описание и настроил по нему кеширование в программе Kodi. И считаю эту возможность большим плюсом — благодаря ей Kodi старается скачать себе в буфер какой-то объем данных наперед. И благодаря буферизации вопроизведение намного меньше подвержено влиянию качества канала передачи данных, чем в случае, когда кеширование не используется. Например, «среднестатистическую» песню Kodi за пару-тройку секунд скачивает в свой буфер целиком и потом воспроизводит её непосредственно из памяти. Есть ли ему при этом какое-либо дело до нестабильности Wi-Fi, думаю, вы догадаетесь сами…

Чтобы настроить кеширование в программе Kodi нужно создать специальный файл настроек и вписать в него ряд параметров. Учтите, что названия параметров в файле для версии 16.х отличаются от таковых для версий 17.х и 18.х! Поэтому, будьте внимательны, выполняя приведенные ниже инструкции.

Чтобы настроить кеширование, выполните следующее:

  1. Запустите редактор, указав для редактирования соответсвующий файл настроек:
sudo nano /home/kodi/.kodi/userdata/advancedsettings.xml
  1. Редактор должен сообщить вам, что он открыл [Новый файл]. В файл нужно вписать настройки, которые будут определять параметры кеширования. Как уже было сказано выше, для разных версий программы Kodi эти строки должны отличаться:

ЕСЛИ ВЫ НАСТРАИВАЕТЕ ПРОГРАММУ KODI ВЕРСИИ 16.Х, то впишите в файл такие строки:

<advancedsettings>
    <network>
	<cachemembuffersize>268435456</cachemembuffersize>
	<buffermode>1</buffermode>
	<readbufferfactor>6</readbufferfactor>
    </network>
</advancedsettings>

ЕСЛИ ЖЕ ВЫ НАСТРАИВАЕТЕ ПРОГРАММУ KODI ВЕРСИЙ 17.Х или 18.Х, то строки должны быть такие:

<advancedsettings>
    <cache>
	<memorysize>268435456</memorysize>
	<buffermode>1</buffermode>
	<readfactor>6</readfactor>
    </cache>
</advancedsettings>
  1. Сохраните файл и выйдите из редактора.

Изменения вступят в силу после перезапуска Kodi (думаю, проще будет перезагрузить сам компьютер).

Параметров три (их значения выделены красным цветом), и не смотря на отличие имен параметров, определяют они одно и то же: первый указывает размер буфера в байтах (в моём мини-пк установлен модуль памяти объемом 2Гб, так что размер буфера я указал равным 256 Мб, но можно было указать и побольше), второй — опредеяет в каких случаях используется кеширование (вариант 1 означает — для любых протоколов и сетей, как локальных, так и «глобальных»), и третий параметр указывает, во сколько раз быстрее программа должна пытаться считывать данные из источника по сравнению с битрейтом самого медиа-файла. Подробнее прочесть о том, что и как можно настраивать в файле advancedsettings.xml, вы можете в Wiki на сайте Kodi.

И вот теперь действительно ВСЁ!…

Ах да,

…вишенка на торте

Чтобы сделать скриншот, можно обратиться к программе Kodi из браузера с «соседнего» в сети компьютера. Для этого вы дожны выполнить запрос на адрес:

http://адрес_компьютера_с_kodi:8080/jsonrpc?request={"jsonrpc":"2.0","id":1,"method":"Input.ExecuteAction","params":{"action":"screenshot"}}

Пару важных замечаний. Во первых, для того, чтобы это работало, в настройках Kodi нужно «Разрешить удаленное управление по HTTP». Во вторых, при выполнении самого первого скриншота программа попросит вас указать папку, в которую их сохранять. И третье — самое грустное: это работает лишь в версиях 16.х и 17.х…

Настройка PPPoE в Ubuntu, когда ADSL-модем настроен как bridge

Оставим в стороне вопросы типа «А не проще ли было настроить модем роутером и не мучиться?». Так было нужно. Цель — средствами консоли (ну не нравится мне network-manager!!!) настроить PPPoE соединение, автоматически стартующее при загрузке компьютера.

Настройка производилась по статье с сайта официальной документации Ubuntu. Стаья расположена по адресу:

https://help.ubuntu.com/community/ADSLPPPoE

Вводная — модем, как и сказано в заголовке статьи, настроен в режиме bridge, в него вписаны значения VPI и VCI, выданные провайдером. Модем подключен кабелем в сетевую плату eth0 компьютера, на котором установлен дистрибутив Ubuntu desktop 12.04.

Итак, запускаем терминал, и в нем вводим команду:

sudo pppoeconf

Вариантов дальнейшего развития может быть два. Первый — неудовлетворительный: пакет pppoeconf не установлен. В таком случае его можно например, поискать и скачать с сайта пакетов Ubuntu  и установить «руками». Также, пакет может присутствовать на том диске, с которого вы устанавливали Ubuntu. Добавьте его в число источников ПО и затем выполните установку.

Второй вариант — благоприятный, пакет pppoeconf  установлен. В таком случае запустится программа настройки PPPoE подключения. Самый первый скрин работы программы в данной заметке не приведен — в нем программа проводит сканирование сетевых адаптеров на предмет наличия модемов. ВАЖНО: на момент запуска программы модем должен быть (а) включен, (б) подключен к линии и (в) подключен к компьютеру! Иначе, программа сообщит, что модемов не найдено и завершит свою работу.

После того, как модем найден, программа выдаст предупредительное сообщение:

С учетом того, что мы все-таки пришли сюда, чтобы настроить новое (а может быть и перенастроить старое) подключение, СОГЛАШАЕМСЯ — щелкаем «ДА».

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

В моем случае (равно как и в 99% остальных), эти дополнительные опции будут вовсе не лишними. Желающие подробнее узнать о сути этих параметров могут (как и предлагается системой) почитать man (8) pppd, ну или ознакомиться с его переводом на русский язык в интернете. Соглашаемся, щелкаем «ДА» и перходим к следующему шагу.

Программа предложит вам ввести имя пользователя:

В этом поле вам нужно ввести тот логин (имя пользователя), который вам выдал провайдер. Будьте внимательны, не допускайте ошибок. Также, дополнительно обращаю внимание ваше внимание на регистр букв, «User» и «user» — это РАЗНЫЕ логины!

Следующий пункт — ввод пароля:

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

Следующий вопрос — об автоматическом добавлении адресов  DNS-серверов провайдера в список к «уже имеющимся в системе», после того, как устанавливается подключение:

СОГЛАШАЕМСЯ! Без этого мы рискуем получить неработающую систему. (Или вы наизусть помните все IP-адреса интересующих вас серверов? 🙂 )…

Следующее диалоговое окно программы предложит установить для ADSL-подключения  размер MTU равным 1452 байтам:

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

Отвечаем «ДА», но при этом пусть вам «на ум пойдет», что на самом деле этого БЕЗ ДОПОЛНИТЕЛЬНЫХ «телодвижений», увы происходить не будет! Об этом также сказано и в той статье с сайта Ubuntu, ссылку на которую я приводил выше. Переживать не стоит, ниже мы еще «поколдуем», чтобы впоследствии все было ОК.

В следующем окне программа предложит установить соединение прямо сейчас:

Выбираем «ДА»,программа выполнит процедуру подключения. Данное меню также предлагает вам запомнить две команды: pon dsl-provider и poff. Первая из них позволит вам вручную в консоли подключаться к провайдеру. Вторая — отключаться.

Должен дополнительно заметить, что если ранее вы ошиблись при вводе логина и/или пароля, то подключение произойдет как и положено (все будет выглядеть отлично!), но при этом доступ в интернет будет отсутствовать. По крайней мере, у меня именно так и было (я не доглядел в пароле, что одна из букв была введена мной не в том регистре, и в итоге лишние полчаса был вынужден угадывать — «как так, подключение ОК, а интернета нету?!»)…

Последний скрин — сообщение об успешном подключении:

На этом работа программы pppoeconf завершена. С данного скрина вам стоит запомнить команду plog, выводящую лог последнего подключения (надеюсь, команда ifconfig вам итак уже была известна)…

Проверить, что мы успешно подключились, в консоли проще всего такой командой:

ping -c5 google.com

Она позволяет нам сразу увидеть, что все прекрасно — служба DNS определит IP-адрес  для указанного сервера, и начнет пинговать его. Если все Ok, то пинг достигнет цели, и ваш компьютер получит ответы в том же самом количестве.

Автозапуск при загрузке

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

Не «рассусоливая» понапрасну много текста, предлагаю просто выполнить следующее. Отредактируйте файл /etc/network/interfaces. Для этого введите команду:

sudo nano /etc/network/interfaces

И приведите файл к следующему содержанию:

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet ppp
pre-up iptables-restore < /etc/network/firewall.rules
pre-up /sbin/ip link set dev eth0 up
post-down /sbin/ip link set dev eth0 down

auto dsl-provider
iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider dsl-provider

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

Обращаю внимание на строку выделенную цветом — это необязательная команда. Она дословно означает следующее: перед тем как запустить интерфейс eth0 программа iptables-restore должна загрузить правила файервола из файла /etc/network/firewall.rules. В вашем случае она может быть и излишней, поэтому можете ее и не вписывать в файл /etc/network/interfaces.

Чтобы выйти из редактора, нажмите Ctrl + X, и в ответ на запрос согласитесь с сохранением изменений.

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

Потом такой:

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

Ну и напоследок…

Chillispot и PPPoE

Собственно, все эти манипуляции я проделывал на компьютере, который выступал в роли хотспота. И доступ в интернет предоставлял «тот самый» Chillispot.

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

EXTIF="ppp0"
INTIF="eth1"

А во вторых, на всякий случай, стоит указать в настройках Chillispot-а (файл /etc/chilli.conf) адрес второго сервера DNS таким образом:

dns2 8.8.8.8

Суть данной перестраховки в том, что «может так статься», что на момент запуска Chillispot-а ADSL-соединение еще не будет установлено, и у компьютера еще не будет адреса(ов) сервера(ов) DNS. В итоге, в работе Chillispot могут наблюдаться проблемы. А так, мы принудительно подставляем вторым адрес одного из публичных  DNS серверов Google, который подстрахует, если вдруг будет недоступен DNS сервер провайдера…

Линух, «мускул», Дебет Плюс v12

Действительно, и что тут писать? Там же на сайте «море документации»! Только вот прочтение ее мало приближает к пониманию. Может в этом и есть весь сакральный смысл open-source?…

Итак, прочтение  всего того вороха, что размещен непосредственно на сайте Дебет Плюс, особого «прозрения» не принесло. Какие-то сбивчивые пояснения, обильно перемешанные картинками из виндовса, «дисками C:\ и D:\», обязательными разрешениями открытого беспарольного доступа рута к мускулу с любого компьютера сети, и т.д.

Короче говоря, отстреляться в моем любимом режиме «побороть за 5 минут и забыть» у меня не вышло…

Посему, решил расписать тут процесс этот, может кто потом спасибо скажет…

1.  Вводные

Есть у меня одна организация, активно переходящая на использование линукса. Причина банальна, платить за честный майкрософт они не хотят, а проверки по городу регулярно выискивают — «кто тут снова авторские права злостно нарушает?!». Посему, стоит у них на всех компьютерах Ubuntu, Open Office и т.д. и т.п… И почти все хорошо, но вот понадобилась им программа даже не для бухгалтерии в полном понимании этого слова, а всего лишь для ведения склада. Но такая, чтобы работало в ней несколько человек, на нескольких компьютерах, по сети, из-под под Ubuntu, ну и, естественно, даром…

Первой «подопытной» для демонстрации заказчику мной была выбрана Open ERP. Установка и настройка её — еще та песня, окончательная настройка стабильно работающей системы «сожрала» у меня несколько дней (основная проблема была с установкой и настройкой ее веб-сервера и веб-клиентов), если будет как-нибудь не лень, тоже распишу тут. Но, не понравился заказчику показанный продукт — «очень монстровская программа», «все слишком правильно», «нам бы попроще и подоходчивей», «мы не сможем наших бабушек обучить ей», и т.д. и т.п. И тут «пало око» на Дебет Плюс. Первые ознакомительные потыкивания в установленной на виндовсе версии закончились резолюцией заказчика: «Нормально, чем-то похоже на 1С, если вы утверждаете, что на линуксе оно точно такое же, то нам пойдет».  И вот теперь заказчиком было озвучено желание — «поставьте нам ее такую же, но на линукс и сетевую»…

Я тоже лентяй, разбираться с «клиентами» и «серверами» самого Дебет Плюса не захотел и решил, что «серверность» будем делать банально — через единую базу в MySQL. Вот на этом, собственно, моя вводная и заканчивается…

2. Сервер, подготовка

В данном случае, под «сервером»  я подразумеваю тот компьютер, на котором будет установлен сам сервер MySQL и размещена база «Дебета». Во всем остальном — он мало чем отличается от остальных «соседних» компьютеров. И более того, по «вводной от заказчика» на этом компьютере также будет работать один человек. На всякий случай напоминаю — это компьютер с установленной на нем ОС Ubuntu-desktop (кстати, оказывается в Украине на бубунту какой-то шустрый киевский предприниматель продает предприятиям сертификаты, я выпал!!!). Сама версия дистрибутива выбиралась мной, и я установил 10.04 LTS только потому, что  LTS  — это дистрибутив «с длительной поддержкой» (лениво мне каждые полгода с новыми багами разбираться)…

Для начала нужен сам сервер MySQL. Способов установить его — в интернете описано превеликое множество. Единственная моя «отсебятина», заключается в том, что я иногда люблю заглядывать в базы с помощью PhpMyAdmin (хотя стартовые действия — создание баз, импорт дампов, назначение привилегий — предпочитаю делать в консоли мускульного клиента — как-то и быстрей и понятней получается). Поэтому, (с поправкой на желание PhpMyAdmin-а) я сходу установил на «сервер» LAMP. Как я обычно это делаю, уже описано мной ранее в заметке Зажигаем «LAMP-очку». Дублировать тут ее смысла не вижу абсолютно — просто кликните по ссылке и прочтите…

3. Импорт дампа базы данных

После того, как сервер MySQL установлен и работает, наступило время вкинуть в него базу для Дебет Плюс. Для этого в первую очередь понадобится сам  Дебет Плюс. Идем на сайт программы в раздел «Скачать» и качаем версию для линукса.

http://www.debet.kiev.ua/download-program

После того, как файл скачан, его нужно распаковать (tar -zxf в помощь…). С учетом того, что (как я говорил выше) «сервер» будет одновременно еще и рабочим местом, я распаковал архив в домашнюю папку пользователя, который работает на этом компьютере. Кстати, кому не нравится такой вариант, тот может распаковать архив и в любое другое месторасположение. В данном случае, указание того, куда я распаковывал файл имело под собой одну лишь цель — создание «единой точки отсчета» при выполнении приведенных ниже консольных команд.

Итак, после того как архив был распакован, в домашней папке пользователя появилась папка DebetPlusV12. Переходим в папку, в которой расположен дамп базы данных (в консоли (терминале) вводим команду):

cd ~/DebetPlusV12/base/org2

(В данном случае «~» обозначает как раз домашнюю папку пользователя, вместо нее можно еще указать $HOME. )

В обозначенной папке убеждаемся в том, что в ней присутствует файл dpbase.arh (это и есть искомый дамп базы данных программы Дебет Плюс!). Если файл присутсвует, идем в консоль сервера MySQL, для этого вводим команду:

mysql -uroot -p

..и в ответ на запрос вводим пароль root-а (для сервера MySQL). После того, как попали в консоль MySQL, вводим команду для импорта дампа:

source dpbase.arh;

(данная команда приведена с учетом того, что мы перед входом в консоль мускула находились ИМЕННО в той самой папке, где располагался сам файл дампа dpbase.arh, иначе — в команде нужно прописать полный путь к файлу dpbase.arh, например, /home/dmitry/DebetPlusV12/base/org2/dpbase.arh). Дополнительно обращаю внимание, что предварительно саму базу мы не создаем — команда на ее создание уже присутсвует в дампе. Там же, в дампе, указано и то имя, с которым новая база будет создана — dpbase.

В результате процедуры импорта на сервере MySQL будет создана новая база — dpbase и в ней — (примерно) 1000 таблиц. Однако, программе Дебет Плюс для работы нужна ЕЩЕ ОДНА база (уж зачем она ей нужна — я не разбирался, но без нее, увы никак!). Имя этой базы dpadmin. Поэтому, создаем сразу же и ее:

CREATE DATABASE `dpadmin` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; 

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

GRANT ALL PRIVILEGES ON dpadmin.* TO "DPADMIN"@"%" IDENTIFIED BY "password" WITH GRANT OPTION; 
GRANT ALL PRIVILEGES ON dpbase.* TO "DPADMIN"@"%" IDENTIFIED BY "password" WITH GRANT OPTION; 

Как видите, в данных командах мы для двух баз (dpadmin и dpbase) назначаем владельцем пользователя (DPADMIN), который будет подключаться с помощью пароля password (причем в данном случае указанное в примере слово «password» — это ИМЕННО ЗНАЧЕНИЕ пароля, поставьте свое собственное, выполняя данные инструкции), и получать при этом полный доступ. Имя пользователя — DPADMIN, причем, именно так — БОЛЬШИМИ буквами, это имя, прописанное по умолчанию в программе Дебет плюс.  И именно с этим именем по умолчанию программа будет пытаться подключаться. Вместо адреса сервера, с которого пользователь DPADMIN будет подключаться к серверу баз данных в команде указано «%» — то есть, с любого адреса. Желающие повысить безопасность могут прописать конкретные адреса, или диапазоны адресов…

Все, базы готовы, консоль мускула нам больше ни к чему, выходим из нее командой quit или exit — кому как больше нравится…

4. Непосредственно сама программа

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

~/DebetPlusV12/DebetPlus

Программа стартует, причем, полностью готовая к работе, как говорится «из коробки»! Спрашивается, а зачем тогда весь этот талмуд, если ее надо было просто запустить?… Отвечаю — ведь мы ж хотели «сетевую», а если «вот так просто стартануть» — то программа работает с локальной Derby-базой. То есть — пока еще не спешим пользоваться программой — сначала ее нужно перенастроить на использование базы, лежащей в сервере MySQL, и уж тогда будет нам «счастье сетевое»!…

По этому, последний шаг:

5. Настройка на использование базы MySQL

В этой части инструкции я покажу скриншоты, сделанные уже на «внешнем» рабочем месте — стоящем по соседству в сети компьютере. Причем, так уж вышло, что скриншоты делались на компьютере с ОС Windows, но в случае использования ОС Linux все настройки будут происходить точно также.

После того, как программа запустилась, выполняем следующее:

Рис. 1 — Выбираем добавление базы данных

То есть, в Правой части в меню выбираем закладку «Дебет Плюс»,  правой кнопкой мыши щелкаем на пункте «База DERBY» и в контекстном меню выбираем пункт «Добавить новую».

В открывшемся меню:

Рис. 2 — Выбираем добавление уже существующей базы данных

 

…выбираем пункт «Добавить в список существующую».

Откроется вот такое меню настройки параметров базы:

Рис. 3 — Настройки параметров базы данных

В этом меню нам предстоит выполнить ряд действий.

  1. Введите произвольное имя для данного подключения к базе. То есть, это просто то имя, под которым данное подключение к базе будет фигурировать в настройках программы Дебет Плюс. Причем, как показывают и используемое по умолчанию в программе имя «База DERBY», и официальная дока с сайта программы, здесь вы вольны использовать в том числе и кирилицу (правда, лично я не люблю этого, и посему назвал подключение не мудрствуя лукаво — mysql).
  2. Щелкните на стрелку и в выпадающем вписке выберите пункт «MySQL» (надеюсь, вы еще помните в каком сервера баз данных мы создавали нашу базу 🙂 )..
  3. Адрес (сетевой) того компьютера, на котором расположен сервер баз данных MySQL, в котором размещена интересующая нас база программы Дебет Плюс.  В данном случае на скриншоте показан IP-адрес сервера.  Если у вас в сети есть и используется локальный сервер DNS, который для локальных компьютеров хранит имена, можете указать вместо IP-адреса сетевое имя. Ну и напоследок, для случая, когда Дебет плюс запускается на том же компьютере, где расположена и сама база, вполне логичным будет указать в этом поле значение localhost (естественно, что «таких» компьютеров в «сетевой» инсталяции м.б. всего один 🙂 ).
  4. Номер порта. По умолчанию MySQL слушает подключения на порту 3306. Если вы не меняли это значение в настройках сервера MySQL (или даже не знаете, о чем идет речь), остатвьте как есть — 3306. Если меняли — смените и тут… Имя базы. При импорте дампа базы (как было описано выше) мы «автоматом» получаем, что создаваемая для «Дебет Плюс» база будет иметь имя dpbase (оно жестко прописано в файле дампа dpbase.arh, и его смена предполагает ручное редактирование файла dpbase.arh перед импортом). Если вы «ничего такого не делали», оставьте как есть — dpbase.
  5. В поле «Использовать авторизацию Дебет Плюс» мы птичку ставим для того, чтобы избежать необходимости при каждом запуске программы вручную вводить пароль, с которым Дебет Плюс подключается к базе данных. (Заказчик очень просил — «Не мучайте наших бабушек! Не надо, чтобы они еще и пароли запоминали!»).  Если же вы приверженец того, чтобы в целях безопасности пользователь все-таки вводил пароль вручную — не ставьте эту «птичку»!
  6. В поле «Настройки в базе данных» ОБЯЗАТЕЛЬНО ставьте «птичку»! Для сетевой работы — это необходимо. Иначе, при работе с сетевой базой данных Дебет Плюс будет постояннно пытаться искать «какие-то» настройки в своих локальных папках, находить их там естественно не будет, и вместо нормальной работы вы будете просто читать кучи сообщений об ошибках…
  7. Когда все выполнено, нажмите кнопку «Готово». Новое подключение (база данных) появится в списке рядом с пунктом «База DERBY».

Теперь нам нужно задействовать (активировать) эту самую новую (сетевую) базу данных, хранящуюся в сервере MySQL. Для этого выполните следующее:

Рис. 4 — Активация нового подключения к базе

То есть, просто щелкните на ней правой кнопкой мыши, и в меню выберите пункт «Сделать активной».  В ответ на это вы получите два сообщения.

Первое — это сообщение об ошибке:

Рис. 5 — Сообщение о невозможности подключиться к базе данных

… которое гласит о том, что программа не смогла подключиться к базе данных. Не пугайтесь. Причина его в том, что, во-первых, ранее вы поставили птичку в поле «Использовать авторизацию Дебет Плюс» (см. рис. 3 выше), во вторых, назначая права пользователей базы (см раздел «3. Импорт дампа базы данных» выше), вы указали использовать пароль (password), и в третьих, самой программе «Дебет Плюс» об этом пока что ничего не известно — ни о факте использования пароля, ни его (пароля) значение. По этому, программа и пытается подключиться к базе с пустым паролем. На что сервер MySQL ей вполне естественно и отвечает, что мол, «низзя сюды без паролю-то!»… Не огорчайтесь, все будет хорошо, нас же просили «не мучать бабушек»…

Второе сообщение — это как раз приглашение ввести пароль:

Рис. 6 — Ввод пароля для подключения к базе

Вводим тот самый пароль, который указали во время процедуры назначения прав на базы данных — «password» (надеюсь, вы ж его сменили на какой-то другой, свой собственный? 😉 ).

После того, как пароль принят, вы можете приступать к работе непосрадственно в программе Дебет Плюс! (И кстати, на этом этапе, при желании, можно уже и удалить не используемую теперь «Базу DERBY»).

Однако, условие «не мучать бабушек» все еще не выполнено: если на данном этапе оставить все как есть, окно с предложением ввести пароль, показанное на рис. 6 выше, будет выпрыгивать при каждом запуске программы. По этому, будем настраивать дальше…

Выполните следующее:

Рис. 7 — Вход в меню «Администрирование»

То есть,  щелкните сначала «Администрирование» в списке на закладке «Дебет плюс», а потом просто на самой вкладке «Администрирование» вверху.

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

Рис. 8 — Выбираем меню «Пользователи»

Вот его и щелкнем. Откроется меню настройки пользователей программы:

Рис. 9 — Меню настроек пользователя

В нем выполните следующее:

  1. «Щелкните плюсик», чтобы открыть список пользователей.
  2. В списке будет всего один пользователь — DPADMIN. Вот его и выберите. Кстати, вот мы добрались до того, и с каким именем программа «ходит» в базу данных,  и почему оно набрано большими буквами… Кстати, желающие могут сменить, но учтите, что менять придется и в сервере MySQL (см. выше про назначение прав).
  3. Но мы сюда пришли с единственной целью — сменить пароль, с которым программа пытается подключаться к базе.  Поэтому, ставим «птичку» в поле «Сменить пароль».
  4. После этого у вас появится возможность ввода в поле «Пароль для пподключения к БД». Вводим туда то самое «password» (или какое там вы указали у себя) значение пароля.
  5. Щедлкаем кнопку «Сохранить». При этом пропадут и «звезды» в поле пароля, и «птица» в поле «Сменить пароль». Не переживайте — дело уже сделано, программа запомнила новый пароль.
  6. Щелкаем кнопку Закрыть» и выходи из меню.

ВСЁ!

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

Вот теперь, на мой взгляд, наконец-то это похоже на иструкцию по запуску программы за пять минут!!! 😉

Ах, да! Чуть не забыл…

6. Важное замечание по серверу MySQL

По умолчанию, обычно, сразу после установки сервера MySQL, доступ извне (из сети) к нему ограничен! За это отвечает обычно специальная настройка в файле my.ini. Зачастую (раньше) использовался специальный параметр — skip-networking. Если он активирован в файле настроек, право подключения к серверу дается лишь запросам, поступающим с адреса localhost. В таком случае, наши сетевые клиенты не смогут работать.  Чтобы все было хорошо, указанную строку нужно закомментировать.

Однако, в Ubuntu последнее время вместо параметра skip-networking используется другой — bind-address =127.0.0.1. Он также не позволяет подключаться к серверу никому, кроме localhost-а. По этому, его как и рассматривавшийся выше параметр skip-networking тоже нужно закомментировать.

После того, как данное ограничение в настройках сервера будет исправлено, сервер MySQL нужно перезапустить.

И вот теперь ваша сетевая версия Дебет Плюс будет прекрасно работать…

Успехов!

Простой биллинг с веб интерфейсом — Easyhotspot

Вашему вниманию предлагается готовое интегрированное решение для организации своего собственного хотспота. Причем, «своего собственного» в том смысле, что именно вы будете решать «что, где, когда и почем»! У программы нет ограничений на число обслуживаемых клиентов, роутеров, тарифов и пр.! Не нужно «докупать лицензии на увеличившиеся число клиентов» либо платно «продлевать лицензию на пользование программой на (какой-то период)»!

Один из основных  способов обслуживания клиентов — с помощью продаваемых (или раздаваемых бесплатно) ваучеров.

Вторая функция программы — обслуживание «постоянных» клиентов, для которых биллинг подсчитывает время, проведенное ими в интернете, либо потребленный ими трафик, и затем формирует счета на основании этих данных. Об этом — см. ниже.

Третий способ обслуживания клиентов, предоставляемый программой, это режим «Гостевого доступа», при котором клиент хотспота сможет бесплатно выходить в интернет, просто нажав одну лишь кнопку на странице авторизации.  Никаких паролей для такого «гостевого» обслуживания сообщать клиенту не нужно! Всеми параметрами такого гостевого доступа (длительность, объем трафика, скорость, периодичность , и т.д.) — ВСЕМ ЭТИМ управляете непосредственно вы сами!

Ну и напоследок — программа предоставляет дополнительную разновидность гостевого доступа» — полностью автоматический допуск клиентов в интернет  после просмотра рекламы. Причем, клиент должен будет смотреть именно страницу с рекламой, а не переключившись на другое окно или приложение, ждать пока она закончится. В случае, если клиент переключается со страницы с рекламой на что-то другое, счетчик времени просмотра просто останавливается!

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

Дополнительные удобства в обслуживании клиентов предоставляют интегрируемые в Easyhotspot (приобретаются отдельно) автоматизированные платежные модули по приему оплаты с помощью СМС, оплаты с кредитных карт, оплаты через системы «мобильной коммерции», или же такие платежные системы как QIWI, Onpay, Robokassa, Assist, Яндекс-Касса, «Единый кошелек» , Paypal и пр. Все это позволит вам превратить ваш хотспот в истинный «автомат по продаже интернета»! Вам не нужен будет кассир, продающий ваучеры! Клиент сам подключится к хотспоту, сам произведет оплату в выбранной платежной системе, и в ответ получит от программы логин и пароль, чтобы ввести их на странице авторизации и получить доступ в интернет!!!

Система позволит вам абсолютно свободно управлять тарифами, ценами, лимитами и всеми прочими параметрами доступа в интернет ваших клиентов!

Система позволяет управлять как одним хотспотом, так и целой сетью, причем сеть эта может быть разнесена территориально. В качестве «внешних» хотспотов, обслуживаемых сервером, могут выступать роутеры Mikrotik (без каких-либо модернизаций), либо иные SOHO-роутеры, которые необходимо будет перепрошить прошивками либо DD-WRT, либо OPENWRT.

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

Система включает в себя сервер авторизации и учета RADIUS, страницу авторизации (контроллер доступа Chillispot) и биллинговую программу Easyhotspot. Система устанавливается на компьютер, работающий под управлением Linux, что с одной стороны, избавляет от необходимости покупки самой операционной системы, а с другой стороны повышает надежность и защищенность системы. Построение системы соответствует стандартам, устоявшимся в сфере предоставления услуг доступа в интернет, и было рассмотрено мной в заметке «Хотспот и с чем его едят». Кроме того, данная система может выступать в роли центрального сервера целой сети хотспотов. При этом, в непосредственных точках реализации достаточна установка одних лишь роутеров, настроенных на взаимодействие с центральным сервером. Такое построение позволит вам получить единый биллинг, обслуживающий ваших клиентов в самых различных заведениях (зданиях, зонах и т.п.). Последние нововведения программы позволяют привязывать клиентов к отдельным зонам, ограничивая их обслуживание указанной зоной и отказывая в обслуживании в иных зонах.

Непосредственное управление хотспотом осуществляет именно биллинговая программа. По этому, ниже я постараюсь вкратце изложить возможности и преимущества именно программы Easyhotspot, хотя фактически она – лишь «вершина айсберга» всей системы хотспота. Фактически, Easyhotspot является одним из наиболее простых и интуитивно понятных программных продуктов, предназначенных для управления не только именно беспроводным хотспотом, но и любой системой управления доступом в интернет, рассчитанной на работу с сервером RADIUS. Рассматриваемая тут модифицированная и переведенная на русский язык версия программы Easyhotspot в первую очередь отличается повышенной стабильностью работы, и отсутствием проблем, присущих ее исходному англоязычному оригиналу.

Easyhotspot является веб приложением, написанным на языке PHP. Благодаря этому, управление хотспотом происходит в браузере (любом), запущенном на компьютере под управлением любой ОС. Обеспечив доступ к программе из интернета, вы сможете управлять вашим хотспотом, находясь даже на море! Ввиду своей простоты программа является идеальным решением для организации услуги предоставления доступа в Интернет в публичных местах (Кафе, Гостиницы, Библиотеки, Аэропорты, Вокзалы и т.д.) – т. н. «HotSpot».

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

Программа Easyhotspot позволяет учитывать как время, проведенное клиентом в интернете (в минутах), так и его трафик (объем данных в мегабайтах). Соответственно, для клиентов, оплачивающих по счету, вы можете назначить, что будет учитываться при оплате – минуты или мегабайты. И результирующий счет, полученный клиентом, будет сформирован простым умножением суммы либо минут, либо мегабайт, умноженных на соответствующий тариф. А для клиентов, покупающих ваучеры, вы можете указать т.н. «номинал» ваучера – число либо минут, либо мегабайт, после израсходования которых, клиент будет автоматически отключен от хотспота.

Программа Easyhotspot предоставляет вам абсолютную свободу в вопросах ценообразования на все предоставляемые вами услуги доступа в интернет – все расценки и тарифы вы назначаете сами! При этом нет никаких ограничений, и вы вольны назначать любые цены в пределах от нуля и до «потери сознания»! Также, в программе тарифы для клиентов с оплатой по счету (postpaid) никоим образом не связаны с ценами на ваучеры (prepaid) – эти два способа обслуживания двух различных категорий клиентов имеют абсолютно независимое ценообразование! Для категории клиентов с оплатой по счету (postpaid) вы назначаете стоимость одной минуты и одного мегабайта, и эти цены действуют только для этой категории клиентов! А для клиентов, покупающих талоны-ваучеры (prepaid), вы назначаете цену ваучера, и эта цена никоим образом не зависит от тарифов за минуту или мегабайт, установленных вами для категории postpaid и рассмотренных в предыдущем предложении!

Теперь рассмотрим, какие лимиты (ограничения) позволяет назначать программа Easyhotspot.

Номинал (ваучера) – это основной лимит ваучера; у клиентов с оплатой по счету такого параметра нет вовсе. Этот параметр определяет тот максимальный объем услуги доступа в интернет, после израсходования которого, клиент будет автоматически отключен от хотспота. Номинал ваучера может быть задан либо в минутах (то есть клиенту гарантируется некая продолжительность времени подключения к интернету), либо в Мегабайтах (клиенту гарантируется некий объем трафика). Этот лимит может быть израсходован клиентом за любое число сеансов – хоть за один, хоть за несколько. Как только выделенный лимит будет клиентом израсходован, хотспот автоматически отключит его от интернета.

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

Таймаут – это не лимит, но тоже один из параметров, влияющих на подключение клиента к интернету. Этот параметр определяет время (в минутах), по истечении которого хотспот отключит клиента от интернета, если в течение этого времени клиент не проявлял активности (не было передачи/приема данных клиентом в/из интернета). Для ваучера вами может быть назначен произвольный таймаут. Для клиентов с оплатой по счету таймаут жестко прописан в программе и равен 3 минутам.

Срок годности ваучера – этот лимит, как видно из его названия, может быть назначен только для ваучеров. Позволяет «бороться» с «очень экономичными» клиентами – по истечении этого срока хотспот перестает пускать клиента в интернет, даже если тот так и не израсходовал свой лимит, отведенный ему номиналом ваучера. Параметр указывается в минутах/часах/сутках. Важным является то обстоятельство, что отсчет срока годности идет от момента активации ваучера (первого раза, когда клиент ввел в систему выданные ему на ваучере имя и пароль). Для примера, если у ваучера указать срок годности как 1 час, то в итоге мы получаем ваучер, который гарантированно становится недействительным по прошествии 1 часа с момента его активации, вне зависимости от того, сколько времени клиент реально провел в интернете!

ВНИМАНИЕ! При обслуживании клиентов по ваучерам ОЧЕНЬ ВАЖНО четко понимать различие между Номиналом ваучера и Сроком годности ваучера! Номинал (если он ограничивает именно время) ограничивает СУММАРНУЮ длительность ВСЕХ сеансов Клиента. Длительность пауз между сеансами при этом не имеет никакого значения. Например, номинал ваучера равен 60 минутам, а клиент пользуется интернетом ровно 2 минуты в день. В таком случае Номинал ваучера им будет израсходован за 30 дней. С другой стороны, Срок годности ваучера начинает отсчитываться с момента первой активации ваучера Клиентом. И при его подсчете не берется во внимание, пользовался клиент в это время интернетом все время беспрерывно, либо же между его сеансами были паузы. Рассмотрим тот же пример про ваучер, номинал которого равен 60 минутам, и клиента, который ежедневно использует только по 2 минуты. Но при этом мы дополнительно укажем, что Срок годности для этого ваучера равен 3 суткам. Допустим, Клиент активировал ваучер 3 сентября 2012 года в 12:00. В результате лимита, наложенного именно Сроком годности, начиная с 6 сентября 2012 года 12:00 этот Клиент уже больше не сможет авторизоваться и получить доступ в интернет. Если в этот момент Клиент был подключен к интернету, то хотспот отключит его. И, хотя, в данном случае Клиент (с учетом его «экономного» пользования интернетом) израсходовал всего лишь 6 минут из отведенных Номиналом 60-ти, доступ в интернет по данному ваучеру будет более не возможен, так как истек его Срок годности.

Число одновременных логинов – этот лимит указывает, какое количество клиентов может быть подключено к хотспоту с одними и теми же логином и паролем. Для ваучеров это число в программе изначально установлено равным единице (может быть изменено администрацией хотспота). То есть, по одному ваучеру несколько человек одновременно ходить в интернет не смогут никак – только один! Для клиентов с оплатой по счету это число может быть произвольным, и назначается вами. Это сделано на тот случай, если клиенту понадобится подключать в интернет несколько устройств одновременно, например, ноутбук, смартфон и планшет, и т.д.

График обслуживания – этот лимит позволяет вам создавать такие Тарифные пакеты, ваучеры(*) которых будут обслуживаться не «все 24 часа в сутки все семь дней в неделю», а по какому-то особому, составленному вами графику.  В графике указываются: день недели плюс время старта и время окончания периода, когда клиенту позволен доступ в интернет. Вы вольны составить самый «витиеватый» график, комбинируя дни и время старта/стопа, добавляя любое необходимое их количество. В остальное время клиенту будет отказано в авторизации и в доступе в интернет.

Дата окончания обслуживания – этот лимит позволяет вам установить точную дату, когда обслуживание выбранного клиента будет прекращено. Клиент будет отказано в авторизации и в доступе в интернет, если истек срок его обслуживания. При этом клиент получит сообщение о том, что «Обслуживание данного аккаунта прекращено».

ID хотспота – этот лимит позволяет вам «привязать» клиента к определенному хотспоту (точнее, к идентификатору хотспота). Если для клиента не назначен «ID-хотспота» (поле параметра оставлено пустым), то такой клиент будет обслуживаться ЛЮБЫМИ хотспотами, управляемыми посредством данной биллинговой программы. Если же идентификатор указать, то клиент будет проходить авторизацию и получать доступ в интернет только на тех хотспотах, у которых установлен точно такой же ID.

MAC-адрес клиента – этот лимит позволяет вам «привязать» клиента к MAC-алресу его оборудования. Если для клиента не назначен «MAC-адрес» (поле параметра оставлено пустым), то такой клиент сможет авторизоваться с любого устройства с любым MAC-адресом. Если же MAC-адрес указать, то клиент будет проходить авторизацию и получать доступ в интернет только на том устройстве, которое имеет этот MAC-адрес. Привязка к МАС-адресу выполняется «в один клик»! Для ваучеров по умолчанию в программе реализована «авто-привязка» к mac-у устройства в момент активации ваучера (самого первого подключения клиента к интернету). Данная «авто-привязка» может быть отключена администрацией хотспота  при необходимости!

Клиенту с оплатой по счету (postpaid) вы можете ограничить три параметра доступа в интернет:

  • Входящую скорость
  • Исходящую скорость
  • Число одновременных логинов
  • Таймаут
  • Дату окончания обслуживания
  • ID хотспота
  • MAC-адрес

Клиенту, использующему ваучер (prepaid), можно указать следующие параметры:

  • Номинал – фиксированное число минут или мегабайт
  • Входящую скорость
  • Исходящую скорость
  • Срок годности ваучера
  • Таймаут
  • График обслуживания
  • ID хотспота (привязывается не отдельный ваучер, а весь тариф)
  • МАС-адрес («привязывается» уже непосредственно ваучер)

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

С целью минимизации возможностей для злоупотреблений, работа в программе Easyhotspot разделена между несколькими категориями пользователей. Категорий пользователей (или т.н. «ролей») в программе существует три:

  • Суперадминистратор – это пользователь, наделенный максимальными административными правами. Суперадминистратор имеет право назначать тарифы для клиентов с оплатой по счету, создавать и удалять Тарифные пакеты (номиналы ваучеров), проводить инкассацию, удалять завершенные и израсходованные ваучеры, а также создавать и удалять пользователей программы: Кассиров, Администраторов и других Суперадминистраторов.
  • Администратор – это также административный пользователь программы, но в отличие от Суперадминистратора ему не позволено создавать, редактировать и удалять пользователей программы рангом выше Кассира (то есть, Администраторов и Суперадминистраторов он ни создавать, ни удалять, ни редактировать не имеет права, а Кассиров – может). За исключением этого ограничения, Администратор может выполнять все остальные административные действия, перечисленные выше для Суперадминистратора.
  • Кассир – пользователь, непосредственно работающий с клиентом. Он генерирует и продает (или раздает даром) ваучеры на основании уже имеющихся Тарифных пакетов, созданных ранее Администратором (или Суперадминистратором), а также создает аккаунты для клиентов, которые оплачивают доступ в интернет по счету. Также, Кассир закрывает аккаунты и выписывает счета клиентам с оплатой по счету после того, как те закончили пользование услугой. С целью предотвращения возможных злоупотреблений Кассиров, в программе введена специальная настройка про «Доверие Кассиру». Если вы доверяете Кассиру, в его меню присутствуют кнопки для удаления использованных ваучеров и выписанных счетов. Соответственно, Кассир сможет их самостоятельно удалять. Если же параметр «Доверие Кассиру» установлен как «нет», то у кассира нет такой возможности (удаления ваучеров и счетов), что в конечном итоге не позволит ему присвоить себе деньги, полученные от клиента, а проданный клиенту ваучер, или выписанный счет просто удалить из программы.

Но вернемся к способам обслуживания клиентов.

Вариант Postpaid (или «Оплата по счету») предполагает, что клиент является постоянным (на протяжении некоторого периода времени), и за полученные услуги рассчитывается по истечении учетного периода на основании выставленного ему счета. Типичным примером использования данного варианта учета может служить хотспот гостиницы или отеля. В этом случае доступ в интернет предоставляется клиенту в момент его поселения, а расчет за потребленную услугу осуществляется, когда клиент уже выписывается из номера. На протяжении некоторого периода времени система подсчитывает суммарный объем потребленного клиентом времени или трафика. По окончании учетного периода на основании результатов учета и установленных тарифов программа формирует счет для клиента. В данном случае распределение ролей пользователей программы осуществляется следующим образом:

  • Администратор заранее назначает в программе расценки для оплаты по счетам (сколько стоит каждая минута подключения, и сколько стоит каждый Мегабайт переданной информации). Обращаю внимание на то, что эти тарифы не имеют абсолютно никакого отношения к ценообразованию для второго метода (ваучеров).
  • Кассир создает учетную запись пользователя, самостоятельно назначает ему логин, пароль и тип учета. При необходимости устанавливает лимиты скорости и меняет число одновременных логинов. После этого кассир распечатывает клиенту талон, на котором указаны параметры для доступа в интернет (логин и пароль).
  • Дополнительно (при необходимости) Клиенту может быть назначена Дата окончания обслуживания. По наступлении указанной даты доступ в интернет для Клиента прекращается автоматически. Ряд платежных модулей позволяет таким клиентам вносить «помесячную» оплату, в результате чего Дата автоматически смещается еще на месяц вперед.
  • Клиент начинает пользоваться услугой. На протяжении установленного учетного периода программа хотспота подсчитывает объем потребленной клиентом услуги. В зависимости от выбранного типа учета суммируется либо время, проведенное клиентом в интернете, либо объем полученной им информации.
  • По истечении учетного периода кассир формирует счет клиенту. Сумма счета определяется простым умножением цен, указанных Администратором, на объем услуги, потребленный клиентом. Кассир, если параметр про «Доверие кассиру» выключен, во избежание финансовых злоупотреблений, не может просто удалить учетную запись клиента. Также, по тем же причинам Кассир не может удалить и сформированный счет.
  • В момент формирования счета учетная запись клиента (логин и пароль) автоматически удаляется, и клиент более не сможет получить доступ в интернет с этими параметрами.
  • После того, как клиент оплатит счет, Администратор может удалить его из базы данных программы.

Второй способ обслуживания — Prepaid (ваучеры) предназначен для предоставления разовых предоплаченных услуг. Иными словами, клиент сначала приобретает у кассира ваучер (талон) определенного номинала (в котором указаны логин и пароль), и лишь потом получает доступ в интернет. Номинал ваучера (талона) гарантирует клиенту предоставление определенного объема услуги доступа в интернет. Учет потребленной услуги возможен как по времени подключения, так и по объему израсходованного трафика. Иными словами, клиент автоматически будет отключен от хотспота после того, как либо время, которое он был подключен к интернету (в минутах), либо объем переданной и полученной им информации (в Мегабайтах) превысили указанный лимит (номинал ваучера). Ваучер также может иметь ограничения скорости. Кроме того, у ваучера фиксирован лимит одновременных логинов – только один (настраиваемое значение) клиент сможет подключиться в интернет с указанными логином и паролем. Второму клиенту, использовавшему эти же учетные данные, в доступе будет отказано. И напоследок, у ваучера есть срок годности (указывается Администратором). По его истечении клиент не сможет подключиться к хотспоту даже, если он не израсходовал еще все лимиты времени или мегабайт. Отсчет срока годности ведется от момента активации ваучера (первого подключения клиента к интернету через хотспот). Типичным примером использования данного варианта учета может служить хотспот в кафе.

Следует учесть, что ваучеры формируются (создаются) Кассиром на основании уже имеющихся в системе Тарифных пакетов. То есть, все параметры (лимиты) ваучера будут в точности такими, какими они есть у Тарифного пакета, на основании которого этот ваучер и был создан. Тарифные пакеты создает Администратор. И именно Тарифный пакет определяет, что будет подсчитываться – время или трафик, а также назначает тот лимит, по истечении которого клиент будет отключен. Тарифный пакет имеет собственную цену. Цена может быть указана произвольная (хоть и нулевая), и она никак не связана с тарифами, назначенными для оплаты по счетам. Кроме того, для Тарифного пакета при желании могут быть указаны ограничения входящей и исходящей скорости, с которой данные будут передаваться от/к клиенту. И срок годности, упоминавшийся ранее, также является параметром именно Тарифного пакета. При таком методе предоставлении услуги доступа в интернет роли пользователей программы распределены следующим образом:

  • Администратор создает Тарифные пакеты. Их число ничем не ограничено, и определяется лишь вашими потребностями. Например, можно создавать тарифные пакеты на разную длительность работы в интернете. Или, допустим, на одно и то же время доступа, но с различной скоростью. Или «мало и медленно» – задаром, а «много и быстро» – за деньги! В очередной раз напоминаю, что Администратор абсолютно свободен в вопросах ценообразования.
  • На основании имеющихся (созданных Администратором) Тарифных пакетов Кассир генерирует и распечатывает ваучеры, и продает их Клиентам (или же раздает даром, если указана нулевая цена).
  • Клиент начинает пользоваться услугой. В момент первого подключения к хотспоту система начинает отсчет срока годности ваучера. Также, система начинает подсчет объема потребленной клиентом услуги. По истечению лимита, указанного как номинал ваучера, клиент будет отключен от интернета автоматически.
  • Все ваучеры, использование которых клиентами было начато, попадают в отчет для инкассации. То есть, пока ваучеры были просто распечатаны и «тихо и мирно» лежат у кассира, они не попадают в этот отчет. Но как только логин и пароль из ваучера были хоть раз введены в систему для получения доступа в интернет, программа автоматически считает такой ваучер как проданный. Как следствие, такой ваучер попадает в отчет для инкассации. Отчет подсчитывает общее число проданных ваучеров для каждого из Тарифных пакетов и, с учетом их цены, выводит итоговую сумму, подлежащую инкассации (иными словами, выручку Кассира, полученную от продажи ваучеров).
  • После того, как Кассир оплачивает Администратору сумму, подлежащую инкассации за проданные ваучеры, Администратор помечает попавшие в отчет ваучеры, как инкассированные. В дальнейшем, при формировании нового отчета для инкассации, ваучеры, инкассированные ранее, уже не попадут в него.
  • После инкассации Администратор запускает команду, которая удаляет из базы хотспота все инкассированные ваучеры, лимит которых был израсходован, либо истек их срок годности.

Более подробно работа в программе Easyhotspot рассмотрена либо на этой странице, либо в данном полном руководстве.

Обобщенные «сводки» о внесенных в программу изменениях и улучшениях публикуются в этом разделе сайта. Также, полный список всех модернизаций, обновлений и дополнений программы был продублирован мной в форум. По мере дальнейшей модернизации и реализации новых функций информация об этом также добавляется в указанную тему. Желающие также могут просмотреть описание модернизаций на этой странице.

Увидеть получившийся результат (в том смысле, что в онлайн попробовать поработать в «демонстрационной» версии модифицированной программы Easyhotspot) можно, если перейти по этой ссылке. Чтобы войти в программу как Администратор, Вам потребуется ввести логин admin и пароль admin123. Чтобы поработать в роли Кассира, нужно будет ввести логин vcool, и пароль vcool123.

Желающие сравнить, чем же все-таки модернизированный Easyhotspot отличается от «оригинального», могут легко сделать это самостоятельно! Достаточно просто сравнить старую версию программы с ее обновленным собратом. Чтобы войти в любую из версий программы как Администратору, Вам потребуется ввести логин admin и пароль admin123. Чтобы поработать в роли Кассира, нужно вводить логин vcool, и пароль vcool123.

Существует также вариант модернизированной программы Easyhotspot с английским языком интерфейса. Его демо версия доступна по адресу: http://wifi-hotspot.zp.ua/hotspot_demo_eng/ . Данные для входа — те же самые, что и для «русской» версии (приведены в предыдущем абзаце).

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

Мной составлено подробное руководство по установке и настройке хотспота с использованием программ и служб Easyhotspot, FreeRADIUS, MySQL, Apache, установленных на компьютере, работающем под управлением актуальных версий ОС Linux Ubuntu LTS (12.04, 14.04, 16.04, 18.04), а также актуальных версий ОС Debian (7.Х, 8.Х или 9.Х). Содержание руководства можно просмотреть по данной ссылке. Данное руководство плюс модифицированная и русифицированная версия программы предлагаются к продаже по цене $90.

Программа поставляется в виде скрипта-инсталлятора, который самостоятельно полностью устанавливает и настраивает весь хотспот – контроллер доступа Chillispot, сервер авторизации RADIUS, а также все остальные необходимые для работы программы: сервер баз данных MySQL, веб сервер Apache, ну и собственно саму программу Easyhotspot. В результате вы получаете стабильно работающий (по нескольку месяцев без выключения) хотспот, у которого отсутствуют какие-либо ограничения. В двух словах, создание сервера хотспота состоит из двух этапов — установки самой ОС UBUNTU (или Debian), и последующего выполнения скрипта-инсталятора, который сам установит все компоненты сервера хотспота!!! Подробнее как пользоваться скриптом исталлятором описано в руководстве по быстрой установке, которое можно скачать по этой ссылке. Как видно из данного руководства, никаких «особых» познаний в Linux-е от устанавливающего не требуется! Дополнительно на Youtube выложены 2 видео-ролика. Первый ролик показывает процесс установки самой ОС Ubuntu 12.04 LTS. Второй ролик показывает процесс установки всего комплекса программ хотспота с помощью скрипта инсталятора.

Остальные видеоматериалы, доступные в интернете:

  • Процедура обновления программы Easyhotspot:

  • Авторизация Клиента по логину и паролю:

  • Гостевая авторизация кнопкой «Бесплатно» (Клиент не пользуется логинами и паролями):

  • Задержка на время показа рекламы при включении соответствующего режима:

  • Автоматическая авторизация Клиента после просмотра рекламы:

  • Режим, при котором Клиент смотрит рекламу до авторизации, а потом смотрит еще одну после авторизации (только «гости»):

Дополнительные детали – по почте. Альтернативные контакты – на странице «Обо мне».

Кроме того, за отдельную плату, предоставляется услуга по дистанционной установке и настройке сервера хотспота на ваш подготовленный компьютер. Детали о том, что нужно подготовить – в этом руководстве. Стоимость услуги – $10.

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

У вас все еще остались вопросы, на которые вы так и не нашли ответа? Загляните на страницу FAQ, просмотрите еще целый ряд «вопросов и ответов«, почитайте форум, посвященный модифицированной версии программы Easyhotspot. И этого недостаточно? Напишите мне письмо с вашими вопросами, или просто задайте ваш вопрос в поле «Оставь комментарий» внизу страницы…

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

https://wifi-hotspot.zp.ua/file_sale/

Дополнительные ссылки:

Зажигаем «LAMP-очку»

Наблюдая превеликое множество инструкций на тему установки вебсервера с поддержкой РНР, в которых идет нудное перечисление вида «Установите Apache», «Установите PHP», и т.д. и т.п., я всегда прихожу в уныние. Ну зачем все так сложно? По этому, я и решил написать эту заметку, в которой мы все это установим «на раз, два, три»…

Очень кратко о том, что такое LAMP.  Метапакет LAMP (Linux – Apache – MySQL – PHP) – это «объединенный пакет» устанавливающий «одним махом» несколько программ сразу. Он включает в себя: веб сервер Apache, сервер баз данных MySQL и сервер приложений на языке PHP. Установка этого метапакета в дистрибутивах Linux на самом деле позволяет максимально просто установить все указанные службы, а также автоматически настроить их взаимодействие. Результатом его установки является полноценный веб-сервер, с поддержкой PHP и MySQL, работающий на компьютере.

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

Запустите терминал (меню «Приложения» — «Стандартные» — «Терминал»).

Введите в терминале следующую команду:

sudo tasksel install lamp-server

Должен заметить, что с некоторых пор в релизах Ubuntu команда tasksel по умолчанию не устанавливается. В таком случае в ответ на команду, приведенную выше, вы получите сообщение об ошибке (что команда tasksel не найдена). Ну нет, так нет. Установите ее! Для этого введите такую команду:

sudo apt-get install tasksel 

…а уже после того как программа tasksel будет установлена, снова введите команду (ту, первую) для установки метапакета LAMP…

Но, вернемся к установке.

Система потребует от вас ввести пароль пользователя для выполнения административных задач.

Рис. 1 — Команда установки метапакета LAMP

После того, как правильный пароль будет вами введен, начнется установка метапакета LAMP. Первый этап — загрузка файлов.

Рис. 2 — Загрузка пакетов из интернета

После того, как загрузка файлов завершится, будет запущен процесс настройки. При этом вам будет предложено указать самостоятельно единственный зависящий от вас параметр, а именно — пароль пользователя root для сервера баз данных MySQL. Вам будет выведено вот такое диалоговое окно:

Рис. 3 — Ввод пароля пользователя root для сервера MySQL

Введите свой собственный, самостоятельно придуманный пароль. Табуляцией (кнопка Tab на клавиатуре) перейдите на поле <OK> и нажмите Enter.

Появится окно для повторного ввода пароля (верификация):

Рис. 4 — Повторный ввод пароля (верификация)

Еще раз введите ваш пароль. Пароль этот запомните, а лучше запишите, чтобы не забыть.

После того, как вы введете пароль, начнется установка пакетов:

Рис. 5 — Установка пакетов

По ее окончании можно начинать радоваться — сервер LAMP у вас на компьютере уже установлен.

Теперь, не выходя из терминала введите следующую команду

echo '<?php phpinfo(); ?>' | sudo tee -a /var/www/test.php

Эта команда создаст новый файл test.php в папке /var/www/ и в этот файл записывается одна единственная строка – <?php phpinfo(); ?>. С учетом его имени и месторасположения, вновь созданный файл является одной из веб-страниц, написанных на языке РНР, и обрабатываемых вашим веб-сервером. А его содержание представляет собой единственную команду PHP, выполняя которую, ваш сервер должен отобразить страницу со всевозможной информацией — о текущей версии сервера PHP, его настройках, а также об иных параметрах и данных. Файл этот нам понадобится в дальнейшем для проверки работоспособности сервера РНР.

Рис. 6 — Создание тестового файла для проверки работы РНР

Ну и напоследок — установим всеми любимый phpmyadmin (почему-то все без него жить не могут). Не выходя из терминала введите команду

sudo apt-get install phpmyadmin

Система запросит подтверждения — согласны ли вы установить «такое-то» количество пакетов.

Рис. 7 — Команда установки phpmyadmin

Соглашайтесь (нажмите «Y» на клавиатуре).

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

Рис. 8 — Выбор вебсервера, в который будет интегрирован phpmyadmin

Памятуя о том, что только что мы установили apache (в составе метапакета LAMP), выбираем соответствующий пункт (apache2), и щелкаем «любимое» <OK>.

Следующий вопрос будет посвящен настройке самого phpmyadmin. Вам предлагается настроить учетную запись административного пользователя в phpmyadmin.

Рис. 9 — Запрос дальнейшей настройки phpmyadmin

Выбираем «Да».

Вас попросят ввести пароль административного пользователя баз данных. ВНИМАНИЕ! Это тот самый пароль пользователя root для сервера MySQL, который вы только что вводили, когда устанавливали LAMP (см. рис. 3 выше). Вы ж его записали? Вот и чудно, введите его в ответ на этот запрос:

Рис. 10 — Запрос пароля пользователя root для сервера MySQL

После этого вам будет предложено ввести пароль  (как написано в диалоговом окне) «приложения для phpmyadmin». На самом деле настройщик создаст вам еще одного административного пользователя для сервера MySQL. Имя пользователя будет phpmyadmin, а пароль его вам как раз и предлагается ввести. Укажите свой самостоятельно придуманный пароль:

Рис.11 — Ввод пароля для нового пользователя — phpmyadmin

Как и любой вновь вводимый пароль вас попросят его ввести повторно для верификации:

Рис. 12 — Повторный ввод пароля пользователя phpmyadmin (верификация)

После того, как вы  успешно введете все пароли, установка и настройка phpmyadmin будет завершена.

Осталось лишь проверить, и убедиться, что все хорошо. Сначала проверяем работу именно веб-сервера Apache. Запустите браузер (в Ubuntu по умолчанию установлен Mozilla Firefox). В браузере введите следующий адрес (подразумевается, что ваш браузер запущен НА ТОМ ЖЕ САМОМ компьютере, на котором был установлен веб-сервер):

http://localhost/

Вы должны увидеть вот такое окно:

Рис. 13 — Проверка работы веб сервера Apache

«Радостная» надпись «It works!» является подтверждением того, что Apache работает.

Проверим теперь PHP. В адресной строке браузера введите другой адрес:

http://localhost/test.php

(это адрес той самой «тестовой» страницы, которую мы создали ранее). Должно появится вот такое окно:

Рис. 14 — Проверка работы сервера PHP

В нем, как и было обещано ранее, вы сможете прочесть все информацию о вашем сервере…

Ну и напоследок — а как там поживает наш phpmyadmin? Введите в строке адреса браузера следующее:

http://localhost/phpmyadmin/

Откроется вот такое окно с предложением ввести имя пользователя и пароль.

Рис. 15 — Проверка работы phpmyadmin

В этом окне, чтобы попасть в phpmyadmin вы можете теперь ввести два различных варианта имен пользователя и паролей. Первый вариант — пользователь root и пароль, который вы вводили во время установки LAMP (см. рис. 3 выше). Или же второй вариант — пользователь phpmyadmin и пароль, который вы вводили во время настройки пакета phpmyadmin (см. рис. 11 выше).

НУ ВОТ И ВСЕ!

PS. А ведь и правда, вы читали и разглядывали картинки дольше, чем в итоге длилась сама установка?  🙂

Ну а в принципе, самым ленивым возможно пригодится уже готовый скрипт, который сам «по порядочку» выполняет все указанные действия. Скачать его можно с моего FTP по вот этой ссылке

Ubuntu — запускаем 3G модем в консоли

Цель данной записи — показать, как в консоли найти, настроить и запустить USB модем для сетей 3G.

В качестве подопытных кроликов выступали модем ZTE MF-170 и дистрибутив Ubuntu 9.04:

dmitry@hotspot-server:/etc$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=9.04
DISTRIB_CODENAME=jaunty
DISTRIB_DESCRIPTION="Ubuntu 9.04"

(о причинах выбора столь «несвежей» версии дистрибутива я скажу ниже…)

Что крайне полезно знать про модем — какие значения vid (Vendor ID — код изготовителя) и pid (Product ID — код устройства) он принимает, когда работает в качестве модема (посмотреть их можно как на «соседнем» компьютере с Windows, так и просто нагуглить за пару минут). Для использованного мной модема значения были такие vid равен 19d2 и pid равен 0031.

И совсем небольшое отступление по оформлению заметки. В ней приведена консоль «как она есть» — полный вывод, со всевозможными промежуточными сообщениями и пр. Что сделано для удобства восприятия — команды, которые я вводил вручную выделены синим цветом, сообщения, которые для нас «хорошие» (положительный результат) выделены зеленым цветом, а «плохие» для нас сообщения выделены красным.

Итак, поехали…

Часть первая — ищем сам модем!

Много современных USB-модемов для 3G сетей являются «составным USB-устройством». То есть, в таком многофункциональном «USB-свистке» присутствует как сам модем, так и виртуальный компакт-диск с драйверами и ПО, плюс, у ряда моделей — картридер, а также служебный интерфейс, который нас в данном случае не интересует вовсе. При подключении такого модема к компьютеру с Linux-ом, система изначально видит устройство, но увы, совсем не то, которое нас интересует, а именно — тот самый виртуальный CDROM. То есть, подключаем модем к компьютеру и вводим команду:

dmitry@hotspot-server:~$ lsusb
Bus 001 Device 002: ID 19d2:2000
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

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

Програмное решение для этой цели уже давно существует. Оно называется usb-modeswitch, и на сегодняшний день включено в большинство современных дистрибутивов Linux. И вот теперь, я вернусь к тому, почему был выбран такой старый дистрибутив — в дистрибутиве Ubuntu 9.04 пакет usb-modeswitch отсутствует (причем не только в числе пакетов, устанавливаемых по умолчанию, но и в репозитории). Не верите? Смотрие:

dmitry@hotspot-server:/usr/src/usb$ sudo apt-get install usb-modeswitch
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
E: Не удалось найти пакет usb-modeswitch

Очень жаль, ибо без него нам никак!

ВНИМАНИЕ: Еще раз повторюсь — речь идет именно про дистрибутив Ubuntu 9.04 (и возможно, более старые версии, но я не проверял)! Если же у вас дистрибутив Ubuntu 9.10 и новее, то описанные ниже действия по ручному скачиванию пакетов и ручной же их установке вам не нужны. Достаточно установить пакет usb-modeswitch (если он не был установлен ранее) командой, приведенной выше!

Чтож, пойдем «в обход». Поищем пакет на сервере Ubuntu — http://packages.ubuntu.com/search?keywords=usb-modeswitch. Результаты поиска показывают, что он там присутствует для версий, начиная с 9.10. Я решил взять тот, что предназначался для релиза maverick (просто версию мне захотелось посвежей — 1.1.4).

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

dmitry@hotspot-server:~$ sudo mkdir /usr/src/usb
dmitry@hotspot-server:~$ sudo chown dmitry:dmitry /usr/src/usb
dmitry@hotspot-server:~$ cd /usr/src/usb

«Сакральный» смысл этого процесса заключается в том, что нам нужно скачать и установить ДВА пакета — сам usb-modeswitch (это именно программа) и usb-modeswitch-data (в этом пакете находится «база устройств» которые знает и умеет переключать программа). Проще всего установить их одновременно, одной командой, когда они расположены в одной отдельной (можно временной) папке…

После того, как каталог создан, права назначены и мы в него перешли, начинаем качать требующиеся пакеты. Первым — usb-modeswitch (хотя, ничто не мешает поменять порядко на обратный):

dmitry@hotspot-server:/usr/src/usb$ wget http://ie.archive.ubuntu.com/ubuntu/pool/main/u/usb-modeswitch/usb-modeswitch_1.1.4-1_i386.deb
--2011-01-12 14:18:54--  http://ie.archive.ubuntu.com/ubuntu/pool/main/u/usb-modeswitch/usb-modeswitch_1.1.4-1_i386.deb
Преобразование адреса ie.archive.ubuntu.com... 193.1.193.69
Устанавливается соединение с ie.archive.ubuntu.com|193.1.193.69|:80... соединились.
Запрос HTTP послан, ожидание ответа... 200 OK
Длина: 45668 (45K) [application/x-debian-package]
Сохраняется в каталог: `usb-modeswitch_1.1.4-1_i386.deb'.

100%[==============================================================================================================================>] 45.668      63,1K/s   в 0,7s

2011-01-12 14:18:55 (63,1 KB/s) - `usb-modeswitch_1.1.4-1_i386.deb' сохранён [45668/45668]

И сразу же вдогонку — второй пакет:

dmitry@hotspot-server:/usr/src/usb$ wget http://ie.archive.ubuntu.com/ubuntu/pool/main/u/usb-modeswitch-data/usb-modeswitch-data_20100826-1_all.deb
--2011-01-12 14:19:58--  http://ie.archive.ubuntu.com/ubuntu/pool/main/u/usb-modeswitch-data/usb-modeswitch-data_20100826-1_all.deb
Преобразование адреса ie.archive.ubuntu.com... 193.1.193.69
Устанавливается соединение с ie.archive.ubuntu.com|193.1.193.69|:80... соединились.
Запрос HTTP послан, ожидание ответа... 200 OK
Длина: 17214 (17K) [application/x-debian-package]
Сохраняется в каталог: `usb-modeswitch-data_20100826-1_all.deb'.

100%[==============================================================================================================================>] 17.214      20,7K/s   в 0,8s

2011-01-12 14:20:00 (20,7 KB/s) - `usb-modeswitch-data_20100826-1_all.deb' сохранён [17214/17214]

Итак, оба пакета — и с программой, и с ее «базой» скачали. Теперь нужно установить из репозитория еще несколько пакетов, которые являются зависимостями для установки требуемой программы. Для этого вводим команду:

dmitry@hotspot-server:/usr/src/usb$ sudo apt-get install tcl8.3 tcl8.4 tcl8.5
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Предлагаемые пакеты:
  tclreadline
НОВЫЕ пакеты, которые будут установлены:
  tcl8.3 tcl8.4 tcl8.5
обновлено 0, установлено 3 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 3618kБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 10,6MB.
Получено:1 http://archive.ubuntu.com jaunty/main tcl8.5 8.5.6-3 [1544kB]
Получено:2 http://archive.ubuntu.com jaunty/main tcl8.4 8.4.19-2 [1178kB]
Получено:3 http://archive.ubuntu.com jaunty/main tcl8.3 8.3.5-13 [896kB]
Получено 3618kБ за 35с (103kБ/c)
Выбор ранее не выбранного пакета tcl8.5.
(Чтение базы данных... на данный момент установлено 26376 файлов и каталогов.)
Распаковывается пакет tcl8.5 (из файла .../tcl8.5_8.5.6-3_i386.deb)...
Выбор ранее не выбранного пакета tcl8.4.
Распаковывается пакет tcl8.4 (из файла .../tcl8.4_8.4.19-2_i386.deb)...
Выбор ранее не выбранного пакета tcl8.3.
Распаковывается пакет tcl8.3 (из файла .../tcl8.3_8.3.5-13_i386.deb)...
Обрабатываются триггеры для man-db ...
Настраивается пакет tcl8.5 (8.5.6-3) ...

Настраивается пакет tcl8.4 (8.4.19-2) ...

Настраивается пакет tcl8.3 (8.3.5-13) ...
Обрабатываются триггеры для libc6 ...

После того, как скачали, на всякий случай проверяем, что в той папке, в которой мы находимся в текущий момент, присутствуют два deb-пакета, которые мы собрались устанавливать:

dmitry@hotspot-server:/usr/src/usb$ ls
usb-modeswitch_1.1.4-1_i386.deb  usb-modeswitch-data_20100826-1_all.deb

Присутствуют! Теперь, продолжая находиться в папке, где лежат наши два «кандидата на установку», вводим команду, суть которой можно сформулировать так — «установить все пакеты из текущей папки» (именно для этого и создавалась отдельная папка):

dmitry@hotspot-server:/usr/src/usb$ sudo dpkg -i *
Выбор ранее не выбранного пакета usb-modeswitch.
(Чтение базы данных... на данный момент установлено 26845 файлов и каталогов.)
Распаковывается пакет usb-modeswitch (из файла usb-modeswitch_1.1.4-1_i386.deb)...
Выбор ранее не выбранного пакета usb-modeswitch-data.
Распаковывается пакет usb-modeswitch-data (из файла usb-modeswitch-data_20100826-1_all.deb)...
Настраивается пакет usb-modeswitch-data (20100826-1) ...
Настраивается пакет usb-modeswitch (1.1.4-1) ...
Обрабатываются триггеры для man-db ...

Всё, теперь пакеты usb-modeswitch и usb-modeswitch-data установлены! Можем их использовать.

Пару слов о программе usb-modeswitch, и том, что она выполняет. Работу программы определяет ее файл конфигурации. Точнее сказать, у программы usb-modeswitch есть «глобальный» файл конфигурации /etc/usb_modeswitch.conf (который НЕ НУЖНО ТРОГАТЬ) и файл конфигурации под конкретное устройство. Файл конфигурации УСТРОЙСТВА обычно содержит всего несколько параметров — «стартовый» идентификатор (vid:pid) устройства, «целевой» идентификатор, и сообщение или сообщения, посылаемые устройству, чтобы оно переключалось из одного состояния в другое. То есть, вернемся к тому, с чего начали. Мы подключили модем к компьютеру. Система увидела его как CDROM с идентификатором 19d2:2000. Это и есть «стартовый» идентификатор. Нам же нужно, чтобы устройство переключилось в модем с идентификатором 19d2:0031 («целевой» идентификатор). Для этого программа usb-modeswitch сначала находит (убеждается, что в системе есть) устройство со «стартовым» идентификатором, а затем посылает нашему «USB-свистку» сообщения (Message), приведенные в файле конфигурации, до тех пор, пока тот не ответит «целевым» идентификатором.

Тепрерь пару слов о том, как выбрать этот самый файл конфигурации устройства. Точнее — из чего выбрать. Фактически, некоторое количество файлов (база известных программе устройств) лежит в папке /etc/usb_modeswitch.d. Для простоты выбора файлы поименованы… «стартовыми идентификаторами». То есть, применительно к моему случаю — «стартовый идентификатор» использованного мной модема — 19d2:2000, и именно с таким именем файл мне и нужно найти в указанной папке. Проверка показала — есть такой файл.

Чтож, запускаем программу и указываем ей в командной строке какой файл конфигурации устройства использовать:

dmitry@hotspot-server:/usr/src/usb$ sudo usb_modeswitch -c /etc/usb_modeswitch.d/19d2:2000
Warning: TargetProductList overrides TargetProduct!

Looking for target devices ...
 No devices in target mode or class found
Looking for default devices ...
 Found devices in default mode or class (1)
Accessing device 002 on bus 001 ...
Using endpoints 0x01 (out) and 0x81 (in)
Using endpoints 0x01 (out) and 0x81 (in)
Inquiring device details; driver will be detached ...
Looking for active driver ...
 No driver found. Either detached before or never attached

SCSI inquiry data (for identification)
-------------------------
  Vendor String: ZTE
   Model String: USB SCSI CD-ROM
Revision String: 2.31
-------------------------

USB description data (for identification)
-------------------------
Manufacturer: ZTE,Incorporated
     Product: ZTE WCDMA Technologies MSM
  Serial No.: P679M1KVSD010000
-------------------------
Setting up communication with interface 0 ...
Using endpoint 0x01 for message sending ...
Trying to send message 1 to endpoint 0x01 ...
 OK, message successfully sent
Reading the response to the message (CSW) ...
 OK, response successfully read (13 bytes).
Trying to send message 2 to endpoint 0x01 ...
 OK, message successfully sent
Reading the response to message 2 ...
 OK, response successfully read (13 bytes).
Trying to send message 3 to endpoint 0x01 ...
 OK, message successfully sent
Reading the response to message 3 ...
 OK, response successfully read (0 bytes).
Resetting response endpoint 0x81
Resetting message endpoint 0x01

Checking for mode switch (max. 20 times, once per second) ...
 Waiting for original device to vanish ...
 Waiting for original device to vanish ...
 Waiting for original device to vanish ...
 Original device can't be accessed anymore. Good.
 Searching for target devices ...
 Searching for target devices ...
 Searching for target devices ...
 Searching for target devices ...
 Searching for target devices ...
 Searching for target devices ...
 Searching for target devices ...
 Searching for target devices ...
 Found correct target device

Mode switch succeeded. Bye.

Как видим, переключение прошло успешно. Посмотрим теперь, какие USB-устройства есть в системе:

dmitry@hotspot-server:/usr/src/usb$ lsusb
Bus 001 Device 003: ID 19d2:0031
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Как видим, устройство с требовавшимся нам идентификатором (19d2:0031) в системе появилось! А теперь посмотрим — есть ли в системе USB-модемы:

dmitry@hotspot-server:/usr/src/usb$ ls /dev/ttyUSB*
/dev/ttyUSB0  /dev/ttyUSB1  /dev/ttyUSB2

Отлично! В системе наблюдается USB-модем(ы). Пора его (их) использовать по назначению.

Часть вторая — подключаемся

Собственно, программ, которые позволяют заставить модем набрать номер и подключиться к провайдеру — предостаточно. Тот же Network Manager, например. Кстати, те, у кого до этого в Network Managere-е модем не находился, уже могут попробовать поискать его снова 😉 . Ну а мы, в данном случае, решили воевать в консоли. Потому, в консоли и продолжим…

Программу я для этого решил использовать следующую — wvdial. По умолчанию она не установлена, поэтому, устанавливаем:

dmitry@hotspot-server:/usr/src/usb$ sudo apt-get install wvdial
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Будут установлены следующие дополнительные пакеты:
  libuniconf4.4 libwvstreams4.4-base libwvstreams4.4-extras libxplc0.3.13
НОВЫЕ пакеты, которые будут установлены:
  libuniconf4.4 libwvstreams4.4-base libwvstreams4.4-extras libxplc0.3.13 wvdial
обновлено 0, установлено 5 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 1099kБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 2814kB.
Хотите продолжить [Д/н]? y
Получено:1 http://archive.ubuntu.com jaunty/main libxplc0.3.13 0.3.13-1build1 [39,0kB]
Получено:2 http://archive.ubuntu.com jaunty/main libwvstreams4.4-base 4.4.1-0.2ubuntu2 [412kB]
Получено:3 http://archive.ubuntu.com jaunty/main libwvstreams4.4-extras 4.4.1-0.2ubuntu2 [406kB]
Получено:4 http://archive.ubuntu.com jaunty/main libuniconf4.4 4.4.1-0.2ubuntu2 [137kB]
Получено:5 http://archive.ubuntu.com jaunty/main wvdial 1.60.1+nmu2 [106kB]
Получено 1099kБ за 19с (55,4kБ/c)
Предварительная настройка пакетов ...
Выбор ранее не выбранного пакета libxplc0.3.13.
(Чтение базы данных... на данный момент установлено 26865 файлов и каталогов.)
Распаковывается пакет libxplc0.3.13 (из файла .../libxplc0.3.13_0.3.13-1build1_i386.deb)...
Выбор ранее не выбранного пакета libwvstreams4.4-base.
Распаковывается пакет libwvstreams4.4-base (из файла .../libwvstreams4.4-base_4.4.1-0.2ubuntu2_i386.deb)...
Выбор ранее не выбранного пакета libwvstreams4.4-extras.
Распаковывается пакет libwvstreams4.4-extras (из файла .../libwvstreams4.4-extras_4.4.1-0.2ubuntu2_i386.deb)...
Выбор ранее не выбранного пакета libuniconf4.4.
Распаковывается пакет libuniconf4.4 (из файла .../libuniconf4.4_4.4.1-0.2ubuntu2_i386.deb)...
Выбор ранее не выбранного пакета wvdial.
Распаковывается пакет wvdial (из файла .../wvdial_1.60.1+nmu2_i386.deb)...
Обрабатываются триггеры для man-db ...
Настраивается пакет libxplc0.3.13 (0.3.13-1build1) ...

Настраивается пакет libwvstreams4.4-base (4.4.1-0.2ubuntu2) ...

Настраивается пакет libwvstreams4.4-extras (4.4.1-0.2ubuntu2) ...

Настраивается пакет libuniconf4.4 (4.4.1-0.2ubuntu2) ...

Настраивается пакет wvdial (1.60.1+nmu2) ...

Success!  You can run "wvdial" to connect to the internet.
  (You can also change your configuration by editing /etc/wvdial.conf)

Обрабатываются триггеры для libc6 ...
ldconfig deferred processing now taking place

Установили! Теперь ее нужно сконфигурировать. Первым делом, нужно предоставить программе возможность попытаться автоматически выполнить предварительную настройку. Для этого вводим команду:

dmitry@hotspot-server:/usr/src/usb$ sudo wvdialconf
Editing `/etc/wvdial.conf'.

Scanning your serial ports for a modem.

ttyS0<*1>: ATQ0 V1 E1 -- failed with 2400 baud, next try: 9600 baud
ttyS0<*1>: ATQ0 V1 E1 -- failed with 9600 baud, next try: 115200 baud
ttyS0<*1>: ATQ0 V1 E1 -- and failed too at 115200, giving up.
ttyS1<*1>: ATQ0 V1 E1 -- failed with 2400 baud, next try: 9600 baud
ttyS1<*1>: ATQ0 V1 E1 -- failed with 9600 baud, next try: 115200 baud
ttyS1<*1>: ATQ0 V1 E1 -- and failed too at 115200, giving up.
Modem Port Scan<*1>: S2   S3
WvModem<*1>: Cannot get information for serial port.
ttyUSB0<*1>: ATQ0 V1 E1 -- failed with 2400 baud, next try: 9600 baud
ttyUSB0<*1>: ATQ0 V1 E1 -- failed with 9600 baud, next try: 9600 baud
ttyUSB0<*1>: ATQ0 V1 E1 -- and failed too at 115200, giving up.
WvModem<*1>: Cannot get information for serial port.
ttyUSB1<*1>: ATQ0 V1 E1 -- OK
ttyUSB1<*1>: ATQ0 V1 E1 Z -- OK
ttyUSB1<*1>: ATQ0 V1 E1 S0=0 -- OK
ttyUSB1<*1>: ATQ0 V1 E1 S0=0 &C1 -- OK
ttyUSB1<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 -- OK
ttyUSB1<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
ttyUSB1<*1>: Modem Identifier: ATI -- Manufacturer: ZTE CORPORATION
ttyUSB1<*1>: Speed 9600: AT -- OK
ttyUSB1<*1>: Max speed is 9600; that should be safe.
ttyUSB1<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
WvModem<*1>: Cannot get information for serial port.
ttyUSB2<*1>: ATQ0 V1 E1 -- OK
ttyUSB2<*1>: ATQ0 V1 E1 Z -- OK
ttyUSB2<*1>: ATQ0 V1 E1 S0=0 -- OK
ttyUSB2<*1>: ATQ0 V1 E1 S0=0 &C1 -- OK
ttyUSB2<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 -- OK
ttyUSB2<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
ttyUSB2<*1>: Modem Identifier: ATI -- Manufacturer: ZTE CORPORATION
ttyUSB2<*1>: Speed 9600: AT -- OK
ttyUSB2<*1>: Max speed is 9600; that should be safe.
ttyUSB2<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK

Found a modem on /dev/ttyUSB1.
Modem configuration written to /etc/wvdial.conf.
ttyUSB1: Speed 9600; init "ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0"
ttyUSB2: Speed 9600; init "ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0"

Итого — НАШЛА! Посмотрим, какие настройки программа вписала в файл конфигурации:

dmitry@hotspot-server:/usr/src/usb$ sudo nano /etc/wvdial.conf

Вот что было в моем файле по умолчанию (после выполнения предварительной самонастройки):

[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Modem Type = Analog Modem
; Phone =
ISDN = 0
; Password =
New PPPD = yes
; Username =
Modem = /dev/ttyUSB1
Baud = 9600

Как видите, самый минимум. Плюс ко всему, еще и ключевые параметры подключения — номер дозвона (Phone), имя пользователя (Username) и пароль (Password) — закомментированы (в начале строки стоит точка с запятой — «;» ).

В итоге я отредактировал свой файл конфигурации, и он стал выглядеть следующим образом:

[Dialer Defaults]
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Modem Type = Analog Modem
 Phone = *99#
ISDN = 0
 Username = 1
Init1 = ATZ
 Password = 1
Modem = /dev/ttyUSB2
Baud = 9600
Init3 = AT+CGDCONT=1,"IP","3g.utel.ua"
Stupid Mode = 1
Auto Reconnect = on

То есть, во первых, я указал номер дозвона, а также имя пользователя и пароль (для моего случая подключения к Utel — в принципе, логины/пароли безразличны, но как говорится, «чтобы не было проблем»). Кроме того, я указал третью строку инициализации — Init3 = AT+CGDCONT=1,»IP»,»3g.utel.ua». Она указывает модему, какую точку доступа использовать. Как должна выглядеть эта строка в вашем случае — ищите на сайте вашего провайдера (оператора мобильной связи). Также я включил автоматическое переподключение — Auto Reconnect, и режим «тупого» модема — Stupid Mode.  После этого сохранил изменения и вышел из редактора.

И вот, торжественный момент — подключаемся:

dmitry@hotspot-server:/usr/src/usb$ sudo wvdial
--> WvDial: Internet dialer version 1.60
--> Cannot get information for serial port.
--> Initializing modem.
--> Sending: ATZ
OK
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
--> Sending: AT+CGDCONT=1,"IP","3g.utel.ua"
AT+CGDCONT=1,"IP","3g.utel.ua"
OK
--> Modem initialized.
--> Sending: ATDT*99#
--> Waiting for carrier.
ATDT*99#
CONNECT 3600000
--> Carrier detected.  Starting PPP immediately.
--> Starting pppd at Wed Jan 12 14:57:51 2011
--> Pid of pppd: 4131
--> Using interface ppp0
--> pppd: ▒'2 `%2 ▒'2
--> pppd: ▒'2 `%2 ▒'2
--> pppd: ▒'2 `%2 ▒'2
--> pppd: ▒'2 `%2 ▒'2
--> pppd: ▒'2 `%2 ▒'2
--> pppd: ▒'2 `%2 ▒'2
--> pppd: ▒'2 `%2 ▒'2
--> local  IP address 178.92.69.72
--> pppd: ▒'2 `%2 ▒'2
--> remote IP address 10.64.64.64
--> pppd: ▒'2 `%2 ▒'2
--> primary   DNS address 213.179.249.151
--> pppd: ▒'2 `%2 ▒'2
--> secondary DNS address 213.179.249.152
--> pppd: ▒'2 `%2 ▒'2

Признаком того, что вы подключились к интернету, является факт получения вашим модемом локального адреса, адреса шлюза, и двух адресов серверов DNS (все это выделено зеленым цветом выше). На всякий случай можно проверить, какие адреса серверов DNS использует система после того, как произошло подключение:

dmitry@hotspot-server:~$ sudo cat /etc/resolv.conf
nameserver 213.179.249.151
nameserver 213.179.249.152

Итог — вы в интернете.

Ну и напоследок — как его выключать. Вводите команду:

dmitry@hotspot-server:/usr/src/usb$ sudo pkill wvdial
Caught signal 15:  Attempting to exit gracefully...
dmitry@hotspot-server:/usr/src/usb$ --> Terminating on signal 15
--> pppd: ▒7▒[08]`5▒[08]▒7▒[08]
--> Connect time 0.8 minutes.
--> pppd: ▒7▒[08]`5▒[08]▒7▒[08]
--> pppd: ▒7▒[08]`5▒[08]▒7▒[08]
--> pppd: ▒7▒[08]`5▒[08]▒7▒[08]
--> Disconnecting at Wed Jan 12 15:04:14 2011

… и дожидаетесь, когда соединение будет разорвано.

Успехов!

Установка ОС Ubuntu

Подготовка к установке ОС Ubuntu

Каждый, кто хоть раз поставил Ubuntu,
считает своим долгом написать
об этом инструкцию в своем блоге… 😉

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

Итак, в данной инструкции предполагается, что что вы устанавливаете на компьютер операционную системы Ubuntu-desktop версии 9.04. Чтобы установить саму операционную систему (далее – ОС) вам необходимо скачать с сайта Ubuntu в интернете и записать на диск (болванку) образ  диска с дистрибутивом Ubuntu-desktop.

После того, как вы скачали образ диска (файл *.iso), запишите его на пустую болванку. Как это можно сделать, например, с помощью программы Nero, показано на рис. 1 ниже.

Рис. 1 – Запись образа диска в программе Nero

После того, как диск вами был записан на болванку, установите ее в привод компакт-дисков вашего компьютера и загрузите компьютер с только что записанного компакт-диска. Как указать вашему компьютеру, чтобы он загрузился с компакт-диска, прочтите в инструкции к материнской плате (или к компьютеру).

Проверка компакт-диска и ОЗУ компьютера перед установкой Ubuntu

Самое первое, что вы видите после того, как загрузились с компакт-диска – это меню выбора языка:

Рис. 2 – Меню выбора языка

Стрелками управления курсором выберите язык (на рис.2 показано, что выбран русский язык) и затем нажмите Enter на клавиатуре. Появится основное меню загрузки Live-CD с ОС Ubuntu.

Рис. 3 – Основное меню загрузки Live-CD с ОС Ubuntu

Перед началом установки настоятельно рекомендуется выполнить два других пункта меню. Первый пункт – это «Проверить память», а второй – «Проверить CD на наличие ошибок» (см. рис. 4, 5 и 6 ниже). Выполнение этих двух пунктов лично мной НАСТОЯТЕЛЬНО РЕКОМЕНДУЕТСЯ — оно позволит вам быть уверенным в том, что при установке ОС Ubuntu не возникнет ошибок. Тест памяти (см. рис. 4) вверху справа показывает два параметра – Pass и Test, а рядом с ними – числовые значения в процентах. Pass – это показатель выполнения всей проверки, в то время как Test – показатель хода выполнения одного отдельного теста (а их несколько). Один полный проход проверки завершен тогда, когда значение Pass прошло 100% и начало новый отсчет с 0% (начался второй проход). Число выполненных проходов (Pass) отображается в таблице, приведенной в нижней половине экрана. Там же отображается число найденных ошибок (Errors), и если таковые были, то в виде таблицы – адреса памяти, в которых произошли ошибки. Выход из теста памяти – кнопка Esc. Компьютер при этом перезагрузится. Проверка компакт-диска на ошибки выглядит, как показано на рис. 5. После успешной проверки выводится сообщение «no errors found», после чего вам предлагается нажать любую кнопку для перезагрузки компьютера (рис. 6).

Рис. 4 – Проверка памяти – программа memtest86+
Рис. 5 – Проверка компакт-диска на ошибки

 

 

Рис. 6 – Проверка компакт-диска на ошибки успешно завершена

 

После того, как вы успешно выполнили обе указанные проверки, еще раз загрузитесь с компакт диска, но в этот раз в меню, показанном на рис. 3 выше, выберите уже пункт «Установить Ubuntu».

Непосредственно установка ОС Ubuntu

После того, как вы выбрали пункт «Установить Ubuntu», начнется установка самой операционной системы. В начальной стадии на экран будет выведен лишь логотип Ubuntu и бегающая полоска (аналогично той, что была во время проверки диска на ошибки, как показано на рис. 5). В течение этого времени идет обнаружение устройств вашего компьютера. После этого начинается интерактивная часть установки. Первым вопросом вам предлагают подтвердить выбор языка:

Рис. 7 – Выбор языка для процедуры установки системы

Выберите в списке слева подходящий язык, и щелкните мышью кнопку «Forward» (Далее), расположенную внизу справа. Все последующие сообщения программы установки будут выводиться на выбранном вами языке. Следующий вопрос установщика предложит вам выбрать часовой пояс:

Рис. 8 – Выбор часового пояса

Выбор возможен как по карте, расположенной в верхней половине окна, так и с помощью двух выпадающих списков, расположенных в нижней его части. Если будете использовать списки, то сначала выберите регион в левом, а потом в правом – ваш город (если он там есть, или же ближайший, или же другой такой, про который вы точно знаете, что он расположен в том же самом часовом поясе что и ваш). После того, как вы выбрали часовой пояс, щелкните мышью кнопку «Forward» (Далее), расположенную внизу справа.

Следующий пункт предложит вам выбрать раскладку клавиатуры. В данном случае имеется в виду раскладка, которая будет установлена в систему как дополнительная, кроме раскладки en_US (английский язык, раскладка США), которая все равно будет установлена по умолчанию. Рекомендуем на данном этапе не обращать на это особого внимания. Лучше будет настройку раскладок, а также их отображения, выполнить после окончания установки ОС Ubuntu – уже на работающей системе. Диалоговое окно с вопросом о раскладке приведено на рис. 9 ниже.

Рис. 9 – Выбор раскладки клавиатуры

В нем просто щелкните мышью кнопку «Forward» (Далее), расположенную внизу справа.

Следующим пунктом установки ОС Ubuntu будет подготовка жесткого диска – выбор способа разбивки винчестера компьютера на разделы.

Рис. 10 – Выбор варианта разбивки жесткого диска

В моем руководстве (из которого и вырвана данная инструкция) предполагается, что ОС Ubuntu устанавливается на компьютер где она будет ЕДИНСТВЕННОЙ ОС, и жесткий диск компьютера девственно чист — на нем отсутствуют какие-либо разделы. Также, загрузчик на компьютере будет один-единственный, и установлен он будет в основную загрузочную запись (MBR). Исходя из всего вышеперечисленного, с разбивкой дисков никаких танцев» не предполагалось, потому в моем руководстве об этом ничего и не было сказано. Когда-нибудь я обязательно соберусь с силами, и напишу об это отдельную инструкцию, а пока…

Самый простой способ подготовки жесткого диска – в меню, показанном на рис. 10, просто поставить птичку напротив пункта «Использовать весь диск» (как собственно это и сделано на указанном рисунке). При таком выбора программа установки сама автоматически создаст два минимально необходимых раздела – т.н. «корневой» (обозначается как «/») и второй – раздел подкачки. Раздел подкачки займет максимально до пары Гигабайт (в зависимости от характеристик компьютера), а все остальное место жесткого диска будет отдано под один единственный корневой раздел. Такая разбивка не оптимальна с учетом двух обстоятельств: с одной стороны, вся система при установке займет максимум около 4 Гб дискового пространства, а с другой стороны минимальный объем современного жесткого диска составляет более 80 Гб. И отдавать все место под единственный раздел – не самый лучший вариант. Но зато самый простой! И вы можете смело использовать именно его. Но, при желании вы можете самостоятельно выполнить разбивку диска, руководствуясь собственными критериями. Для этого в меню, показанном на рис. 10, вам необходимо поставить птичку напротив пункта «Указать разделы вручную (расширенно)». После того, как вы выбрали метод разбивки диска на разделы, щелкните мышью кнопку «Forward» (Далее), расположенную внизу справа.

Выбрав ручную разбивку диска на разделы, учтите, что на диске обязательно должны присутствовать как минимум два раздела. Первый из них называется «корневым» (или по-просту «корнем» –  /). Как уже было сказано ранее, вся «установленная по умолчанию» операционная система Ubuntu займет на диске не более 4 Гб. Таким образом, первый («корневой») раздел можно сделать размером, допустим, 20 Гб. Второй необходимый для работы ОС Ubuntu раздел – это раздел подкачки (swap). Его размер варьируется в зависимости от характеристик компьютера, и рекомендуется в пределах от 0,5 до 2-х объема ОЗУ. Ну и еще «стандартно» для пользовательской машины советуют сделать отдельным как минимум еще один раздел — /home. В этом разделе будут находиться рабочие папки всех пользователей системы. Такое отселение их в отдельный аздел позволит сохранить пользовательские данные в случае переустановки системы…

Если вы выбрали ручную разбивку диска, то попадете в следующее меню:

Рис. 11 – Структура жесткого диска

В нем отображается текущее состояние разделов жесткого диска. Первый (единственный) жесткий диск компьютера будет обозначен в таблице как устройство /dev/sda. Чтобы создать на нем новый раздел, щелкните правой кнопкой мыши на поле «Свободное место», сразу под надписью /dev/sda. Появится следующее контекстное меню:

Рис. 12 – Контекстное меню

В контекстном меню щелкните пункт «Новый раздел». Также, вместо щелчка правой кнопкой мыши можно просто выделить мышью поле «свободное место», а потом щелкнуть кнопку «Новый раздел» расположенную под таблицей. Откроется следующее окно создания нового раздела, показанное на рис. 13 ниже (на следующей странице).

Рис. 13 – Создание нового раздела

Первым создайте корневой раздел. В открывшемся окне выберите тип раздела только «Первичный» (Примечаение — это важно в случае, если больше разделов в системе нет. Если вы устанавливаете Ubuntu на копьютер, на котором уже есть одна или несколько ОС, например,  Windows, то в системе уже будет основной раздел. В таком случае для корневого раздела может быть выбран и логический диск в дополнительном разделе), в поле «Размер нового раздела»  введите желаемый размер. Допустим, для 20 Гб введите 20000. Местоположение раздела – «Начало». Следующий параметр – «Использовать как». В данном случае на самом деле в этом поле указывается тип файловой системы. Наиболее подходящими для установки ОС Ubuntu являются файловые системы ext3 или ext4. Выберите один из указанных типов файловой системы. И последнее поле – «Точка монтирования». В этом поле указывается, куда в файловую систему будет смонтирован создаваемый раздел. Так как вы создаете корневой раздел, выберите «/». Все, все параметры для нового раздела указаны. Нажмите кнопку «ОК». Программа разметки диска обновит информацию с учетом только что созданного корневого раздела и выведет обновленную структуру разделов жесткого диска:

Рис. 14 – Структура жесткого диска с созданным корневым разделом

Снова мышью выделите поле, отмеченное как «свободное место» и либо щелкните на нем правой кнопкой мыши и выберите в контекстном меню пункт «Новый раздел», либо просто щелкните кнопку «Новый раздел» под таблицей. В этот раз вам нужно создать раздел подкачки. Это специальный раздел, которому вы просто должны указать размер и тот факт, что он будет использоваться как раздел подкачки.

Итак, после нажатия кнопки «Новый раздел» вы снова увидите окно создания раздела. В этот раз заполните его поля следующим образом:

Рис. 15 – Создание раздела подкачки

Тип раздела в этот раз вы уже можете выбрать любой – как «Первичный», так и «Логический». Учтите только, что первичных разделов на жестком диске может быть не более четырех. Если вы планируете создать первичные разделы еще, то лучше выбрать «Первичный». Если все последующие разделы вы будете создавать как логические, то и для раздела подкачки можете выбрать «Логический».  В поле «Размер нового раздела»  введите желаемый размер. Допустим, для 1 Гб введите 1000. Местоположение раздела – «Начало». Следующий параметр – «Использовать как». При создании раздела подкачки в этом поле нужно из списка выбрать пункт, в котором именно так и указано – «раздел подкачки».  При этом поле «Точка монтирования» будет неактивным – ОС Ubuntu не монтирует раздел подкачки в файловую систему. Когда все параметры для нового раздела указаны, щелкните мышью кнопку «ОК». Программа разметки диска обновит информацию с учетом только что созданного корневого раздела и выведет обновленную структуру разделов жесткого диска:

Рис. 16 – Структура жесткого диска с созданными разделами

Итак, два минимально необходимых для установки ОС Ubuntu раздела жесткого диска созданы. Можно продолжать установку ОС. Но, если у вас есть и место и желание, то вы можете создать и еще дополнительные разделы. Например, как было сказано выше, создать отдельный раздел с точкой монтирования ./home для домашних папо пользователей…

После того, как вы определили все разделы жесткого диска, щелкните мышью кнопку «Forward» (Далее), расположенную внизу справа.

Следующий пункт установки ОС Ubuntu – создание первого пользователя. Для этого вам выводится следующее меню:

Рис. 17 – Создание первого пользователя

В данном меню нужно в поле «Как вас зовут?» указать реальное имя пользователя, из которого система автоматом сформирует логин – имя, используемое для входа в систему. Если предложенный установщиком логин вас не устроит, введите свой собственный вариант. После этого дважды введите придуманный свой собственный пароль. Логин и пароль обязательно сохраните в безопасном месте на случай, если забудете их. ВНИМАНИЕ! Для логина и пароля используйте буквы латинского алфавита и не используйте кириллицу! Имя для вашего компьютера программой установки также будет сгенерировано автоматически. Если оно вас не устроит, введите свой вариант в соответствующем поле. Так же, как и в случае с логином, не используйте кириллическое имя компьютера! Последний пункт меню называется «Войти автоматически». Если в этом поле поставить «птичку», при загрузке компьютера логин и пароль данного пользователя будут подставляться автоматически. В противном случае, при каждом включении компьютера, чтобы попасть на свой рабочий стол, вам нужно будет обязательно вводить логин и пароль. После того, как заполните все поля, щелкните мышью кнопку «Forward» (Далее), расположенную внизу справа.

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

Рис. 18 – Сводная информация о предстоящей установке

Чтобы продолжить установку, щелкните мышью кнопку «Установить», расположенную внизу справа. Начнется непосредственная установка операционной системы. Дополнительное уточнение – именно после этого будет выполнено редактирование таблицы разделов жесткого диска, удаление (если таковые были) старых и создание новых разделов, а также их форматирование.

Рис. 19 – Процесс установки ОС Ubuntu

После того, как установка ОС Ubuntu будет завершена, программа установки предложит вам перезагрузить компьютер, как показано на рис. 20 ниже:

Рис. 20 – Предложение перезагрузить компьютер

Перезагрузите компьютер. На этом установка будет завершена.

Запуск системы

При загрузке ОС Ubuntu сначала отображается логотип и бегающая полоска, аналогично показанным на рис. 5 ранее, после чего появляется окно авторизации, в котором система просит вас ввести Имя пользователя (логин) и затем Пароль для того, чтобы вы смогли получить доступ к рабочему столу. Введите те значения логина и пароля, которые вы указали при создании пользователя во время установки (см. рис. 17 ранее).

Рис. 21 – Ввод логина
Рис. 22 – Ввод пароля

После того, как вы введете корректные значения логина и пароля, откроется рабочий стол.

Примечание: Если при установке системы в меню создания пользователя вы отметили пункт «Войти автоматически» (см. рис. 17 ранее), то для того, чтобы попасть на рабочий стол, логин и пароль вводить будет не нужно.

Индикатор выбранной раскладки клавиатуры

Одним из самых больших неудобств только что установленной ОС Ubuntu является отсутствие какой бы то ни было видимой индикации выбранной раскладки клавиатуры. Добавить ее очень просто. Как это сделать описано у меня в блоге вот в этой заметке.

Видео максимально простой установки новой версии Ubuntu 12.04 LTS

Очень быстро родившаяся заметка

На одном из форумов возник вопрос про подключение компьютера под управлением Ubuntu 9.04 к оператору мобильной связи 3G (в конкретном случае речь шла про Peoplenet).

Я сравнительно недавно настраивал знакомому мобильный интернет 3G от другого провайдера, но разница не велика. Потому, я быстренько наклепал скриншотов, и вот теперь у меня есть «материал» и для этой заметки. Единственное, скриншоты делались уже на Ubuntu 9.10 и … без модема. Но сути это не меняет…

Итак, подключал я через контекстное меню Network Manager-а. Для этого, первым делом правой кнопкой мыши щелкаем на значке подключения к сети (по умолчанию — вверху справа).

Рис. 1 Вызываем контекстное меню Network Manager-а

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

Рис. 2 Окно настроек Network Manager-а

В нем вверху выбираем закладку «Мобильные широкополосные», и жмем кнопку «Добавить».

Рис. 3 — Выбор модема

В открывшемся окне вам в случае наличия в системе реального модема, его нужно выбрать из списка (это на тот случай, если их несколько). Хуже, если система модем не определила. В таком случае «танцев с бубном в консоли» не избежать. Но там не так уж и сложно — если что, читайте вот эту запись — «Ubuntu — запускаем 3G модем в консоли«.

После чего нажать кнопку «Вперед».

Рис. 4 — Выбор страны

Думаю, в открывшемся окне, с выбором страны трудностей возникнуть не должно 😉 … Выбираем свою и жмем «Вперед».

Рис. 5 — Выбор провайдера

Откроется окно выбора провайдера. Как видно на рис. 5, окно имеет две части. В верхней есть список известных провайдеров, и именно ради этого списка мы выбирали страну в предыдущем шаге (рис. 4 выше). В случае, если ваш провайдер присутствует в списке, просто ставим «птичку» напротив надписи «Выберите вашего провайдера из списка» и выделяем самого провайдера.

Но, как я сказал выше, речь шла про Peoplenet, а его в списке в вверху не было. По этому, я поставил «птичку» напротив надписи «Я не могу найти своего провайдера и хочу ввести его вручную». После чего ввел название для своего провайдера (тут вы вольны вписать любое нравящееся вам). И вдобавок, я выбрал из списка стандарт связи (ту технологию, которую использует провайдер). После чего нажал кнопку «Вперед».

Если вы в пункте, показанном на рис. 5 выбрали уже имеющегося провайдера из списка, а не заводили его вручную, то следующего рисунка (№6) вы не увидите. Это окно выводится только при создании соединения вручную.

Рис. 6 — Окно ввода параметров соединения

В этом окне нужно ввести (минимально) Имя пользователя, пароль и номер дозвона. Чтобы видеть вводимый пароль (с целью убедиться, что не было ошибок), поставьте птичку «Показать пароли».

Возможно понадобится также открыть закладку «Параметры IPv4» и там ввести адреса серверов DNS, и возможно, имя точки доступа.

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

После того, как все настройки введены, жмем кнопку «Применить» внизу справа. После чего снова возвращаемся в окно настроек Network Manager-а:

Рис. 7 — Окно настроек Network Manager-а со вновь созданным соединением

Теперь у нас есть настроенное соединение к провайдеру. Оно также добавится в контекстное меню Network Manager-а, вызываемое правой кнопкой мыши и показанное на рис. 1 выше. Чтобы подключиться к провайдеру будет достаточно просто щелкнуть по нему мышью…

300-тысячная статейка про интернет шлюз

Вводная

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

Началась моя эпопея со звонка одного знакомого: «А вот можно проверять на вирусы интернет-трафик всего офиса?» Причем, вопрошавший хотел, чтобы эта функция была возложена на какой-нибудь «трехкопеечный» SOHO-роутер, которому родную прошивку заменили на какую-нибудь альтернативную. Пришлось его разочаровать, т.к. те «коробочки» на использование которых собственно и рассчитывал мой знакомый, с такой задачей вряд-ли смогли бы справиться ввиду своей «хилости». Из недорогих (по меркам цен для подобного оборудования) решений были найдены шлюзы серии NetDefend фирмы D-Link. Цена эта, правда, оказалась сопоставима с ценой недорогого нового офисного компьютера (самого системного блока без монитора и манипуляторов). В итоге знакомый сказал «дорого» (и в последствии пропал с горизонта и вовсе), а я решил поискать информацию о том, как сделать это с помощью обычного компьютера, использующего Linux в качестве ОС, и open-source ПО для выполнения поставленных задач.  По мере чтения всего того, что предлагал Google, вырисовывались даже гораздо более интересные перспективы, чем изначальная задача. В итоге и родился этот «сборник цитат», который Вы сейчас и читаете.

Процесс выполнения данной задачи можно разделить на несколько этапов.  Заканчиваю рассусоливать и перехожу к первому:

1. Просто шлюз

«Просто шлюз» нам нужен, чтобы все пользователи офиса (или, допустим, «другие домашние компьютеры») могли легко подключаться к нему и получить доступ в интернет. Кстати, эта первая часть заметки будет очень полезна тем, кто ищет ответ на вопросы типа «Как расшарить интернет под Linux-ом?» и тому подобные.

Итак, у меня был компьютер, работающий под управлением Linux (дистрибутив Ubuntu 9.04). Компьютер был как раз класса того самого «недорогого офисного». Причем справится с задачей может даже б/у компьютер, объявлений о продаже которых предостаточно в любой местной газете. Главное отличие — в нем было установлено две сетевые платы. Первая сетевая плата называлась eth0, и через нее компьютер был подключен в интернет. Вопрос подключения к интернету тут мы рассматривать не будем. Единственное, что примем к сведению, так это адрес платы eth0 — 192.168.1.2 и адрес шлюза, к которому она подключена — 192.168.1.1. Ко второй сетевой плате — она называлась eth1 — я планировал подключать пользователей офиса. Причем, сделать это подключение для пользователей максимально простым. С этой целью на интерфейсе я поднял DHCP-сервер.

Сначала я выставил сетевой плате eth1 фиксированный адрес. Причем, выбрать его нужно таким, чтобы он не попадал в диапазон адресов подсети, к которой относится сетевая плата eth0 (а там, как мы помним, у меня 192.168.1.ххх). В итоге я решил, что пускай у моей платы eth1 адрес будет 192.168.100.1. Чтобы назначить ей такой адрес, я отредактировал файл /etc/network/interfaces, для чего ввел команду:

sudo nano /etc/network/interfaces

В файле этом я дописал следующие строки:

auto eth1
iface eth1 inet static
        address 192.168.100.1
        netmask 255.255.255.0

После чего вышел из редактора, нажав «Ctrl + X». На вопрос о сохранении изменений ответил «Да» (кнопка «Y»). И подтвердил имя файла, не меняя его (кнопка «Enter»). Введенные строки определяют следующее:

  • Интерфейс eth1 автоматически стартует при загрузке (строка «auto eth1«);
  • У интерфейса eth1 будет статический (т.е. фиксированный) адрес (слово «static«)
  • У интерфейса eth1 будет адрес 192.168.100.1
  • Маска подсети на интерфейсе eth1 будет 255.255.255.0

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

sudo /etc/init.d/networking restart

Теперь пришло время установить DHCP-сервер и запустить его на интерфейсе eth1. Для этого вводим команду:

sudo apt-get install dnsmasq

(Подразумевается, что через интерфейс eth0 наш компьютер уже подключен к интернету, и репозитории настроены). По этой команде программа dnsmasq (а это и есть тот самый DHCP-сервер) была загружена и установлена на мой компьютер. Мне оставалось лишь подстроить ее параметры под мои нужды. Для этого я слегка подредактировал файл настроек указанной программы (/etc/dnsmasq.conf), введя команду:

sudo nano /etc/dnsmasq.conf

Файл сам по себе достаточно большой, и настроить в нем можно «ну очень много всего». Для моего простейшего случая оказалось достаточным указать всего два параметра. Первый делом я указал тот интерфейс, на котором сервер собственно и будет работать (слушать DHCP и DNS запросы). Параметр указывается одной простой и доходчивой строкой:

interface=eth1

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

dhcp-range=192.168.100.50,192.168.100.250,12h

Опять же, выходим из редактора и сохраняем изменения.

Эти два указанных мной параметра определили следующее: клиентам, подключающимся к сетевой плате eth1, автоматически будут присваиваться адреса в диапазоне от 192.168.100.50 до 168.100.250, и «срок аренды» составит 12 часов. Обратите внимание, что диапазон выдаваемых адресов, должен принадлежать той подсети, которую мы указали для сетевой платы eth1.

Два слова про «срок аренды». Параметр этот опциональный и указывает — в течении какого времени сервер помнит, что «такой-то» адрес, который был автоматически присвоен «такому-то» клиенту (компьютеру), все еще «принадлежит» ему. Таким образом сохраняется возможность, что один и тот же компьютер будет по возможности получать один и тот же адрес. (Если вдруг это кому-то важно 🙂 )…

Все остальные настройки в файле закомментированы (т.е. либо не используются, либо, там где это необходимо, используются «умолчательные» значения). Они позволяют более тонко настроить сервер под собственные нужды. В том числе например, ЖЕСТКО указать присвоение одному и тому же клиенту всегда одного и того же адреса, а также многое другое. С другой стороны, все перечисленные в файле параметры хорошо прокомментированы (на английском, естественно), на тот случай, если Вы решите настроить сервер именно «более тонко»…

Но вернемся к нашему серверу. После того, как настройка его завершена, перезапускаем сам сервер:

sudo /etc/init.d/dnsmasq restart

С этого момента можно подключать клиентов (компьютеры пользователей) к сетевой плате eth1. Одного (например, второй компьютер в доме) можно подключить и напрямую, а если нескольких, то тогда уже через обычный hub или switch с требуемым числом портов. На компьютерах клиентов, работающих в ОС Windows, в свойствах сетевой платы для протокола TCP/IP нужно указать «Получить IP-адрес автоматически» и «Получить адрес DNS-сервера автоматически». В таком случае компьютер пользователя при подключению к нашему шлюзу будет автоматом настраиваться на то, что основным шлюзом у него будет 192.168.100.1, маска подсети — 255.255.255.0, и адрес ему будет присваиваться один из того диапазона, который мы указали при настройке dnsmasq (то есть, от 192.168.100.50 и до 168.100.250). Для компьютеров клиентов, работающих под управлением ОС Linux, скорее всего вообще не нужно будет ничего настраивать — в большинстве дистрибутивов после установки DHCP-клиент стартует автоматом…

Итак, наши пользователи на автомате успешно подключаются к шлюзу и получают адреса. Все хорошо?! На первый взгляд — да. Первые пару минут… Но потом оказывается, что до полного счастья им не хватает …доступа в интернет! А мы то ведь шлюз делали…

На самом деле, для того, чтобы выпустить наших пользователей в интернет, осталось всего лишь включить функцию NAT (преобразования сетевых адресов). Для этого создадим новый файл настроек файервола, в котором на данном этапе будет всего одна единственная — включить NAT. Чтобы создать новый файл правил (я назвал его fw.rules и разместил в папке /etc/network, а Вы можете придумать и другое имя), введем следующую команду:

sudo touch /etc/network/fw.rules

Теперь откроем новый файл в редакторе:

sudo nano /etc/network/fw.rules

И впишем в него следующее:

        #!/bin/sh
        INET="eth1"
        INETIP="192.168.1.1"

        iptables -F INPUT
        iptables -F FORWARD
        iptables -F OUTPUT

        iptables -P INPUT ACCEPT
        iptables -P OUTPUT ACCEPT
        iptables -P FORWARD ACCEPT

        iptables -t nat -A POSTROUTING -o $INET -j SNAT --to-source $INETIP
        echo "1" > /proc/sys/net/ipv4/ip_forward

Сохраняем изменения, выходим из редактора. Из того, на что стоит обратить внимание:

  • Строка INET=»eth1″ указывает на сетевой интерфейс (плату) к которой подключены пользователи, которым мы будем предоставлять доступ в интернет.
  • Строка INETIP=»192.168.1.1″ указывает на шлюз, где у нас этот самый интернет и живет (помните, в самом начале я упоминал о том, что «…мой компьютер к интернету подключен сетевой платой eth0 через шлюз 192.168.1.1». Так вот это он и есть….

ПРИМЕЧАНИЕ: Данный файл должен выглядеть несколько иначе, если ваш «шлюз» использует не статический IP-адрес, а получает его динамически по DHCP. В этом случае вам нужно вместо функции SNAT использовать MASQUERADE. В итоге строка

        iptables -t nat -A POSTROUTING -o $INET -j SNAT --to-source $INETIP

должна быть заменена на такую

        iptables -t nat -A POSTROUTING -o $INET -j MASQUERADE

а строку

        INETIP="192.168.1.1"

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

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

sudo chmod +x /etc/network/fw.rules

…и запускаем его:

sudo /etc/network/fw.rules

Все! Вот теперь наши пользователи наконец-то получили то, чего так желали — доступ в интернет. Осталось лишь сделать так, чтобы наши «правила файервола» запускались автоматически каждый раз при загрузке компьютера. Для этого еще раз отредактируем файл /etc/network/interfaces:

sudo nano /etc/network/interfaces

И впишем в него еще одну строку. В приведенном ниже примере она выделена красным:

auto eth1
iface eth1 inet static
pre-up /etc/network/fw.rules
        address 192.168.100.1
        netmask 255.255.255.0

Сохраняем изменения и выходим из редактора.

В итоге мы получили самый простой шлюз, который при подключении к нему пользователей автоматом присваивает им IP-адреса и «выпускает» их в интернет. Таким образом, первая часть «глобального плана» выполнена. Ах да, я же не сказал — что выполнено и зачем? Помните еще — в самом начале знакомый мой хотел, чтоб шлюз проверял трафик на вирусы? Так вот сам шлюз мы уже сделали. Пользователи из локальной сети к нему подключаются, получают автоматом (по DHCP) все настройки и затем — доступ в интернет. Что нам это дало? Весь трафик нашей локальной сети теперь идет через шлюз, и проверять на вирусы достаточно только трафик самого шлюза, а не каждого клиентского компьютера в отдельности. О самой «борьбе с вирусами» — будет далее, а пока что еще немного ссылок про шлюзы:

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

…Ну а к вирусам мы еще вернемся.

И следующим шагом на этом пути будет установка и запуск прокси-сервера.

Вы только что поставили Ubuntu (часть1)

А где же мой русский…

(На самом деле, здесь вместо слова «русский» спокойно можно подставить, например, «молдавский», «украинский» или любой другой язык, кроме разве что английского)…

…интерфейс?

А ведь и правда — при запуске диска с Ubuntu русский язык выбрал? Выбирал! При установке на вопрос о языке системы — «русский» отвечал? Отвечал!. А как установил и загрузился — так снова половина интерфейса — на «родном английском»…

А на самом деле причина кроется в том, что Вы установили Ubuntu … с компакт-диска (CD). Это именно из-за недостаточности объема компакт-диска на него просто физически не помещаются полные пакеты локализации для целого ряда языков. И по этому, по окончании установки интерфейс системы оказывается локализован не полностью.

Кстати, эта проблема ПРОСТО НЕ ВОЗНИКНЕТ ВОВСЕ, если Вы для установки Ubuntu скачаете образ не CD, а DVD диска! Он «толще» и в него пакеты локализации помещаются полностью, а не урывками…

Но что же делать тому, кто уже установил Ubuntu с CD? Доустановить всё недостающее из интернета!

Итак, убеждаемся, что компьютер подключен к интернету, и запускаем в меню «Система» («Sistem») подменю «Администрирование» («Administration»), а в нем  пункт «Локализации» («Language Support»):

interface1
Рис. 1 — Запуск выбора языка локализации системы

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

interface2
Рис. 2 — Сообщение о необходимости доустановить поддержку языка (также, может быть выведено на английском языке)

И если Вы все еще хотите, чтобы ВО ВСЕЙ системе использовался тот самый язык интерфейса, который был выбран Вами при установке, то просто щелкните мышью кнопку «Установить».

Начнется загрузка из интернета и установка недостающих пакетов локализации:

intrface_3
Рис. 3 — Установка недостающих пакетов локализации

После того, как недостающие пакеты будут доустановлены, Вы наконец-то увидите следующее меню (может быть уже на русском языке):

intrface_4
Рис. 4 — Меню выбора языка системы

Меню позволяет Вам:

  1. выбрать язык интерфейса системы для себя любимого
  2. выбрать язык интерфейса системы для всех пользователей системы
  3. добавить или удалить языки локализации интерфейса.

Что Вам надо, то и выбирайте. Единственное, что осталось добавить по языку интерфейса — изменения вступают в силу после перезагрузки…

А где же моя русская … клавиатура … и индикатор?

Радость по поводу «вернувшегося» русского интерфейса длится недолго — в аккурат до первой нужды ввести (напечатать) что-либо на русском языке. И тут становится ясно, что ничего не ясно! Чем переключать? Куда смотреть? Может и хорошо было бы отнести эти вопросы к числу риторических, но не в данном случае, увы…

Итак, начнем как раз не с раскладки, а с индикатора. Это очень просто. Достаточно щелкнуть правой кнопкой мыши на свободном месте в верхней панели. Вот так:

kbd1
Рис. 5 — Вызов контекстного меню панели

В выпавшем контекстном меню нужно выбрать пункт «Добавить на панель». Появится список всех апплетов, которые можно добавить на панель. Вот такой:

kbd2
Рис. 6 — Список апплетов

В этом списке в данном конкретном случае нас интересует пока что один единственный апплет — «Индикатор раскладки клавиатуры». Прокручиваем список и находим указанный апплет. Щелкаем мышью сначала по нему, а потом по кнопке «+ Добавить«. На верхней панели появится слово «США». Это и есть индикатор раскладки клавиатуры. Таким образом, индикация выбранной раскладки клавиатуры у нас уже есть.

Переходим к настройке самих раскладок и их переключения.

Для этого снова щелкаем правой кнопкой мыши, но в этот раз уже не на пустом месте, а прямо на индикаторе раскладки (слово «США»). Появится контекстное меню показанное на рисунке ниже:

kbd3
Рис. 7 — Контекстное меню апплета «Индикатор раскладки клавиатуры»

В данном меню находим пункт «Параметры клавиатуры» и щелкаем по нему.

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

Нас вроде как интересовали раскладки. По этому, в верхней части окна щелкаем по закладке, которая так и называется — «Раскладки». В ней будут перечислены все установленные в сисстеме раскладки клавиатуры. Как и показано на рисунке ниже (по большому счету, этот мой скриншот — не совсем корректный пример, так как, для случая «свежеустановленной» Ubuntu там будет только одна позиция — США. Мой скриншот — это уже результат добавления требовавшихся раскладок…):

kbd4
Рис. 8 — Окно настройки параметров клавиатуры

Чтобы добавить раскладку (то есть, у Вас в списке, допустим, только США, а хочется русской), щелкаем мышью кнопку «+ Добавить«. Откроется следующее окно — выбора раскладки:

kbd5
Рис. 9 — Окно выбора раскладки

Хотите, выбирайте по стране, хотите — по языку — как Вам удобней и понятней — дело Ваше. Выбрав нужную раскладку, щелкаем мышью кнопку «+ Добавить«. Возвращаемся в список установленных раскладок. Если Вам нужно было добавить не только русский, а и, допустим, как мне, еще и украинский (или какой другой) язык, возвращаемся к рис. 8 (щелкаем мышью кнопку «+ Добавить«.) Выбираем следующую раскладку, потом следующую, и так — до тех пор, пока список раскладок не устроит Вас полностью…

После этого Вы сможете выбирать для ввода любой из языков, представленных в списке. Осталось настроить — чем их переключать. На самом деле комбинация клавиш для переключения раскладки в системе уже настроена, просто мы не знаем какая 🙂 … Да, кстати, а вдруг она нас не устроит?…

Щелкаем мышью по кнопке «Параметры раскладки». Вот так:

kbd6
Рис. 10 — Выбор параметров раскладки

Появится новое окно. Прямо поверх старого:

kbd7
Рис. 11 — Выбор параметров раскладки

В окне «Параметры раскладки» нас интересует раздел «Key(s) to change layout» (ну не перевели его пока еще). Щелкаем мышью по треугольнику слева от этой надписи. Откроется список возможных вариантов комбинаций клавиш, использующихся для переключения раскладок клавиатуры. Как писали раньше на банках с кофе — «выберите по вкусу».

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

kbd8
Рис. 12 — Применение параметров ко всей системе

… и на всякий случай — если после установки, доустановки или переустановки языка интерфейса системы Вы еще не перезагружались, то самое время сделать это…

Управление разделами HDD программой Gparted с диска Live-CD Ubuntu

Берем Live-CD Ubuntu. Как берем? Скачиваем. Где берем? На сайте Ubuntu. Пишем на болванку. Вставляем диск в привод компьютера и загружаемся с него.

У тех, кто хочет отредактировать разделы HDD у компьютера, на котором уже установлена Ubuntu (или другой дистрибутив Linux, использующий десктоп Gnome), может возникнуть вопрос — а почему именно Live-CD? Почему просто не загрузить Linux с жесткого диска, а потом запустить программу Gparted и поредактировать разделы? Ответ прост — Gparted не сможет работать со смонтированными разделами.  А раздел жесткого диска с которого компьютер только что загрузил Linux, размонтировать не получится (равно как и другие разделы, используемые Linux-ом в работе, если таковые имеются). Вот потому-то и нужно загрузиться с Live-CD — при этом все разделы жеского диска компьютера не смонтированы и доступны к редактированию.

Есть еще один «подводный камень», который может вас подстерегать при работе с разделами на жестком диске. Суть его в том, что если один из имеющихся на винчестере разделов — swap (подкачка), то Ubuntu, загружаясь даже с Live-CD его использует! В итоге, если допустим, swap находится на логическом диске в расширенном разделе, у вас не получится изменить что-либо в этом (расширенном) разделе до тех пор пока вы не прекратите использование подкачки Ubuntu-ой (swap-off)…

Вернемся к загрузке. У дистрибутивов версий 8.04 и выше первым делом автоматически появляется список, предлагающий Вам выбрать один из возможных языков интерфейса. Выбираем кнопками управления курсором («стрелками») и подтверждаем ENTER-ом. У более старых дистрибутивов этот список «автоматом» не выпрыгивает. Чтобы заполучить русский интерфейс в этом случае, нужно нажать кнопку «F2» и уже потом выбрать язык. В итоге мы видим вот такое меню:

ubuntu_boot_menu1
Рис. 1. Стартовое меню диска Live-CD Ubuntu

Выбираем пункт «Запустить Ubuntu без установки на компьютер«. Начнется загрузка Ubuntu. После того, как загрузка завершена, запускаем программу Gparted. Расположение ярлыка программы Gparted в стандартном меню Ubuntu показано на рисунке ниже:

Рис. 2 Запуск программы Gparted
Рис. 2. Запуск программы Gparted

При запуске программа Gparted автоматически определяет все дисковые накопители (жесткие диски), установленные в компьютере. Если винчестеров в системе несколько, то выбрать тот, с которым предполагается работать (менять/создавать/удалять разделы) позволяет кнопка в правой верхней части окна программы (см. рис. 3 ниже):

Рис. 3. Выбор жесткого диска
Рис. 3. Выбор жесткого диска

При выборе жесткого диска, думаю, полезной будет информация о правилах их нумерации в Linux-е. Диск, подключенный «мастером» на 1-м IDE контроллере, будет именоваться как /dev/hda. Второй IDE-винчестер (slave-устройство на 1-м контроллере) будет именоваться как /dev/hdb, третий (master-устройство на 2-м контроллере) — /dev/hdc, четвертый (slave-устройство на 2-м контроллере) — /dev/hdd. Первый винчестер, подключенный к SATA контроллеру будет иметь имя /dev/sda, второй — /dev/sdb, третий — /dev/sdc, и т.д. Также, cледует учесть, что флешки и карточки памяти также попадают в один ряд к устройствам SATA (то есть, тоже будут видны как /dev/sdx). Также, хорошей подсказкой при выборе жесткого диска будет информация о его физическом размере, отображаемая на кнопке рядом с номером устройства.

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

gparted_select_partition
Рис. 4. Выбор раздела жесткого диска

Изменение размера раздела

Выбираем раздел, который хотим изменить, и щелкаем на нем правой кнопкой мыши. Тот же самый результат достигается, если правой кнопкой мыши щелкать не на графическом поле, а на строке в списке, соответствующей выбранному разделу. Появляется контекстное меню со списком предлагаемых действий. Еще одно — если до запуска программы gparted Вы пользовались разделом диска, структуру которого теперь хотите изменить (например, копировали файлы и т.п.), то он будет смонтирован в файловую систему. В этом случае, чтобы иметь возможность менять параметры раздела, его нужно будет сначала отмонтировать. Для этого служит пункт «Unmount» контекстного меню. Жмем сначала его. После этого станут доступны остальные пункты контекстного меню.

Итак, раздел отмонтирован, приступаем к изменению его размера. Для этого в контекстном меню выбираем пункт «Resize/Move«. Появится следующий экран:

gparted_resize_partition
Рис. 5. Окно изменения размера раздела жесткого диска

В появившемся окне мы видим наш раздел, так сказать, графически, а также, цифры «про него» — под рисунком. Что нам дает это меню. Во первых, в графической половине мы видим какая часть раздела занята (выделено цветом) и какая свободна (белая). Также, по краям слева и справа присутствуют стрелки, которые можно тягать мышью. Сразу под рисунком присутствуют два параметра — Minimum size и Maximum size. Как нетрудно догадаться, это те значения, меньше и больше которых мы не сможем выставить новый размер данного раздела. Минимум определяется объемом уже записанной на данном разделе диска информации (кому нужна была бы программа, стирающая данные с диска?!). Максимум определяется либо текущим размером (как в приведенном примере), либо может быть и больше в случае, если на жестком диске есть еще неразмеченное пространство, примыкающее к данному разделу. В таком случае оно также будет присутствовать в графическом представлении раздела в виде серых полей слева или справа. Благодаря этому раздел можно сделать даже больше, чем он был до этого…

Теперь вернемся к цифрам (тем которые в нижней половине окна). Суть их такова. «Free space preceding» —  свободное место перед разделом. «New size» — новый размер диска. «Free space following» — сваободное место после раздела. Как видим, на моем рисунке в момент, когда это меню только открыли, свободного места нет ни до ни после раздела, а его новый размер равен старому. В случае, если же на жестком диске присутствуют неразмеченные области, примыкающие к данному разделы, то в полях «Free space preceding» и/или «Free space following» будут присутствовать соответствующие цифры, отличные от нуля.  Когда Вы начнете мышью тягать стрелки, изображенные по краям рисунка раздела, все эти цифры (место до и после, а также размер) начнут меняться. С другой стороны, Вы можете самостоятельно (вручную) в каждом из цифровых полей ввести новые значения (если Вы сторонник точных чисел)…

Теперь немножко «лирики». Если Вы читаете данную инструкцию с целью освободить немного места на диске с Windows, для того, чтобы установить Linux, то достаточно будет потянуть мышью стрелку справа так, чтобы свободного места после раздела (значение «Free space following«) стало больше той цифры, которую авторы выбранного Вами дистрибутива указывают как минимально необходимую для установки. Для Mandriva, например, рекомендуют не менее 4 Гб. Обратите внимание, что значения в указанных цифровых полях приведены в Мегабайтах…

gparted_new_partition_parameters_set
Рис. 6. Подтверждение нового размера раздела жесткого диска

После того, как новый размер раздела задан, жмем кнопку «Resize/Move«, как показано на рис. 6. Учтите, что:

  • Не стоит (по крайней мере в случае «откусывания от Windows чуток места под попробовать Linux«) освобождать место «до раздела» (слева).
  • Не бойтесь — что-либо потерять на этом этапе не получится! Все описанные выше действия — это пока только «план действий», и никаких реальных изменений с Вашим жестким диском еще не происходило!
  • Если Вы только освобождали место для Linux, и создавать новые разделы Вам не нужно, то можете сразу перходить к заголовку «А вот теперь приступим!!!» ниже.

Создание нового раздела

Теперь у нас появилось свободное место, чтобы создать новый раздел. Для этого жмем правой кнопкой либо на сером поле в графическом представлении структуры диска, либо на пункте «unallocated» в списке под рисунком. В контекстном меню выбираем пункт «New«.

gparted_new_partition
Рис. 7. Создание нового раздела

Откроется следующее меню:

gparted_new_partition_parameters
Рис. 8. Выбор параметров нового раздела жесткого диска

В нем мы создаем новый раздел и задаем все его параметры. Часть параметров нам уже знакома — они присутствовали в меню изменения раздела, описанном выше. Но добавились еще два параметра. Пункт «Create as» позволяет выбрать тип создаваемого раздела из следующих двух: «Primary partition» (основной раздел) и «Extended partition» (дополнительный раздел). Второй из «новых» пунтов «Filesystem» позволяет задать тип файловой системы, в которую будет отформатирован вновь созданный раздел. Список выбора достаточно широк, описывать его тут я не планировал. Почитать можно тут (по английски, правда). Определившись с параметрами нового раздела, жмем кнопку «+Add«. Если Вам нужно создать несколько разделов, то возвращаемся к заголовку «Создание нового раздела» выше…

А вот теперь приступим!!!

Обращаю внимание на то, что все описаные выше процедуры изменения старого раздела, создания нового раздела, НА САМОМ ДЕЛЕ ПОКА ЧТО НИЧЕГО НЕ СДЕЛАЛИ СО СТАРОЙ СТРУКТУРОЙ ЖЕСТКОГО ДИСКА, а всего лишь запланировали указанные действия. По мере того, как мы будем писать наш «план действий», его список будет расти в самом нижней части окна программы.  С другой стороны, в верхней части окна программы становится активной кнопка «Undo» (отмена). Она позволяет отменить действие (назначенное задание).

После того, как весь «план работы» создан, внимательно просматриваем его еще разок. Если находим ошибку — жмем кнопку «Undo» и создаем новое (в этот раз уже правильное) задание.

После того, как мы на 100% убедились, что все правильно, пришло время нажать кнопку «Apply» (применить). Вот именно после ее нажатия и начнется процесс изменения структуры Вашего жесткого диска…

gparted_apply_changes
Рис. 9. «Apply» — настройка завешена, пора менять разделы!!!

В зависимости от объема «запланированной работы», а также от объема информации на диске, Вам может потребоваться некоторое терпение, чтобы дождаться окончания…

Как стать root-ом в Ubuntu Live CD

Я периодически использую Ubuntu именно в режиме загрузки с компакт-диска (т.н. Live CD). Причем, в последнее время, благодаря публикациям данного сайта, загрузку выполняю уже не с диска, а с флешки…

И все хорошо, но вот только загрузившись в режиме Live CD, мне иногда так не хватает возможности стать root-ом. Обычно, советуют выполнять:

sudo ‘команда

… мол, у пользователя ubuntu, да с паролем ubuntu, есть все административные права… Хорошо, наверное, но все-таки хочется root-а. А пароль как пишет сама Ubuntu в своей документации, «засекречен из соображений безопасности»… Выход есть, и довольно простой — в консоли выполняем команду

sudo passwd root

На приглашение вводим пароль (сами придумываете какой), затем вводим его повторно, и все — у Вас есть свой собственный пароль root-а! После этого, вводим в консоли

su

… и на запрос вводим  свой новый пароль.