25 июля 2018

Руководство по использованию текстового редактора Nano в Linux, для начинающих

Nano — текстовый редактор командной строки, который предустановлен почти в каждом дистрибутиве Linux. Им часто предпочитают пользоваться новые пользователи из-за его простоты, по сравнению с другими текстовыми редакторами командной строки, такими как vi/vim и emacs. Он имеет множество полезных функций, таких как синтаксическая подсветка, нумерация строк, простой поиск и многие другие… Мы изучим как пользоваться редактором Nano, примеры редактор Nano Linux, текстовый редактор nano команды.

Установка редактора Nano в Linux

Если по какой-либо причине nano еще не установлен на вашем дистрибутиве Linux, вы можете легко установить его с помощью следующих команд:

Читать далее
13 июля 2018

Фильтрация запросов на уровне DNS

Начиная с версии 9.8.1 DNS-сервера bind появилась новая возможность — DNS RPZ.

Что это за зверь и с чем его едят?

Аббревиатура RPZ означает response policy zone — зона с политикой ответов. Это технология, разработанная ISC, которая предоставляет опрераторам связи простой способ блокирования DNS-запросов к некоторым ресурсам или перенаправления их на альтернативный адрес. RPZ — это зона, которая может передаваться между серверами (DNS AXFR/IXFR), защищена подписями транзакций (DNS TSIG) и обновляется в режиме реального времени (DNS NOTIFY).

Формат зоны

Как и для любой другой DNS-зоны, требуется SOA-запись и, как минимум, одна NS-запись. SOA — действительная, имеющая серийный номер и таймеры запись, используемая для делегирования зоны и указывающая времени жизни записей (TTL). NS-запись никогда не используется и служит для совместимости. Обычно, единственная NS-запись имеет фиктивное значение localhost. Остальная часть зоны — это выражения для DNS-политик. Политики могут применяться к именам доменов или к их шаблонам.

Читать далее
6 июля 2018

Управление окружением Python c Pipenv

Привет, мой друг!

Предположу, что для управления Python окружением в вашем проекте до сих пор используется pip и virtualenv.

Если это так, то позвольте рассказать о таком инструменте, как Pipenv.

Pipenv — это современный инструмент для управления рабочим окружением в Python.

Читать далее
1 июня 2018

Непонятные штуки — $_ и % в Power Shell

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

Читать далее
18 мая 2018

Расчеты на рынке FORTS

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

При торговле фьючерсами на рынке FORTS в целях снижения рисков производится постоянная переоценка позиции: в зависимости от того, как изменилась цена купленного/проданного контракта, на счет Клиента зачисляется/списывается вариационная маржа.

Читать далее
13 мая 2018

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

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

Немного предыстории. После того, как компьютер добавлен в домен Active Directory, вы можете войти в него под учетной записью домена или локального пользователя (если конечно локальная учетная запись не отключена и вход под ней не заблокирован через групповые политики). В Windows XP и Windows Server 2003 на экране входа в систему имелся раскрывающийся список «Вход в систему», в котором можно было выбрать в какой домен вы хотите войти, либо, если нужно зайти под локальной учетной, для этого нужно выбрать пункт

.

Однако в последующих версиях Windows это раскрывающийся список из интерфейса входа в систему убрали. Вместо этого списка на экране входа в систему, появилась небольшая кнопка «Как я могу войти в другой домен» (How to log on to another domain). Если вы нажмете эту кнопку, появится следующий совет.

)

Как вы видите, в тексте сообщения присутствует имя данного компьютера (в нашем примере РKZ-ТZI01K1). И если вы хотите войти под локальной учетной записью, в поле с именем пользователя нужно указать имя локального пользователя в следующем формате РKZ-ТZI01K1\Administrator. Естественно, если имя компьютера довольно длинное и не несет смысловой нагрузки, его набор с клавиатуры может стать настоящим испытанием.

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

Секрет в том, что Windows использует символ точки (.) в качестве псевдонима для локального компьютера. Поэтому, если в поле с именем пользователя поставить 

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

Теперь после 

 осталось набрать имя локальной учетной записи и пароль.

Этот небольшой трюк может использоваться для входа на доменный компьютер под локальной учетной записью во всех поддерживаемых версиях Windows, начиная с Windows Vista и заканчивая Windows 10 и Windows Server 2016.

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

22 апреля 2018

О технологии PoE простыми словами

Технология PoE (Power-over-Ethernet) была создана для IP-телефонии, точек доступа, IP-камер и других устройств, к которым нежелательно проводить отдельный питающий кабель. На качество передачи данных технология PoE влияния не оказывает, используется потенциал уровня Ethernet, то есть сетевых кабелей.

Важно понимать, что питающее устройство (например, PoE маршрутизатор) подает питание в кабель только в том случае, если подключенное устройство (например, IP камера) поддерживает технологию PoE.  Как это происходит?

Читать далее
18 апреля 2018

Как работает Московская биржа

Разбираемся в фондовом рынке

Минутка матчасти.

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

Но если вы знаете, как все устроено внутри, у вас будет преимущество.

Читать далее
13 апреля 2018

Как работать с Linux Screen

Linux Screen позволяет вам:

  • Создавать множественные окна в терминале SSH;
  • Сохранять сессию активной даже при сетевых отключениях;
  • Отключаться и переподключаться к сессии из разных мест;
  • Выполнять длительный процесс, не поддерживая активную сессию.

Установка Screen с Yum

