Как стать автором
Обновить
6
0
Павел @da3mon

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

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

Минимализм 21 века

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


27-летний американец Крис Юриста (Chris Yurista) говорит, что цифровые файлы ему важнее, чем физическое имущество. Он продал квартиру, мебель и остальной хлам. Вся его модная одежда помещается в рюкзак, а сам Крис обрёл истинную свободу — он может ехать куда угодно и работать в любом месте. Главное, чтобы рядом был велосипед, ноутбук и маленькая клавиатура цифрового пианино.
Читать дальше →
Всего голосов 237: ↑197 и ↓40+157
Комментарии443

Ликвидаторы безграмотности

Время на прочтение1 мин
Количество просмотров707
Думаю, что каждый из вас сталкивался с небольшими сайтами, которые не смотря на размер, делают очень важное дело — учат чему-то. При этом всё происходит настолько просто и легко, что после закрытия страницы, ощущаешь приятный зуд в пятках. Я хочу поделиться с вами огромным списком ссылок, но это невозможно, потому как знаю я лишь три подобных сайта.1 Из-за этого я предлагаю вам вступить в диалог и составить реальный список ликвидаторов безграмотности.

UPD: Цель поста — сконденсировать адреса, которые и себе пригодятся и другим можно кинуть вместо фразы «на гугле забанили?»

То, о чём известно мне.
Всего голосов 44: ↑35 и ↓9+26
Комментарии42

Начало атомной эры. Demon Сore

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


Летом 1946 года над атоллом Бикини была взорвана атомная бомба мощностью 27 килотонн в тротиловом эквиваленте. Целью испытания под кодовым названием Able были корабли, расположенные в лагуне, с «экипажем» из подопытных животных — свиней, коз и крыс. Однако еще задолго до испытания жертвами этой бомбы стали два физика-ядерщика, проводивших эксперименты с плутониевым зарядом бомбы. Он получил печальную известность и собственное имя — Demon core.
Читать дальше →
Всего голосов 119: ↑115 и ↓4+111
Комментарии39

Планктонная Windows

Время на прочтение4 мин
Количество просмотров10K
Короткая заметка об опыте автоматизации восстановления Windows.

Введение


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

Постановка задачи


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

Принятые меры


Дальнейшее во-многом очевидно. Для рядовых пользователей Windows заморожена с помощью купленной в нужном количестве Deep Freeze (утилита уже описывалась на Хабре), что позволяет после перезагрузки получить девственно чистую ОС и главное позволяет сэкономить на антивирусах, файерволах и обновлении железа. Можно использовать аналогичную программу — это дело вкуса. Для серверов же выполняются регулярные образы диска с системой. Почту загнал в Google Apps, клиент trayos.com — все-таки GMail от вирусов сам по себе уже весьма неплохо защищает. Однако с рабочими станциями имеем целый ряд проблем. Далее в порядке возрастания сложностей.
Читать дальше →
Всего голосов 109: ↑94 и ↓15+79
Комментарии55

ФСБ готова закрыть Wikileaks

Время на прочтение1 мин
Количество просмотров1.1K
Вчера стало известно, что Wikileaks собирается опубликовать некие секретные документы «о политической ситуации в России», и уже сегодня получен комментарий от ФСБ в связи с этим.

«При желании и соответствующей команде его [ресурс WikiLeaks] можно сделать недоступным навсегда», — сказал эксперт Центра информационной безопасности ФСБ РФ.
Читать дальше →
Всего голосов 147: ↑134 и ↓13+121
Комментарии353

Поисковик Scroogle вынужден закрыться

Время на прочтение2 мин
Количество просмотров2.2K
Дэниел Брандт основал поисковую систему Scroogle.org в 2003 году в качестве «приватного» фронтенда к Google, чтобы исключить использование следящих cookies и сбор поисковой истории. Хотя компания Google терпела нарушение ToS несколько лет, но в феврале 2012-го Scroogle был окончательно заблокирован.

В отличие от прошлых случаев, в этот раз исправить ситуацию не удалось. После блокировки, а также продолжительной DDoS-атаки на серверы Дэниела Брандта, проект пришлось закрыть.

