Как стать автором
Обновить
1
0
Александр Неверов @usefree

Пользователь

Отправить сообщение

Перенос работающей системы Ubuntu на зашифрованные диски

Время на прочтение6 мин
Количество просмотров6.3K
Речь пойдет о том, как зашифровать уже работающею операционную систему Linux. Предположим, что у вас есть сервер, на котором уже работает ваш сайт или на котором сохранено много личной информации. Конечно же вы не хотите, чтобы это все попало в чужие руки. Также, если вы используете сервер как хранилище даны – явно не хочется, чтобы эти данные были кем-то использованы при изъятии жестких дисков. Ситуаций может быть много… По этому нам нужно защитить наше содержимое от чужих глаз.
Читать дальше →
Всего голосов 24: ↑19 и ↓5+14
Комментарии44

Инструменты IT-департаментов больших компаний: как избавляться от хаоса и считать каждую копейку

Время на прочтение8 мин
Количество просмотров52K

Форма заявки

Представьте, что вы приходите в большую компанию руководить ИТ-департаментом, и понимаете, что там просто конь не валялся. В самом простом случае у вас есть от 50 человек, куча бумажек про закупки и перемещения, инвентарная опись оборудования… и, пожалуй, всё.

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

Следующий уровень — понять, что ИТ вообще должны делать и в какие сроки — появляется каталог услуг и соглашения с бизнесом; где какой сервер, лицензия, как они используются — дискаверинг и система учета; кто к чему имеет доступ, кто должен согласовывать изменения, сколько стоит предоставление каждого ИТ-сервиса. Финал — чёткое понимание затрат ИТ и возможность внятно/быстро объяснять бизнесу куда уходят его деньги. А заодно и сколько будут стоить его новые хотелки.

В итоге IT-департамент, призванный автоматизировать работу компании, автоматизирует и свою работу тоже. Естественно, для решения таких задач есть специальный уже готовый софт. Про него и поговорим.
Читать дальше →
Всего голосов 38: ↑30 и ↓8+22
Комментарии33

LVM — это просто!

Время на прочтение4 мин
Количество просмотров626K
Собственно, хочется просто и доступно рассказать про такую замечательную вещь как Logical Volume Management или Управление Логическими Томами.
Поскольку уже давно пользуюсь LVM-ом, расскажу что он значит именно для меня, не подглядывая в мануалы и не выдёргивая цитаты из wiki, своими словами, чтобы было понятно именно тем кто ничего о нем не знает. Постараюсь сразу не рассказывать о всяческих «продвинутых» функциях типа страйпов, снапшотов и т.п.
Читать дальше →
Всего голосов 58: ↑54 и ↓4+50
Комментарии75

Как загружается Linux

Время на прочтение9 мин
Количество просмотров21K
Update: Статья и скрипты были обновлены в марте 2013 (прошло 5 лет, старые скрипты не сильно отличаются от текущих, но всё-таки лучше изучать актуальный код, а логика загрузки системы за эти годы немного изменилась — иначе работает udev, появились новые синтетические fs вроде devtmpfs, /var/run переехал в /run, etc.).