Наверняка, у вас уже есть Linux Screen в вашей системе. В большинстве дистрибутивов Red Hat и CentOS вы можете найти Screen Linux в /usr/bin/ screen . Чтобы увидеть, находится ли там Screen , вы можете использовать следующую команду:

Если у вас нет Screen, то можете установить его из RPM или файла пакета для вашей системы. Например, на CentOS можно установить Screen с yum:

Поскольку вы, скорее всего, уже имеете Screen или можете использовать RPM, я не буду описывать установку Screen из ресурса. А расскажу, как использовать screen.

Запуск Screen Linux

Screen запускается с командной строки точно так же, как любая другая команда :

Теперь вы в окне в Screen. Оно функционирует точно так же, как нормальная оболочка за исключением нескольких специальных символов.

Команда управления

Команда : «Ctrl-a»
Screen использует команду «Ctrl-a» , это — клавиша «CTRL» и нижний регистр «a» работает как сигнал отправить команды Screen’у вместо оболочки. Например, «Ctrl-a» потом «?». У Вас должна появится страница справки Screen.

Привязка клавиш — это команды , которые принимает Screen после того, как нажаты “Ctrl-a”. Вы можете переназначить эти ключи по своему усмотрению, используя .screenrc файл, но я использую значения по умолчанию. 

Создание окон

Команда: «Ctrl-a» «c». Чтобы создать новое окно используйте «Ctrl-a» «c».

Такая комбинация, с настройками по умолчанию создаст новое окно. Ваше старое окно будет все еще активно.
Например, я могу выполнить top и затем открыть новое окно, чтобы заняться чем-то другим. Top остается рабочей! Чтобы попробовать, запустите screen, а затем выполните top. (Примечание: некоторые скрины у меня урезаны, чтобы оставить свободное место.)

Запустите…

Теперь откройте новое окно с: «Ctrl-a» «c»

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

Переключение между окнами

Команда : «Ctrl-a» «n»

Screen позволяет перемещаться вперед и назад. Вы можете использовать «Ctrl-a» «n», чтобы вернуться обратно. Эта команда переключает на следующее окно.

Работает как карусель — циклично выполнится назад по кругу к Вашему первому окну. Вы можете создать несколько окон и переключателя по ним «Ctrl-a» «n» для следующего окна или «Ctrl-a» «p» для предыдущего окна. Каждый процесс продолжит работать, пока вы не закроете окно. 

Отсоединение от Screen

Команда: «Ctrl-a» «d»

Экран позволяет отсоединяться от окна и вернуться к нему позже. Если сетевая связь прервется, то Screen автоматически отсоединит сеанс!

Можете отсоединиться, используя «Ctrl-a» «d».

Все окна Screen все еще там, и вы можете повторно присоединиться к ним. Это удобно при использовании rsync для миграции сервера.

Повторное присоединение к Screen

Если Ваше соединение оборвалось или Вы отсоединились от Screen’а, Вы можете повторно подключиться, просто запуская:

Произойдёт повторное подключение к Вашему Screen. Однако, если у Вас есть несколько Screen’ов,то может получится это:

Если так, просто определите Screen, который хотите.

Регистрация действий Screen

Я считаю важным фиксировать то, что я делаю на чьем-либо сервере. К счастью, Screen это упрощает.
Используя «Ctrl-a» «H», запускается регистрация сеанса. Screen продолжит добавлять данные к файлу через многократные сеансы. Использовать функцию регистрации очень полезно для отслеживания того, что вы делали, особенно если требуется вносить много изменений. Если что-то пойдёт не так, всегда будет возможность найти ошибку.

Получение уведомлений

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

Если Вы ожидаете ответа от «долгой» программы, можете использовать «Ctrl-a» «M», чтобы отследить активность. Screen высветит предупреждение внизу страницы, когда отклик будет зарегистрирован на том экране.
Я использую это при выполнении команды, которая занимает много времени. Могу просто запустить команду, переключиться на другое окно и не возвращаться обратно каждый раз, чтобы проверить состояние.

Если загружаете большой файл или компилируете программу, по завершению придёт уведомление. Это – будет сигналом того, что задание выполнено. Чтобы контролировать такие моменты без вывода экрана я используют «Ctrl-A» «_».

Блокировка сеанса Screen

Если Вам необходимо отойти от Вашего компьютера на несколько минут, Вы можете заблокировать свой сеанс, используя «Ctrl-a» «x». Для доступа к сеансу снова потребуется пароль.

Screen used by root <jeffh>.
Password:

Остановка Screen

Когда вы закончили работу, я бы порекомендовал закончить сеанс вместо того, чтобы оставить его на потом. Чтобы остановить Screen, можете, как обычно, просто ввести «Exit» из своей оболочки. Это закроет Screen. Чтобы завершить сеанс вы должны закрыть все окна.

Как только вы закрываете все окна выводится сообщение о том, что Screen начал завершение.

[screen is terminating]

Альтернативно, Вы можете использовать «Ctrl-a» «k».

10 апреля 2018

SQL за 20 минут

Каждый уважающий себя веб-разработчик, да и не только, должет знать SQL. Хоть он и существует аж с 70-х годов прошлого века, он до сих пор очень широко используется, и без него будет сложно создать нечто серьёзное. Большинство full-stack фреймворков умеют работать с SQL. В их числе: ActiveRecordDoctrineHibernate и многие другие. Несмотря на это, иногда приходится «замарать руки» и пуститься в настоящий SQL.

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

Читать далее