«У меня больше нет доменов в онлайне, — сказал Брандт, — Я также изъял все мои домены из DNS, потому что хочу подать сигнал преступным элементам, что у меня больше не осталось серверов, которые можно уничтожить. Надеюсь, это предотвратит дальнейшие атаки на моих предыдущих хостинг-провайдеров. Scroogle.org закрыт навсегда. Даже если бы у меня вообще не было проблем с DDoS, начиная с декабря, Scroogle всё равно был отстранён от выдачи Google, и уже умирал. Это могло продолжаться ещё полгода, если бы я не потерял семь серверов из-за DDoS, но это всё».
Читать дальше →
Всего голосов 38: ↑30 и ↓8+22
Комментарии27

Сохранение flash-video из кэша браузера

Время на прочтение2 мин
Количество просмотров26K
Представьте себе, вот открыли вы в браузере с десяток порно видео-роликов, они тем временем успели скачаться и вдруг оказалось, что браузер нужно закрывать. Что делать?

Сохранить все открытые в данный момент в браузере flv-видеоролики в отдельную директорию можно вот таким простым однострочным скриптом.

copy-cached-flv.sh


#!/bin/bash
 
lsof -n +L1 | grep /tmp/Flash | \
    awk '{line = "/proc/" $2 "/fd/" $4; sub("[^0-9]*$","",line); print line}' | \
    xargs -I '{}' cp -v '{}' -t "$@" --backup=t


Читать дальше →
Всего голосов 90: ↑74 и ↓16+58
Комментарии60

Как работает yield

Время на прочтение6 мин
Количество просмотров663K
На StackOverflow часто задают вопросы, подробно освещённые в документации. Ценность их в том, что на некоторые из них кто-нибудь даёт ответ, обладающий гораздо большей степенью ясности и наглядности, чем может себе позволить документация. Этот — один из них.

Вот исходный вопрос:
Как используется ключевое слово yield в Python? Что оно делает?

Например, я пытаюсь понять этот код (**):
def _get_child_candidates(self, distance, min_dist, max_dist):
    if self._leftchild and distance - max_dist < self._median:
        yield self._leftchild
    if self._rightchild and distance + max_dist >= self._median:
        yield self._rightchild

Вызывается он так:
result, candidates = list(), [self]
while candidates:
    node = candidates.pop()
    distance = node._get_dist(obj)
    if distance <= max_dist and distance >= min_dist:
        result.extend(node._values)
        candidates.extend(node._get_child_candidates(distance, min_dist, max_dist))
        return result


Что происходит при вызове метода _get_child_candidates? Возвращается список, какой-то элемент? Вызывается ли он снова? Когда последующие вызовы прекращаются?

** Код принадлежит Jochen Schulz (jrschulz), который написал отличную Python-библиотеку для метрических пространств. Вот ссылка на исходники: http://well-adjusted.de/~jrschulz/mspace/

Подробный и обстоятельный ответ
Всего голосов 141: ↑136 и ↓5+131
Комментарии41

Одноразовые URI: после прочтения уничтожить

Время на прочтение1 мин
Количество просмотров50K
Когда вы передаёте кому-то по почте или скайпу секретный текст/ссылку/пароль, то стоит предусмотреть дополнительные меры безопасности. А именно, подумать о том, что копия вашего сообщения хранится во многих местах: в логах почтового сервера, в истории сообщений Skype, в истории браузера. Как обеспечить секретность информации в таких условиях?

Оригинальный способ придумали разработчики сервиса One-Tme Secret. Их веб-приложение создано для вставки фрагментов текста и генерации одноразовых URI, которые срабатывают только один раз, после чего информация стирается с сервера. Принцип описывается известным выражением «после прочтения уничтожить». Вдобавок, серверы не хранят никакой информации о посетителях сайта и не ведут логов, если верить разработчикам, но они, вроде бы, порядочные ребята.

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

P.S. Ещё один похожий сервис: TMWSD (This Message Will Self-Destruct).
Всего голосов 38: ↑33 и ↓5+28
Комментарии27