Когда я осваивал Linux, мне было очень интересно что происходит при загрузке системы. Попытка разобраться в процессе загрузки привела меня в исходники загрузочных скриптов (/etc/inittab, /etc/rc*, /etc/init.d/*, ...) и их конфигов (/etc/sysconfig/*, /etc/cond.f/*, ...). Надо отметить серьёзные размеры и сложность этих скриптов — чтобы в них разобраться потребовалось немало времени. Но я в те времена искренне верил, что загрузка это сложный процесс, и что размеры и сложность загрузочных скриптов вполне оправданы.

Когда меня окончательно достал RedHat (2001 год), я решил собрать свой дистрибутив на базе LFS. Для своего дистрибутива пришлось самостоятельно разрабатывать загрузочные скрипты, и тут-то выяснилась правда: ничего сложного в процессе загрузки нет!
Читать дальше →
Всего голосов 85: ↑76 и ↓9+67
Комментарии71

О здравом смысле и руководстве компаний

Время на прочтение12 мин
Количество просмотров87K
Мы все знаем, что при росте организации решения руководства обычно становятся все более и более неоптимальными, все дальше отходят от здравого смысла. Это связано с общим законом сложных иерархических систем, в которых руководство не выбирается, а назначается (в результате назначаются люди, худшие, чем назначающий руководитель).

Это все понятно, но почему руководство в больших организациях зачастую принимает не просто неоптимальные, но абсурдные решения? Почему не руководствоваться ну хотя бы здравым смыслом?
Под катом несколько примеров из трудовой биографии старого опытного программиста.
Читать дальше →
Всего голосов 112: ↑106 и ↓6+100
Комментарии109

«Идеальный» www кластер. Часть 1. Frontend: NGINX + Keepalived (vrrp) на CentOS

Время на прочтение9 мин
Количество просмотров110K


Этом цикле статей «Идеальный www кластер», я хочу передать базовые основы построения высокодоступного и высокопроизводительного www решения для нагруженных web проектов для неподготовленного администратора.
Статья будет содержать пошаговую инструкцию и подойдет любому человеку кто освоил силу copy-paste
Ошибки найденые вами, помогут в работе и мне и тем кто будет читать эту статью позже! Так что любые улучшение и правки приветствуются!

Хочу отметить, что эта инструкция родилась в процессе миграции web-систем компании Acronis в высокодоступный кластер. Надеюсь мои заметки будут полезны и для Вас!.

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

На frontend мы будем использоваться связку из двух службы:



keepalived — реализации протокола VRRP (Virtual Router Redundancy Protocol) для Linux. Демон keepalived следит за работоспособностью машин и в случае обнаружения сбоя — исключает сбойный сервер из списка активных серверов, делегируя его адреса другому серверу.

Другими словами, у нас 2 сервера на которых прописано по одному публичному адресу. Если любой из этих серверов падает, то адрес упавшего подхватывается вторым.
Демоны keepalived общаются по протоколу VRRP, посылая друг другу сообщения на адрес 224.0.0.18.
Если сосед не прислал свое сообщение, то по истечению периода он считается умершим и оба адреса обслуживает оставшаяся нода. Как только упавший сервер начинает слать свои сообщения в сеть, все возвращается на свои места


nginx [engine x] — это HTTP-сервер и обратный прокси-сервер, а также почтовый прокси-сервер, написанный Игорем Сысоевым. Уже длительное время он обслуживает серверы многих высоконагруженных российских сайтов, таких как Яндекс, Mail.Ru, ВКонтакте и Рамблер. Согласно статистике Netcraft nginx обслуживал или проксировал 15.08% самых нагруженных сайтов в октябре 2013 года.

Основная функциональность HTTP-сервера

  • Обслуживание статических запросов, индексных файлов, автоматическое создание списка файлов, кэш дескрипторов открытых файлов;
  • Акселерированное обратное проксирование с кэшированием, простое распределение нагрузки и отказоустойчивость;
  • Акселерированная поддержка FastCGI, uwsgi, SCGI и memcached серверов с кэшированием, простое распределение нагрузки и отказоустойчивость;
  • Модульность, фильтры, в том числе сжатие (gzip), byte-ranges (докачка), chunked ответы, XSLT-фильтр, SSI-фильтр, преобразование изображений; несколько подзапросов на одной странице, обрабатываемые в SSI-фильтре через прокси или FastCGI, выполняются параллельно;
  • Поддержка SSL и расширения TLS SNI.


Другие возможности HTTP-сервера

  • Виртуальные серверы, определяемые по IP-адресу и имени;
  • Поддержка keep-alive и pipelined соединений;
  • Гибкость конфигурации;
  • Изменение настроек и обновление исполняемого файла без перерыва в обслуживании клиентов;
  • Настройка форматов логов, буферизованная запись в лог, быстрая ротация логов;
  • Специальные страницы для ошибок 3xx-5xx;
  • rewrite-модуль: изменение URI с помощью регулярных выражений;
  • Выполнение разных функций в зависимости от адреса клиента;
  • Ограничение доступа в зависимости от адреса клиента, по паролю (HTTP Basic аутентификация) и по результату подзапроса;
  • Проверка HTTP referer;
  • Методы PUT, DELETE, MKCOL, COPY и MOVE;
  • FLV и MP4 стриминг;
  • Ограничение скорости отдачи ответов;
  • Ограничение числа одновременных соединений и запросов с одного адреса;
  • Встроенный Perl.


Читать дальше →
Всего голосов 46: ↑40 и ↓6+34
Комментарии79

HAPRoxy для Percona или Galera на CentOS. Его настройка и мониторинг в Zabbix

Время на прочтение5 мин
Количество просмотров35K


Очень короткая статья, про то как можно использовать HAProxy в качестве балансировщика для multi-master серверов MySQL, таких как Percona или Galera.



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


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


От слов к делу, установка и настройка очень просты:
Читать дальше →
Всего голосов 27: ↑25 и ↓2+23
Комментарии16

Zabbix 2.2 верхом на nginx + php-fpm и mariadb

Время на прочтение10 мин
Количество просмотров58K


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


Перед нами стоит нетривиальная задача, добиться максимальной производительности известной системы мониторинга zabbix.
Среди многих статей в интернете, есть много описаний типовых установок этой системы. Я подробно опишу, как заставить работать zabbix быстрее.
В качестве базовой системы я буду использовать CentOS 6.4. Так же как и многие я люблю Debian, Gentoo и все остальные дистрибутивы, но эта статья именно для CentOS.

Все что нужно делать я распишу подробно и шаг за шагом, и начнем с базовой настройки нашего CentOS
Читать дальше →
Всего голосов 26: ↑22 и ↓4+18
Комментарии117

Перевод учебника по алгоритмам

Время на прочтение1 мин
Количество просмотров166K


Рад сообщить, что вышел перевод отличнейшего учебника Дасгупты, Пападимитриу, Вазирани «Алгоритмы», над которым я работал последние несколько лет. В книге многие алгоритмы объяснены гораздо короче и проще, чем в других учебниках: с одной стороны, без излишнего формализа, с другой — без потери математической строгости. Откройте книгу на каком-нибудь известном вам алгоритме и убедитесь в этом. =)

В общем, угощайтесь: печатный вариант перевода, электронный вариант перевода (PDF), печатный вариант оригинала, электронный вариант оригинала (PDF).
Читать дальше →
Всего голосов 323: ↑321 и ↓2+319
Комментарии109

Cellebrite Touch — телепорт для телефона

Время на прочтение15 мин
Количество просмотров85K


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

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

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

И вот, анализируя затраты времени, вы обнаружили что клиенты в основном люди нетехнические и поэтому регулярно просят помочь с, казалось бы, несложными вещами: перекинуть записную книжку на новый телефон, сохранить смски и фотки, записать мелодии вместо тех дурацких, что поставил производитель, установить программки. На все это у ваших продавцов уходит масса времени, и постоянно образуются очереди. А уж принятие на комиссию старого телефона способно отвлечь одного из продавцов на полчаса-час: помимо сохранения (или удаления) данных клиента из аппарата вам надо внимательно осмотреть телефон, оценить работоспособность всех компонентов, объявить цену и обосновать ее. Можно, конечно, нанять еще продавцов, открыть новую точку или даже несколько. И, наверное, вы бы так и поступили. Но как человек изобретательный и технически грамотный, вы решили сначала поискать возможности автоматизации всей этой рутины и попытаться обойтись текущими мощностями и сэкономить.

И вот после пары дней поиска вы уже с удивлением читаете про устройство Cellebrite, которое умеет все, что вам надо и даже больше. Давайте почитаем вместе.
Читать дальше →
Всего голосов 150: ↑144 и ↓6+138
Комментарии39

Strace

Время на прочтение7 мин
Количество просмотров123K
В течение минуты думал над заголовком, так ничего и не придумал…
Strace. Наверное нет того человека, который бы не слышал про strace. Если кто не слышал, то strace — это утилита, отслеживающая системные вызовы, которые представляют собой механизм трансляции, обеспечивающий интерфейс между процессом и операционной системой (ядром). Эти вызовы могут быть перехвачены и прочитаны. Это позволяет лучше понять, что процесс пытается сделать в заданное время. Перехватывая эти вызовы, мы можем добиться лучшего понимания поведения процессов, особенно если что-то идет не так. Функциональность операционной системы, позволяющая отслеживать системные вызовы, называется ptrace. Strace вызывает ptrace и читает данные о поведении процесса, возвращая отчет. Детали можно прочитать в вики или официальном man. Собственно вот, ну и речь конечно же о Linux. В других ОС свои аналоги.
Так вот, лично для меня strace это как последняя инстанция. Когда уже все логи просмотрены, все debug и verbose ключи включены, а причина проблем так и не обнаружена, я достаю из широких штанин запускаю strace. Есть одно но, strace это такой инструмент который вовсе не является серебряной пулей, которая тут же все покажет и расскажет. Для работы с strace требуется наличие определенных знаний и чем шире и глубже эти знания тем больше вероятность обнаружения проблемы.
В интернетах полно вводных статей, где описываются примеры запуска strace. Я же в этой статье покажу частные проблемы и их решение с помощью strace.
Читать дальше →
Всего голосов 97: ↑91 и ↓6+85
Комментарии33

Bitcoin: Децентрализованная электронная денежная система

Время на прочтение12 мин
Количество просмотров46K
Предлагаю вниманию сообщества вольный перевод оригинальной статьи Сатоси Накамото «Bitcoin: A Peer-to-Peer Electronic Cash System».

От переводчика:
Я не являюсь профессиональным переводчиком и плохо разбираюсь в криптографии, но вот недавно заинтересовался технологией Биткоин и захотел начать изучение с первооснов. Беглый поиск по интернету не дал мне перевода основополагающей статьи Сатоси Накамото и я решил попробовать перевести ее сам.
Вскоре после того как перевод был начат я понял, что английский язык, скорее всего, не является родным для автора статьи поскольку иногда было крайне трудно понять — что автор подразумевает и зачем в одном предложении так много частиц «and». Однако большинство трудностей удалось преодолеть и я решил представить сей конечный продукт публике.

Читать дальше →
Всего голосов 103: ↑73 и ↓30+43
Комментарии13

Wi-Fi: неочевидные нюансы (на примере домашней сети)

Время на прочтение14 мин
Количество просмотров1.4M
Сейчас многие покупают точки доступа 802.11n, но хороших скоростей достичь удается не всем. В этом посте поговорим о не очень очевидных мелких нюансах, которые могут ощутимо улучшить (или ухудшить) работу Wi-Fi. Всё описанное ниже применимо как к домашним Wi-Fi-роутерам со стандартными и продвинутыми (DD-WRT & Co.) прошивками, так и к корпоративным железкам и сетям. Поэтому, в качестве примера возьмем «домашнюю» тему, как более родную и близкую к телу. Ибо даже самые администые из админов и инженеристые из инженеров живут в многоквартирных домах (или поселках с достаточной плотностью соседей), и всем хочется быстрого и надежного Wi-Fi.
[!!]: после замечаний касательно публикации первой части привожу текст целиком. Если вы читали первую часть — продолжайте отсюда.
Читать дальше →
Всего голосов 234: ↑231 и ↓3+228
Комментарии138

PulseAudio, часть 1: управление из командной строки

Время на прочтение11 мин
Количество просмотров151K

Одним из новшеств Ubuntu 10.10 стал переход с «голой» ALSA на PulseAudio. Ранее постилось много советов прибить и удалить его для решения проблем, однако теперь PulseAudio стабилен, с ним не шипят колонки ;), и он способен на такое, что не снилось Alsa :)

В статье я с самого начала расскажу что это такое и как оно работает, а так же:
  • Как переключить весь звук на USB-колонку на закрывая приложений (usb hotplug);
  • Как выбрать порт звуковой карты для вывода звука (колонки ноутбука/наушника, LineOut/Наушники);
  • Как выбрать профайл звуковой карты (маппинг физических портов: 5.1 или стерео+lineIn?);
  • Как управлять громкостью и усиливать тихий сигнал (!);
  • Как сделать Skype громче музыки?

И представлю своё решение, призванное упростить управление PulseAudio ;)
Любопытно!
Всего голосов 112: ↑106 и ↓6+100
Комментарии83

Видео-курс по JavaScript на русском языке

Время на прочтение1 мин
Количество просмотров218K
Здравствуй, Хабр!

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



Первая лекция: Введение в JavaScript, немного истории, числа (тут есть ошибка: функция toFixed округляет значения).



Остальное – под катом.
Читать дальше →
Всего голосов 135: ↑127 и ↓8+119
Комментарии23

Майнинг и как он работает: матчасть

Время на прочтение6 мин
Количество просмотров560K

Привет, %username%!
Я расскажу и покажу как работает основа генерации денег в криптовалютах — майнинг. Как создается первый блок, новые блоки и как появляются деньги из ниоткуда.
Чтобы было проще понять, мы напишем свой импровизированный майнер для импровизированной криптовалюты HabraCoin.
Читать дальше →
Всего голосов 274: ↑252 и ↓22+230
Комментарии482

Крупнейшая афера с Bitcoin происходит прямо сейчас

Время на прочтение8 мин
Количество просмотров309K
Одна из крупнейших афер в истории сети Bitcoin происходит прямо сейчас. 96000 BTC, а это почти сто миллионов долларов, по состоянию на текущий момент, было выведено со счетов клиентов, поставщиков и администраторов сайта SheepMarketplace (SMP) в минувшие выходные. SMP был одной из главных площадок, пришедших на замену SilkRoad, который был закрыт в октябре, а теперь, в результате этой аферы закрыт и сам SMP. Пока трудно точно утверждать, что именно происходит, но пользователи сайта пытаются разгадать эту головоломку на популярном сайте reddit.com в саб-реддите r/sheepmarketplace.

image

Вот что известно на данный момент: злоумышленнику (одиночке или группе людей) удалось подделать остатки средств на счетах пользователей, показывая, что у них были биткоины в собственных кошельках на сайте, в то время как на самом деле они уже были переведены. В течение недели весь сайт планомерно опустошался, так что к выходным, когда администрация сайта поняла, что что-то происходит, и закрыла площадку, со счетов пользователей было списано гигантское количество средств. И всё это произошло всего через несколько дней после того как другой конкурент SilkRoad — Black Market Reloaded — объявил, что завершает работу из-за неспособности вместить массовый приток новых пользователей, покидающих SheepMarketplace.
Читать дальше →
Всего голосов 293: ↑268 и ↓25+243
Комментарии298

Скринкасты в линуксе, личный опыт

Время на прочтение4 мин
Количество просмотров10K
openshot
Чуть больше года назад я публиковал здесь на хабре скринкасты. Недавно вышел последний и хотелось поделится опытом создания скринкастов под линуксом.
Читать дальше →
Всего голосов 78: ↑70 и ↓8+62
Комментарии26

Несколько полезных сервисов

Время на прочтение2 мин
Количество просмотров126K
Хочу поделиться ссылками на несколько полезных сервисов. Некоторые из них помогут сэкономить время, другие — сделают за Вас незнакомую/нелюбимую работу. Список разбит по категориям, чтобы было легче ориентироваться.

Сервисы опросов
userreport.com (добавил Romanych)
simpoll.ru
webanketa.com (добавил mihass)

Кнопки постинга в социальные сети
Кнопка от Яндекса
addthis.com (добавил UksusoFF)
share42.com
Читать дальше →
Всего голосов 382: ↑356 и ↓26+330
Комментарии108

Как я внедрял первое правило ведения бизнеса в России

Время на прочтение5 мин
Количество просмотров125K
image
«1. Держите сервера за границей»
(с) 9,5 правил ведения безопасного бизнеса в России


Вводная часть.

Мы — маленькая компания из 10 сотрудников, половина из которых периодически работает удаленно.
Что мы имели изначально: сервер с Windows и терминальным доступом, который стоял в офисе. У всех пользователей были ноутбуки. Никакой особо конфиденциальной информации у нас нет, за исключением важной для бизнеса информации.
В один прекрасный момент меня окончательно «добила» паранойя и было принято решение вынести сервер за пределы офиса.

Читать 7 шагов:
Всего голосов 187: ↑164 и ↓23+141
Комментарии136

Информация

В рейтинге
Не участвует
Откуда
Киев, Киевская обл., Украина
Дата рождения
Зарегистрирован
Активность