Сборочная среда для проекта Midnight Commander

Время на прочтение3 мин
Количество просмотров3.9K
Продолжение

Мало кто из знакомых со словами linux, *bsd не знает о Midnight Commander. Я не слишком ошибусь, если скажу, что все поначалу пользовались им. Отличный инструмент для задач, которые он решает, к тому же доступный на многих платформах. Последнее время проект, ранее развиваемый под крылом gnome.org, получил вторую жизнь. Новый сайт проекта радует темпами развития. Вот только поддержка актуальных версий пакетов в дистрибутивах хромает.

Последнее, что доступно в Debian — 4.7.0.9, и это при том, что совсем недавно вышел 4.7.5.4 в котором есть ряд вкусностей. Проект предоставлял бинарные сборки для RedHat-based систем и не поддерживал таковые для Debian/Ubuntu. Я решил восполнить этот пробел, запустив автоматическую сборочную среду.
Читать дальше →
Всего голосов 45: ↑40 и ↓5+35
Комментарии27

Фикс падения производительности при копировании/закачке файлов в Ubuntu

Время на прочтение4 мин
Количество просмотров20K
Уже не помню, когда начились проблемы с производительностью при копировании файлов, но тогда я этому не придал большого значения так, как копировал файлы редко. Относительно недавно в моем распоряжении появилось высокоскоростное подключение к сети Интернет и теперь я часто копирую/качаю большие файлы и проблема падения производительности для меня стала очень актуальной.

Поверхностный гуглеж не дал результатов и я начал копать глубже, оказалось, что проблемы высокой нагрузки CPU есть у многих убунтоводов, если не у всех, а решение данной проблемы быстрым поиском не находится, поэтому я решил написать небольшой how-to по устранению высокой нагрузки на процессор при копировании файлов.
Читать дальше →
Всего голосов 93: ↑88 и ↓5+83
Комментарии36

Плагины VIM о которых следует знать, часть 1: surround.vim

Время на прочтение3 мин
Количество просмотров16K
Топик — вольный перевод статьи Vim Plugins You Should Know About, Part I: surround.vim Петериса Круминса.

UPD: вторая часть

Что такое плагин surround.vim? Вот что говорит о нем автор, Тим Поп (Tim Pope):

Surround.vim работает со всем, что «окружает»: скобками, кавычками, тегами XML и т.п. Плагин предоставляет сочетания клавиш, которыми можно легко удалять, изменять и добавлять пары таких окружающих элементов.
Читать дальше →
Всего голосов 60: ↑57 и ↓3+54
Комментарии39

Pythonic

Время на прочтение7 мин
Количество просмотров37K
Итак, что же это значит, когда кто-либо говорит, что foo выглядит как pythonic? Что значит, когда кто-либо смотрит в наш код и говорит, что он unpythonic? Давайте попробуем разобраться.

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

Напротив, метка unpythonic означает, что код представляет собой грубую попытку записать код какого-либо другого языка программирования в синтаксисе Python, а не идиоматическую трансформацию.

Понятие Pythonicity плотно связано с минималистической концепцией Python’a и уходом от принципа «существует много способов сделать это». Нечитабельный код, или непонятные идиомы – все это unpythonic.

При переходе от одного языка к другому, некоторые вещи должны быть «разучены». Что мы знаем из других языков программирования, что не будет к месту в Python’e?
Читать дальше →
Всего голосов 106: ↑99 и ↓7+92
Комментарии63

TOP'ай сюда

Время на прочтение5 мин
Количество просмотров177K
Обзор практически всех *top утилит под linux (atop, iotop, htop, foobartop и т.д.).

top

Все мы знаем top — самую простую и самую распространённую утилиту из этого списка. Показывает примерно то же, что утилита vmstat, плюс рейтинг процессов по потреблению памяти или процессора. Совсем ничего не знает про загрузку сети или дисков. Позволяет минимальный набор операций с процессом: renice, kill (в смысле отправки сигнала, убийство — частный случай). По имени top суффикс "-top" получили и все остальные подобные утилиты в этом обзоре.

atop


Atop имеет два режима работы — сбор статистики и наблюдение за системой в реальном времени. В режиме сбора статистики atop запускается как демон и раз в N времени (обычно 10 мин) скидывает состояние в двоичный журнал. Потом по этому журналу atop'ом же (ключ -r и имя лог-файла) можно бегать вперёд-назад кнопками T и t, наблюдая показания atop'а с усреднением за 10 минут в любой интересный момент времени.

В отличие от top отлично знает про существование блочных устройств и сетевых интерфейса, способен показывать их загрузку в процентах (на 10G, правда, процентов не получается, но хотя бы показывается количество мегабит).

Незаменимое средство для поиска источников лагов на сервере, так как сохраняет не только статистику загрузки системы, но и показатели каждого процесса — то есть «долистав» до нужного момента времени можно увидеть, кто этот счастливый момент с LA > 30 создал. И что именно было причиной — IO программ, своп (нехватка памяти), процесор или что-то ещё. Помимо большего количества информации ещё способен двумя цветами подсказывать, какие параметры выходят за разумные пределы.
Читать дальше →
Всего голосов 401: ↑389 и ↓12+377
Комментарии122

Как быстро проверить Linux сервер на предмет взлома

Время на прочтение4 мин
Количество просмотров127K
Примерно два года назад я арендовал у одного немецкого хостера не очень мощный сервер на базе Centos 5.2. На нём живут несколько вебпроектов, приносящих некоторую прибыль, и поэтому, я стараюсь присматривать за ним по мере возможности.
На Centos есть стандартный анализатор логов Logwatch, который запускается ежедневно по крону, анализирует содержимое /var/log, делает сводный отчет и присылает его по электропочте. В один прекрасный день я обнаружил в этом отчете запись:

--------------------- yum Begin ------------------------ 
 
 Packages Installed:
    lzo2 - 2.02-3.el5.rf.i386
    dnstracer - 1.8-1.2.el5.rf.i386
    openvpn - 2.0.9-1.el5.rf.i386

---------------------- yum End -------------------------


В тот момент меня она очень смутила, так как в предыдущий день на сервер я не логинился и тем более ничего не устанавливал. Первое, что пришло в голову — сервер был скомпроментирован. Себя я считал уверенным пользователем Linux, однако я растерялся. Благо в тот момент в icq был мой бывший коллега, лучший системный администратор, которого я знаю, и просто очень хороший человек.
Он помог быстро проверить систему. В результате у меня сформировалось краткое HowTo о том, как быстро проверить свой сервер на предмет взлома. Уверен, что многим Храброчитателям оно будет полезно. Предполагается, что пользователь знаком с консолью Linux/Unix.

Читать дальше →
Всего голосов 212: ↑183 и ↓29+154
Комментарии105

Один компьютер на двоих (и более) или multiseat на базе Ubuntu 10.04 LTS

Время на прочтение22 мин
Количество просмотров47K
В данной статье рассматривается реализация multiseat на базе Ubuntu 10.04 LTS с аппаратным ускорением. Пример, рассмотренный в этой статье, уже введен в эксплуатацию и работает около полугода в обычном Минском офисе. Описываются проблемы реализации и внедрения готовой системы в работу с точки зрения обычного студента-электроприводчика, который подрабатывает на полставки системным администратором.

Вступление



Вот время работы системным администратором в небольшом офисе при обновлении парка компьютеров появилась небольшая проблема. Современные компьютеры дают уровень производительности, много превосходящий необходимый для офисных компьютеров. Причем реалии рынка таковы, что различия в производительности мало сказываются на цене. И вроде бы дешевые компьютеры на базе Atom по ценовому признаку практически не отличаются от более производительных компьютеров на базе обычных процессоров Amd и Intel (материнская плата с процессором Atom стоит около 100-150 у.е. на май 2010 года, Минск, и та же цена на октябрь 2010 в том же Минске).

Та же ситуация и с жесткими дисками: для офисной работы нет необходимости в объеме диска более 40-80 Гб. Но на рынке такие жесткие диски уже практически не представлены. На момент написания статьи в продаже были жесткие диски емкостью 160 Гб (38$), 250 Гб (39$), 320 Гб (40$), 500 Гб (41$), дальше различия по ценам заметны сильнее. Цена за гигабайт жестких дисков малого объема довольно высока. Та же ситуация и со всеми остальными комплектующими.

Возникает закономерный вопрос, как рационально все это использовать? Давайте подойдем логически — чтобы удешевить систему можно либо купить комплектующие похуже (не сильно удешевляет), либо отказаться от некоторых комплектующих. По сути, в рабочем месте обязательными являются устройства ввода (клавиатура, мышь, планшет и т.д.) и устройства отображения информации (монитор, проектор и т.д.). Остальная часть системы пользователей особо не касается, и от нее можно избавляться. Безусловно, от всего избавиться не получится. Давайте заглянем под крышку системного блока. Тут мы обязательно видим материнскую плату, видеокарту (может быть уже на материнской плате), процессор (тоже может быть на материнской плате) и память. А вот остальные комплектующие уже не так важны. Оптический привод мало востребован, и поэтому его, скорее всего, не будет.
С жестким диском тоже интересная ситуация. Его может и не быть, тогда у нас будет так называемая бездисковая станция. Тут вся информация загружается по сети с сервера (реализация PXE+NFS и немного бубна). Но хочется чего-то большего.
Тогда и возникла идея подключить к одному компьютеру две клавиатуры, две мыши и два монитора и заставить их работать независимо. В зарубежных источниках такие системы называются multiseat.
Но можно на этом и не ограничиваться, а делать бездисковую multiseat-станцию. Этот вариант отлично подойдет для пары multiseat-станций с сервером. В данной статье не рассматривается.

Читать дальше →
Всего голосов 153: ↑145 и ↓8+137
Комментарии125

Универсальное решение для печати на сетевые принтеры под Windows 7/Vista/2003/2008

Время на прочтение4 мин
Количество просмотров187K
Очень часто возникают проблемы при сетевой печати на принтеры, подключенные
например, к компьютеру с Windows XP на компьютере с установленной ОС Window 7,ненаVista,2003,2008

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

Вот и у меня сложилась такая ситуация:

Знакомый попросил настроить печать в офисе со свежекупленного ноутбука.

1. Конечно же — ноутбук был с операционной Windows 7
2. Конечно же — Home (см. ниже в чем проблема)
3. Конечно же — она (система) была 64-х разрядной.
4. Конечно же — принтеры в оффисе были не новые: HP1320 и Canon MFxxxx
5. Конечно же — принтеры были подключены и «расшарены» на машинках с WinXP.
6. И никто не будет менять структуру сети ради одного ноутбука
Читать дальше →
Всего голосов 52: ↑46 и ↓6+40
Комментарии30

Цветовая схема Xoria256 для Midnight Commander

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

Спешу поделиться цветовой схемой Xoria256 для Midnight Commander, которую я сделал, взяв за основу одноимённую схему для редактора vim.

Для тех, кто не знает что такое Midnight Commander — это популярный двухпанельный файловый менеджер для UNIX систем (в т.ч. Linux и Mac OS X). Он работает в текстовом режиме, что делает его незаменимым для визуализации файловой системы и операций с файлами на удалённой UNIX-системе не загружая SSH-соединение.

Для использования схемы необходимо следующее:
Читать дальше →
Всего голосов 103: ↑86 и ↓17+69
Комментарии46

Основы Linux от основателя Gentoo. Часть 3 (2/4): Модель прав доступа

Время на прочтение10 мин
Количество просмотров68K
Второй отрывок третьей части серии руководств Linux для новичков. В котором вы сможете узнать, об одном из основных средств обеспечения безопасности в Linux. А именно, правах доступа и модели владения файлами.
Читать дальше →
Всего голосов 98: ↑96 и ↓2+94
Комментарии10

Анонимность, доступная каждому

Время на прочтение7 мин
Количество просмотров61K
imageВсем привет, давайте знакомиться.

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






Да, давайте знакомиться
Всего голосов 137: ↑112 и ↓25+87
Комментарии201
1

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность