Записки программиста, обо всем и ни о чем. Но, наверное, больше профессионального.

2009-08-31

Skype не безопасен

Внезапно выяснилось, что, несмотря на всеобщую уверенность в безопасности скайпа, звонки с легкостью перехватываются.
Так ли это?
Простой ответ - да, так. Сложный ответ - при условии, что платформа, на которой работает скайп, скомпрометирована.
Знающему человеку уже достаточно.

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

Автор трояна пишет:

As announced some weeks ago the Skype trojan sourcecode will be available for download. You find the source packages in the Tools & sources section if you are the impatient type. The code is simple and straightforward. You have know malware development is no rocket science and if you expect big magic you are at the wrong place. The backdoor receives instructions from the dropzone and transferres audio files. The Skype-Tap intercepts the Skype function calls, extracts and dumps audio data to files, converts it to the mp3 format and encrypts it.
...
This trojan horse is a Megapanzer variant in its ealiest days branched in 2006. First Megapanzers purpose was to connect back to its client through all kind of firewalls and proxy servers and offering an attacker a simple command shell. The feature eavesdropping Skype conversations was added a little later and after proving its feasibility it became the new main focus.
It injects function calls into the Skype process to intercept all audio data coming and going to the Skype process. It extracts the PCM audio data, converts it to MP3 and sends it to the attacker after encrypting it.


megapanzer.com/2009/08/25/skype-trojan-sourcecode-available-for-download

Чувак опубликовал исходники трояна, который разрабатывался, вообще то для создания бэкдора, чтобы через фаерволы и прокси получать командную строку на подопытном. А потом этот троян адаптировали под сьем аудиопотоков из программы Skype. Как написано: бэкдор принимает инструкции от атакующего и передает аудио файлы. Скайп-вставка перехватывает вызовы скайповых функций, вынимает и сохраняет аудио данные в файлы, сжимает их в мп3 и шифрует (нахрена?).

В целом, пора делать что-то вроде "ты в ответе за комп, на котором работаешь". А то развелось зомбей и ботнетов. Лазить по тырнету люди хотят, а мыть руки перед едой следить за исправностью компа - нет.

Берегите себя.

Сцылок дня сегодня нет.

2009-08-30

Глазки

Есть такой Жданов В. Г. А был еще Бейтс Уильям Г. Бейтс (William Horatio Bates) лечил всяких очкариков, офтальмологом был. И у него родилась модель функционирования глаза, исходя из которой ношение очков, контактных линз и прочих "костылей" для глаз очень вредно. Видимо, также вредно и делать коррекцию зрения операционным путем, что модно нынче. Вредность заключается в том, что больной орган (глаз) получив костыль, перестает стараться выполнить функцию и болячка прогрессирует (орган деградирует).

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

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

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

Видимо, правду брешут, надо заняться тренировкой глаз. Может действительно 100% зрение верну.

Сцылки дня

2009-08-29

CSS hack and IE8

Столкнулся с неприятной штукой - оформление сайта в IE8 разлезается. Потратил несколько часов на выяснение причин и поиск средства от блох.

Докладываю: причина в том, что мелкомягкие приняли решение не реагировать на фокусы (фильтры) в CSS, которые приводили к тому, что некоторые инструкции воспринимались только IE. 6 и 7 версии реагируют на эти фокусы, на которых и построено большинство хаков. А 8-ка уже не реагирует (в предыдущем посте были сцылки на нужные статьи).
А ведь благодаря этим, наработанным потом и кровью хакам, сайты выглядят одинаково в разных браузерах.

Что делать? Вешаться. Потому как придется кое-что переписать, для корректной раскладки сайта в 8-ке.

Конкретно мне помогло уточнение условия в месте подключения хаков. Ранее там была проверка на "просто IE", а я сделал проверку на IE с версией менее 8.
Типа так:
<!--[if lt IE 8]>
<style type="text/css"
media="all">@import url(ie6.css);</style>
<![endif]-->

Еще можно применить рекомендуемый микрософтом метатег, типа такого:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">

для имитации восьмеркой браузера какбе IE7. Удивительно, но этот тег вставлять надо сразу после тега
<html>
а не после тега
<head>
Но мне этот способ не нравится, это накрайняк.

Ну и до кучи надо бы доктайп определить:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Или другой, какой у вас там подготовлен.

Короче, жизнь веб-верстальщика с выходом ie8 опять усложнилась. Теперь не все "интернетиспортилы" понимают написанные для них хаки.


Сцылки дня:

2009-08-28

Кино с сабами

Есть у нас любители посмотреть кино с сабами (для таких напоминаю, сверху страницы есть окно поиска по сабоскладам (там еще написано Movie subtitles, Google, и есть кнопка Поиск), пользуйтесь. И присылайте сцылки на сайты, которых в поиске еще нет).
Но не все знают, что сабы с русским текстом бывают в разных кодировках. Самые распространенные, это win1251, UTF-8.
Причем utf-8 это наиболее правильная кодировка.
Так вот, если вы скачали саб и в плеере его зацепили и жестоко обломались, увидев кракозябры, не рвите на жопе волосы, не все потеряно.

По просьбам радиослушателей, я расскажу, как сделать русские буковки в сабах в видеоплеере.

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

Будем рассматривать вариант, когда плеер настроен правильно, на кодировку utf-8. А файл у нас в кодировке win1251. Пожалуй, наиболее часто встречаемая ситуевина. В таком случае, задача заключается в том, чтобы конвертнуть файл из вин-кодировки в ютф-кодировку.

В никсах это делается враз, одной командой, типа такой:
iconv -f utf-8 -t cp1251 badfilename.srt > goodfilename.srt

В виндах все несколько сложнее. Вероятно, если поставить Cygwin, то можно (точно не знаю, не проверял) воспользоваться командой iconv.
Допустим, нет. Тогда делайте так: сочетайте полезное с приятным.
Поставьте себе лучший блокнот всех времен и народов SciTE.
Откройте в нем файл сабов. Если буковки русские, отлично. Если нет, попробуйте в меню
File -> Encoding
пощелкать разные кодировки.



Если подходящей не нашлось, все плохо. Если нашлось, пришло время скопировать весь текст в буфер обмена.
CTRL-A, CTRL-C

Теперь надо удалить весь текст: delete (кнопа на клаве такая).
А теперь финал: в меню
File->Encoding
Выбираете
UTF-8 Cookie
после чего из буфера обмена возвращаете текст
CTRL-V
Сохраняете файл и смотрите кино.

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

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

Сцылки дня

2009-08-27

SSI безусловно крут

Но зачем так-то изгаляцца? Хотя автор данного непотребства говорит, что "просто попробовал",
на прочность, видимо. Жесть, как она есть. Не делайте так дома, кто-то может пострадать:

<!--
Теперь проверяем, не заполнен ли уже список и не надо ли
последовательность
устанавливать сначала
-->

<!--#if expr="$RND_LIST_INDEX_TMP
= $RND_LIST_INDEX" -->
<!--#set var="RND_LIST_INDEX_TMP" value="x" -->
<!--#endif -->
<!--

Дальше точно такие же блоки для каждой их переменных по порядку для
всего
диапазона от 0 до 9. Не забываем после каждого блока проверять
заполненность
последовательности.
-->

<!--#if expr="$RND_1_EX = 0
&& $RND_0_EX = 1 && $RND_LIST_INDEX_TMP
!= /0/" -->
<!--#set var="RND_1" value="$RND_0" -->
<!--#set var="RND_LIST_INDEX_TMP" value="${RND_LIST_INDEX_TMP}0"
-->
<!--#elif expr="$RND_1_EX = 0
&& $RND_1_EX = 1 && $RND_LIST_INDEX_TMP
!= /1/" -->
<!--#set var="RND_1" value="$RND_1" -->
<!--#set var="RND_LIST_INDEX_TMP" value="${RND_LIST_INDEX_TMP}1"
-->
<!--#elif expr="$RND_1_EX = 0
&& $RND_2_EX = 1 && $RND_LIST_INDEX_TMP
!= /2/" -->
...




habrahabr.ru/blogs/webdev/67818

2009-08-26

*nix project

Хороший сайт, полезный. Для юниксоидов. Кстати, если раньше юниксоида можно было опознать по повышенной бородатости (и лохматости), то теперь средний юниксоид сильно помолодел. Вплоть до незнакомства с бритвой.

День рождения *nix project — 25 августа 2001 года.
Идея и создание проекта — Дмитрий Шурупов.

Цель проекта: помогать начинающим в UNIX-основанных операционных системах, быть источником интересной и нужной информации пользователям *nix, самосовершенствоваться в этой сфере…


nixp.ru

На сайте полно полезного, пойду читать все подряд.

2009-08-25

255 или 256?

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

Официально, возможно, уже в нынешнем году, 13-е сентября станет Днем программиста (проект указа передан в правительство).

Патамушта это 256-й день года, пояснила пресс-служба Минкомсвязи.

Однако правильный программист должен отмечать этот день как 255-й, ибо программистский отсчет, конечно же, начинается с нуля.

В этот же день у Челябинска день рождения.

Челябинские программисты настолько суровы, что под каждую задачу пишут новую операционную систему с нуля.
Челябинские программисты настолько суровы, что отрубают себе мизинцы, чтобы на руках было 8 пальцев.
Челябинские программисты настолько суровы, что празднуют день программиста на 512-й 511-й день года.


sbobrovsky.livejournal.com/15994

2009-08-24

Unix shell

Шелл могуч. Так могуч, что я всерьез подумываю, не забыть ли мне про командные файлы (и оболочку CMD.EXE) винды, используя вместо них юниксовый шелл из Cygwin?

Фигурные скобки {по-английски - brace} это один из условных знаков, помогающих сократить количество писанины в командной строке.

Формально они входят в число семи expansions (расширение, раскрытие), применяемых в командной строке шелла bash.
...
Допустим, что нам нужно создать для фотоальбома двенадцать каталогов (по числу месяцев) 2009 года. Мы можем поступить так:

$ mkdir фото_01_2009 фото_02_2009 ... фото_12_2009

(вместо троеточия впишем имена всех промежуточных каталогов).
А можем привлечь на помощь сокращение - фигурные скобки:

$ mkdir фото_{01,02,03,04,05,06,07,08,09,10,11,12}_2009


rus-linux.net/.../consol/brace

2009-08-23

Мордокнига

Родственники затащили меня в Facebook. Довольно занятная штука, местами глючная, местами просто тупая, особенно глядя на локализованный интерфейс "... теперь женат на пользователе ... ".
Постоянно интересуется у меня, о чем я думаю.

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

Забавно.

2009-08-22

Хотели как лучше?

Размышления вслух, о том, как хорошие (вроде бы) задумки превращаются в фарс.

Что такое ТЗ (техническое задание)? Для заказчика это способ обьяснить разработчику, что от него ждут. Какой должна быть система разрабатываемая. А для разработчика это способ отчитаться перед заказчиком. Через ТЗ они находят общий язык. Разработчик смотрит в ТЗ и видит, что, допустим, программа должна выдавать документы на печать в таком-то формате. Значит, надо делать модуль печати, форматировать документ для выдачи и прочее. При сдаче заказчику будет демонстрировать - вот, смотрите, в ТЗ написано - выводить на печать, выводит? Да. ОК.
Заказчику нужно печатать бумажки для отчетности? Он пишет в ТЗ - бла, бла, печатать.
Все довольны. Все хорошо. Казалось бы.

А вот нынче я пишу (не в первый раз) ТЗ, даже не само ТЗ а блоки "требований" к системе. Я - разработчик, я пишу требования к системе, прототип которой у меня уже крутится в виртмашине. Я сижу и описываю в форме ТЗ то, что система уже делает. Чтобы потом по этому ТЗ сдать эту систему заказчику. Смотрите, мол, видите, в ТЗ написано - печать. Печатает? Да. ОК.

Почему так? А х.з. Заказчику система нужна. Он ее хочет. Но ТЗ он писать не хочет. Он на пальцах обьяснил, чего ему надо, получилось примерно пять фраз на бумаге, типа - "Нам нужен сайт, на него будут ходить кто попало и еще наши партнеры. Материалы будут на сайте как для всех, так и для партнеров. Посетителей будет не более 200. Материалы на сайте будут публиковать наши сотрудники. Нужно разграничение доступа и обеспечение безопасности". Как-то так.
Ну и нормально, казалось бы. Сделали прототип, описали архитектуру, обосновали выбор решений. Одобрено. И ему, заказчику, этого достаточно. Да и нам неплохо. Вроде можно приступать к изготовлению сайта. Ан хрен.

По правилам, устанавливаемым ебучим регулятором - догадайтесь каким, надо написать тонну бумаг и ТЗ в том числе. Что любопытно, до оплаты. Мы пишем эти бумаги безвозмездно, то есть даром. Причем, упаси Боже, бумаги проверят! Бумаги надо делать нормально, т.е. тщательно. В итоге, пара месяцев уходит на бумажную работу и на построение сайта остается пара недель. И крутитесь как хотите.

Вот, сижу, пишу сам себе ТЗ на систему, которая уже есть. Маразм.
А какая хорошая была идея? Да? ТЗ, проект, общий язык заказчика и разработчика?

Вот какого, (вырезано цензурой) всякие регуляторы лезут не в свое дело? Надо проверять? Проверяйте, вот договор, вот сумма, вот сайт. Что, недостаточно разве? Туалетной бумаги не хватает? Паразиты.

2009-08-21

RDP vs VNC

Довольно забавная статья в двух частях. Про настройку доступа к удаленному рабочему столу в смешанной среде (винда-линукс). Забавна тем, что по стилю изложения вроде как для нубов. А по полноте и подробности - явно для уже просекших фишку самостоятельной работы. Дуализм, ёлы.
Но статья полезная, хотя бы тем, что освещает не самые очевидные детали темы "удаленных столов". Вот, к примеру, я не знал, что есть сервер XRDP дающий RDP под линуксом.

... как вы понимаете, VNC соединения по умолчанию используют другой Х дисплей, не используя при этом "родной" дисплей удаленного компьютера (тот дисплей, который физически подключен к удаленному компьютеру). Это может быть достаточно неприятно, если вы работали за компьютером перед тем, как к нему произвели удаленное подключение, и вы хотели бы продолжить работу с теми приложениями, которые запустили на самОм удаленном компьютере. В данном случае, Один из легчайших способов осуществить это - использовать x0vncserver взамен vncserver. Этот вопрос мы обсудим чуть ниже. Другая опция, более объемная, но обеспечивающая лучшую производительность - это использование vnc.so модуля.

Как было отмечено выше, один из простейших путей удаленного подключения к "родному" дисплею - это использование x0vncserver взамен vncserver. В терминале вы можете ввести x0vncserver password = ВАШПАРОЛЬ SecurityType=none. При этом будет запущен прием удаленных соединений на дисплей 0, защищенных паролем, который вы выбрали. Для установки соединения используйте VNC вьюер таким же образом, как обсуждалось в предыдущей части, но здесь есть одно отличие - не нужно вводить номер дисплея после ввода IP адреса
...
В первой части этого пособия мы рассмотрели опции для организации удаленного подключения между компьютерами Linux и Windows. Дополнительно мы установили VNC решение на каждую из платформ. ...
Мы обсудили как использовать удаленное управление между компьютерами с ОС Linux и Windows. Мы так же настроили наши межсетевые экраны (брандмауэры), чтобы разрешить прохождение трафика удаленных подключений, и маршрутизатор, для перенаправления трафика на "ведомый" компьютер. Дополнительно мы поняли, как обезопасить VNC соединения, которые устанавливаются через Интернет. И наконец, определили, каким образом можно подключиться к "родному" дисплею удаленной машины для того, чтобы видеть именно экран этой машины, а не виртуальный дисплей.


2009-08-20

Банк? Интернет?

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

Как вы думаете, сколько нынче времени надо российскому банку, чтобы перевести деньги? Причем платежное поручение выдано через интернет-банк. Час? Нет. День? Опять мимо. Уже сутки прошли, как я выдал платежное поручение, а оно все "у операциониста".
Завтра, видимо, уйдут. А послезавтра, видимо, придут.
Похоже, руками они электроны двигают.

И вот как можно дела делать с такой инфраструктурой? Это риторический вопрос, отвечать не надо.

Я вот догадался, может дело в сумме? Типа, сто лярдов двигаются за минуту, а сто рублей за сутки? А и правда, чего из-за ста рублей напрягаться, если руками то? Правда, непонятно тогда, зачем это называть "интернет банк" и "электронные платежи"?

2009-08-19

OPSEC vs ID-Ten-T, OSI layer 8

Вот что мне нравится в буржуях, так это установка на результат. Казалось бы, такая сложная тема - безопасность. А вот и нет, выполняете инструкцию из 6 пунктов в рамках ОпСек, и все в шоколаде.

Безопасность операций (Operations security, OPSEC) - это процесс, который помогает выявлять критически важную информацию, чтобы определить, могут ли наши действия быть обнаружены разведкой противника; делать выводы о том, может ли информация, полученная противником, рассматриваться как полезная для него; и затем принимать соответствующие меры по устранению или ослаблению последствий использования противником этой критической информации.
...
Безопасность операций (Operations security, OPSEC) - это процесс, который помогает выявлять критически важную информацию, чтобы определить, могут ли наши действия быть обнаружены разведкой противника; делать выводы о том, может ли информация, полученная противником, рассматриваться как полезная для него; и затем принимать соответствующие меры по устранению или ослаблению последствий использования противником этой критической информации.
...
1. Определение критической информации
2. Выявление потенциальных противников
3. Выявление потенциальных уязвимостей
4. Оценка риска
5. Определение мер противодействия
6. Оценка эффективности
...
Самой опасной политикой уровня 8/9 является "отгораживание" от проблем безопасности. Несколько ярких примеров такого "страусиного" поведения:

* Ubuntu является безопасным дистрибутивом прямо "из коробки";
* Linux более безопасен, чем Windows, так что нет смысла беспокоиться;
* У нас за безопасность отвечает Вася - это не моя работа;
* Наш отдел сетевой безопасности отслеживает все проблемы, это не функция веб-мастера.


rus-linux.net/lib.php?name=/MyLDP/sec/layer8

Layer 8 Linux Security: OPSEC for Linux Common Users, Developers and Systems Administrators By Lisa Kachold

2009-08-18

libata, результат

Сделал точно по инструкции и все срослось, как и предполагал. Заменил буквенные обозначения дисков на лейблы и дебианчик грузится без проблем. Теперь я под ядром 2.6.30.4

Что сделал:
в файле
/etc/fstab
заменил буквы на лейблы, стало типа так:
#/dev/sda1 / ext3 defaults,errors=remount-ro 0 1
/dev/disk/by-label/rootpart / ext3 defaults,errors=remount-ro 0 1

и в файле
/boot/grub/menu.lst
заменил
# kopt=root=/dev/sda1 ro
на
# kopt=root=LABEL=rootpart ro
после чего запустил
update-grub

И всё. Изи.

Теперь расклад по буквам такой:

# ls -lF /dev/disk/by-label
total 0
lrwxrwxrwx 1 root root 10 2009-08-18 05:27 sys -> ../../sda1
lrwxrwxrwx 1 root root 10 2009-08-18 05:27 app -> ../../sda2
lrwxrwxrwx 1 root root 10 2009-08-18 05:27 nata -> ../../sda3
lrwxrwxrwx 1 root root 10 2009-08-18 05:27 game -> ../../sda4

lrwxrwxrwx 1 root root 10 2009-08-18 05:27 rootpart -> ../../sdb1
lrwxrwxrwx 1 root root 10 2009-08-18 05:27 linswap -> ../../sdb2
lrwxrwxrwx 1 root root 10 2009-08-18 05:27 homepart -> ../../sdb3
lrwxrwxrwx 1 root root 10 2009-08-18 05:27 varpart -> ../../sdb4

Сравните с тем, что было (раньше почему то линсвап раздел не выводился, теперь выводится):

# ls -lF /dev/disk/by-label
total 0
lrwxrwxrwx 1 root root 10 2009-08-17 03:04 sys -> ../../hda1
lrwxrwxrwx 1 root root 10 2009-08-17 03:04 app -> ../../hda2
lrwxrwxrwx 1 root root 10 2009-08-17 03:04 nata -> ../../hda3
lrwxrwxrwx 1 root root 10 2009-08-17 03:04 game -> ../../hda4

lrwxrwxrwx 1 root root 10 2009-08-17 03:04 rootpart -> ../../sda1
lrwxrwxrwx 1 root root 10 2009-08-17 03:04 homepart -> ../../sda3
lrwxrwxrwx 1 root root 10 2009-08-17 03:04 varpart -> ../../sda4

Дорога к EXT4 открыта, ура, товарищи.

Прекрасное правило

Ух, как мне понравилась эта норма - "автосертификация". Как удобно и свободно, видать, ощущают себя люди. Опять же, поощрение честности и наказание врак. Нам бы так.

Дело просиходит в Италии, вчера по радио слышал.
Преамбула: В итальянском праве есть такое понятие как
"автосертификация", то есть ты заявляешь что, к примеру, ты живешь по
такому-то адресу и состав твоей семьи такой-то. И все - никаких других
документов никто н требует, достаточно твоего заявления. Правда за
лжесвидетельствование и наказание суровое. Так вот история: Один молодой
фермер, парень 22 лет, сроду не имевший прав на управление автомобилем и
занимаюшийся разведением свиней, без спроса взял у отца машину и куда-то
там поехал. Ну и как положено попадает под стандартную проверку
документов со стороны карабинеров. На машну все есть, а прав на
управление нет. На голубом глазу делает заявление, что забыл права дома,
а машину ему дал отец. Ну дома так дома, для этого у карабинеров есть
компьютер и связь с базой данных. Забирает служивый его документы
имеющиеся в наличии и идет к себе в машины проверять. В этот момент
парню повезло - связь с базой упала и через некоторое время ему
возвращают документы, говоря что он может продолжить движение. Они же не
могут доказать, что у него прав нет. Парень спокойно берет документы и
уезжает. Наши люди тихо бы радовались и спокойно пропили сэкономленные
на штрафе деньги в тесной компании друзей.
Но не итальянец!!! Резонно полагая, что карабинеры все проверили и как
вдруг оказалось по их базе, у него есть права, на следующий день этот
мудак идет в управление тех же самых карабинеров и делает заявление о
потере прав и просит выдать копию... Естественно, что там компьютер
работает и связь с базой данных есть, а там таких даннных нет.
Результат: за заведомо ложное заявлние об утере документов штраф 12500
евро, за заведомо ложную автосертификацию о наличии прав штраф 50 000,
управление автомобилем без прав на то - 5400 евро. За передачу в
управление транспортного средства лицу, на это прав не имеющего - штраф
12500 на отца и арест этого самого транспортного средства на срок 6
месяцев.


anekdot.ru/id/380553

2009-08-17

libata

Решил я переползти дома на новое ядро, 2.6.30.
Заодно оптимизировать дисковый ввод/вывод. А то старый винт у меня работал под generic-драйвером IDE. Нехорошо-с.

Как положено, скачал, отконфигурировал, скомпилировал, установил.
Не грузится система.
Или грузится, но IDE-вого диска не цепляет.

Короче, почитав инфу по конфигурированию дисковых драйверов я уяснил себе пару моментов:
1. нынче IDE не в моде;
2. нынче в моде libata, которая сделана была под SATA а до кучи вобрала в себя и PATA;
3. мой контроллер лучше работает под libata;
4. если использовать libata, все диски будут именоваться по типу sdx.

Вот четвертый пункт и вызывает у меня проблемы, поскольку текущий конфиг использует имена для дисковых устройств такие: hda - старая диска, hdb - сидирома на том же IDE шлейфе, sda - новая диска, на SATA контроллере.
А при использовании libata диски уже такие: sda - старая диска, sr0 - сидиромина, sdb - новая диска.

Понятное дело, грузится не хочет. И лоадер и автомонтировщик (fstab) - все у себя записали старые имена.

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

# ls -lF /dev/disk/by-label
total 0
lrwxrwxrwx 1 root root 10 2009-08-17 03:04 app -> ../../hda2
...
lrwxrwxrwx 1 root root 10 2009-08-17 03:04 homepart -> ../../sda3
...

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

Картинка конфигурирования ядра:

На картинке видно, где надо вырубить поддержку старых IDE драйверов (ATA/ATAPI/MFM/RLL support) и где включить поддержку устройств в libata (Serial ATA (prod) and Parallel ATA (experimental) drivers).

2009-08-16

Мультег

Посмотрел Ice Age: Dawn of the Dinosaurs.

Отличный смешной мультик. Местами штампы, но гэги и персонажи жгут. Посмотрел с удовольствием. И еще, видимо, посмотрю.
Было много белки, но уже не так смешно. Зато появился Бак(минстер), британская военная ласка(weasel)-колонист и тарзан в одном лице. Прекрасный персонаж, особенно его жаргон и британский акцент. И вы посмотрите, какие значения у слова - его имени "Buck"!

youtube.com

2009-08-15

Автомат по установке дебианчика

Свежачок, сервер Viper, опирающийся на LDAP+DHCP, дает возможность автоматизировать установку оп.системы - дебиан. В статье, к сожалению, нет описания того, как создать конфигурацию, в которую обувается клиент. Рассмотрен только процесс установки сервера вайпер.
Админам, регулярно и помногу устанавливающим системы на деб.пакетах - читать обязательно.

Viper is a system for completely automated installation and configuration of Debian GNU based systems.

It is a newly developed system that had the first public release in August 2009. This article should serve as an early introduction, focusing on the results. For more on the underlying logic and in-depth treatment of various topics, refer to official Viper documentation.

Viper uses a modern approach (debian-installer, Puppet etc.), works with existing Debian packages, and does not require any custom patching of either install media, client or server.

The basis of the whole system is a LDAP server, containing all configuration data.
If you are not familiar with LDAP and related terminology, glance over my other article, OpenLDAP installation on Debian, found here or here.

LDAP has the potential to be enormously successful in configuration management, but its flat data structure, absence of any kind of dynamic behavior, and heaps of duplicated data make it a mediocre tool.
To build on LDAP's great strengths while solving its deficiencies, a custom OpenLDAP backend has been implemented.

The setup explained here will get you to a point that you can perform an automatic installation of a Debian host. The configuration part is done using Puppet, but is not covered here; expect it soon as another article on debian-administration.org and the official website.


debian-administration.org/article/Automatic_host_installation_using_Viper

2009-08-14

Наши проблемы

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

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

При этом дети вчерашних мигрантов мусор возить уже не хотят, и, выходит, Первому миру нужно завозить очередное поколение мусорщиков из Третьего мира. А многочисленные дети первого поколения мусорщиков пополняют когорту люмпенов. Получается воспроизводство не просто низкокачественного, но и вредного населения. Вредного не только потому, что оно ложится бременем на бюджет, требуя пособий по безработице и прочих подачек, но и потому, что его представители рекрутируются в преступность. Кто совершает львиную долю преступлений в какой-нибудь Норвегии? Уж конечно, не тихие норвежцы и не первое поколение гастарбайтеров, которое покорно подгребает мусор цивилизации. Дети этих гастарбайтеров! Их потребности велики, поскольку сформированы Западом, а возможности – прямо пропорциональны зарплатам их отцов и обратно пропорциональны количеству сестер и братьев.
...
Насколько строга эмиграционная политика Великобритании, а они все равно умудряются проникать, диффундировать, продавливаться через границы, оседать… При этом давление со стороны Третьего мира все растет и растет, и когда-нибудь даже самая развитая экономика его не выдержит.

Чем больше неграмотных, неквалифицированных пришлых, тем они беднее и преступнее. Они заливают пространство криминалом, превращая тихую, культурную страну в некое подобие средневековой Европы – коренное и приличное население ютится в «замках» охраняемых коттеджных поселков и дорогих районов, а вокруг этих островков уже вовсю гуляют варвары, изрисовывая стены и поезда, насилуя, грабя и убивая. Цивилизованный мир постепенно затапливается морем дикости. Глядишь, через полвека вокруг элитных коттеджных поселков вырастут пулеметные вышки. Точно так же – постепенно и незаметно – античность Древнего Рима превращалась в Средневековье. Появились стены вокруг римских городов и вокруг вилл аристократов, а сами виллы стали напоминать замки; ездить по дорогам становилось все опаснее и опаснее, упал общий уровень образования и умений…
...
Давайте посмотрим на нашу планету сверху. Мы увидим три мира – Первый, Второй и Третий. Страны Первого мира богаты, мизерная доля населения там работает в сельском хозяйстве, однако они умудряются не только обеспечивать себя продовольствием, но и экспортировать еду. А вот в странах Третьего мира большинство населения занимается сельским хозяйством и при этом голодает. Почему бы тогда Первому миру, раз у него так хорошо получается делать еду, не обеспечить продовольствием Третий мир? Да потому, что Третьему миру нечем платить за импорт еды! Это и понятно: откуда деньги у крестьян?..

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

Болезнь планеты – именно Третий мир, который находится в глубокой заднице. И она все углубляется и углубляется из-за усиленного размножения самобытных представителей этого мира… Две трети планеты живет в Третьем мире, а будет жить еще больше – к 2025 году население земного шара вырастет до 8 миллиардов человек именно за счет Третьего мира. Для того чтобы в 2025 году люди там хотя бы элементарно не дохли с голоду, объем производимой на планете еды придется увеличить примерно вдвое. Реально ли это?..
...
Пресная вода – ресурс, конечно, возобновляемый, поскольку она ежедневно испаряется из океанов и выпадает дождями на континентах, но конечный: годовой объем пресной воды – неизменная величина. Сегодня 6-миллиардное человечество тратит больше половины всех наличных годовых ресурсов пресной воды. Всего планетарного запаса пресной воды хватит максимум на 11–12 миллиардов человек. Но это теоретически. Потому что на практике вода распределена на планете очень неравномерно, как и нефть – где-то густо, а где-то пусто. И уже сейчас случаются трения и «полувоенные» конфликты между странами в борьбе за воду. Уже сейчас около трех миллионов людей в Третьем мире умирают оттого, что пьют некачественную воду.

Как, кстати, человечество тратит воду? 70 % расходует сельское хозяйство, 20 % – промышленность, а оставшиеся 10 % воды мы выпиваем, варим из нее суп, моемся ею сами и моем наши автомобили, используем для стиральных машин, аквариумов, поливки цветов и пр. Так вот, эти самые 70 % воды, приходящиеся на сельское хозяйство – самые экономически неэффективные траты. Судите сами.

Мы помним, что на 1 тонну зерна уходит 1000 тонн воды. Эта самая тонна зерна стоит (данные 2006 года) 210 долларов. Но если такое же количество воды купит и потратит промышленность, то произведет продукции не на жалких 210 долларов, а на 14 000 долларов! Промышленность, как видим, расходует воду в 70 раз эффективнее. Но это так, к слову…
Что касается малолюдной и обширной России, водный дефицит ей в обозримом будущем совершенно не грозит. Наши северные и северо-восточные реки бездарно сливают дефицитный ресурс в Северный Ледовитый океан, где вода бесполезно засаливается. А уж если вспомнить про Байкал, откуда воду можно сразу в бутылки лить да продавать без всякой очистки, на душе становится совсем лениво. Хотя и слегка тревожно. Потому что, имея большие ресурсы и маленькое население, нужно сильно постараться, чтобы эти ресурсы не потерять. Потому что есть страны, где вода уже стоит дороже бензина.
...
Кому в этом мире острее всего нужна вода? Известно, кому… По данным на конец прошлого века, 34 аграрных страны, находящиеся на Ближнем Востоке и в Африке, импортировали зерно. По сути, они импортируют «засушенную воду» из расчета 1 тонна зерна равна 1000 тонн воды. Эти нищие страны на последние деньги покупают и ввозят четверть всего мирового рынка зерна. Аридная зона.

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

Помните, я начал книгу с рассуждений своего коллеги о том, что прогресс на планете как бы закончился? Человечество резко свернуло темпы освоения космоса, отказалось от сверхзвуковой пассажирской авиации и трансконтинентальных сверхскоростных линий с поездами на магнитной подушке…

А какие были проекты еще полвека назад!

…Пробурить Землю по хорде от Москвы до Ленинграда, сделать вакуумный туннель, в котором составы будут «ездить на халяву» – разгоняясь и тормозясь земным притяжением!

…Сделать искусственное теплое течение в Беринговом проливе!

…«И на Марсе будут яблони цвести!»
...
И все это не было фантастикой. Это были прикидочные проекты. Для космической станции была даже просчитана примерная стоимость электроэнергии: 8–10 центов за киловатт-час. Создавались ядерные двигатели для ракет [8] .

И где?.. Все спустилось на каких-то тормозах.

Возможно, одно из объяснений причин этого торможения – пара лишних континентов, не успевших «догнаться» в своем развитии и висящих тяжким грузом на ногах западной цивилизации. Тормозящих ее.

Ведь если посмотреть на те самые пять последних десятилетий прошлого века, которые так огорчили моего приятеля, картина по земному шару будет действительно не слишком радостная. Да, мировой валовой продукт за это время вырос в 6 раз. Чуть ли не в 5 раз выросло потребление ископаемой энергии. В 5 раз – производство мяса и рыбы. Производство зерна выросло втрое. И почти все это за счет Первого мира и его новых технологий. Но!..

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

Какое-то буксование на месте получается. Застой?

Нет, не застой. Перекос! Потому что рост продукции обеспечивал, в основном, Первый мир и его технологии, а вот рост людского поголовья – Третий мир. И если разделить произведенные землянами блага по справедливости, то есть богатства Первого мира – на число людей в Первом мире, а богатства Третьего мира – на количество тамошних оборванцев, получится разительная полярная картина. Вот вам элементарнейший пример. В среднем один африканский крестьянин выращивает в год 600 килограммов зерновых. А один американский фермер – 80 тонн. Почувствуйте разницу…

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

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


Александр Никонов: Свобода от равенства и братства. Моральный кодекс строителя капитализма

Вы все еще думаете, что наши проблемы - это жадные бывшие "братские" республики? Или тупые америкосы, несущие "демократию"?
Вы ошибаетесь, наша проблема - нищий, голодный и воинственный "третий мир". Похоже на то. Так Петрович рисует, и это похоже на правду.
А еще наша проблема - слабые силы (которые вооруженные). Как страну с водой и нефтью защищать будем?

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

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

2009-08-13

Мощь поисковой строки

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



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

2009-08-12

Что делают США в рамках планеты?

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

В сентябре 2006 года папа римский Бенедикт XVI приехал в немецкий город Регенсбург, где выступил в университете перед студентами и преподавателями с богословской лекцией. И надо ж такому случиться, в своем выступлении несчастный старик додумался процитировать византийского правителя Мануила II Палеолога, который в далеком XIV веке сказал, что требование пророка Мухаммеда мечом нести ислам есть неприкрытое зло и бесчеловечность. Даже не сказал, строго говоря, а спросил в теологическом диспуте с мусульманским религиозным теоретиком.

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

...

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

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

Сомалийский Шейх Абубукар Хассан Малин призвал мусульман всего мира «выследить и убить» папу Бенедикта XVI:

– Кто бы ни оскорблял нашего пророка Мухаммеда, он должен быть убит на месте ближайшим мусульманином! Мы обращаемся ко всем исламским общинам мира с просьбой отомстить пустому критикану, называющему себя папой римским!

В Ираке группа исламских боевиков «Армия моджахедов» разместила в интернете заявление, в котором эти воины Аллаха поклялись разрушить Рим и Ватикан! Вот скажите мне, как по-вашему, они и вправду не понимают невыполнимости своих детских угроз? Они не понимают, что невыполненная угроза – удар по их имиджу? Может, и понимают, но поделать ничего с собой не могут, как не может справиться с собой орущий и капризничающий ребенок, который вопит маме, посмевшей не дать ему конфетку: «Я тебя убью! Я от тебя уйду!»

Конечно, не убьет. И не уйдет. И не разрушит Рим. И знает это. Но вопит – рожа красная, вот-вот лопнет. Неконтролируемая реакция…

...

Теперь отойдем во времени на шаг назад от папского скандала. Годом ранее французские мусульмане пожелали запретить Вольтера. Им очень не понравилось произведение под названием «Магомет», которое гениальный мыслитель написал в 1741 году. Конечно, 99,9 % французских мусульман вольтеровского «Магомета» не читало, но какой-то шибко умный мулла, наверное, прочел и им сказал. А поскольку своей головы у верующих нет, они легко «повелись» за вождем.

В «Магомете», как известно, Вольтер высмеивает религиозную нетерпимость. И дабы доказать, что философ неправ и на самом деле мусульмане страшно терпимы, они потребовали запретить произведение. Не только себе, заметьте, но и христианам, атеистам и прочим буддистам, которые ничего против Вольтера не имеют.

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

...

Таким способом не живущие в Дании мусульмане решили поучить датчан, что тем можно рисовать в своих газетах, а что мусульмане им рисовать не разрешают. Бред какой-то…

Цивилизованный мир с тревогой и любопытством ждал, как отреагирует на карикатурный скандал новое палестинское руководство. Дело в том, что незадолго до этого в Палестине на выборах победил печально известный «Хамас». Который, разумеется, оправдал самые худшие опасения цивилизованных стран: во время очередной пятничной молитвы проповедник главной мечети Газы потребовал, чтобы «авторам карикатур были отсечены головы». После чего десятки тысяч манифестантов под зелеными знаменами собрались у здания палестинского парламента. Они скандировали: «Смерть этим собакам и смерть Бушу! Мы не примем ни от кого никаких извинений! Оскорбление, нанесенное исламу, будет смыто кровью, и пощады не будет, потому что мы – самые сильные!»

…Эти «самые сильные», кстати, уже которое десятилетие живут на финансовую помощь Запада, проклинают Запад и, нагло горланя, требуют от него все новых и новых денежных и продуктовых подачек, демонстрируя в качестве аргумента свои язвы и рубища. А рядом, буквально в ста метрах, в точно таких же природных условиях существует процветающее и вполне цивилизованное, по-западному устроенное государство Израиль.

...

Такая страна чудесная… Однажды там проходил конкурс красоты «Мисс мира». Освещая в своем репортаже этот конкурс, местная журналистка Исиома Даниэл написала, что участницы предстоящего конкурса красоты «столь великолепны, что пророк Мухаммед, если бы смог присутствовать на празднике, обязательно женился бы на Мисс Мира».

И все! Больше ничего такого не писала несчастная женщина. Тем не менее даже этой невинной фразы оказалось достаточно. Журналистке пришлось бежать из Нигерии в США, поскольку в штате Замфар, где большинство населения исповедует ислам, была принята фетва – религиозное решение, согласно которому Исиома должна быть умерщвлена. Вице-губернатор штата заявил, что «любой мусульманин, где бы он ни находился, должен рассматривать убийство этой журналистки как свой религиозный долг».

Но это еще не все! Через несколько часов после выхода газеты толпа мусульманских фанатиков разгромила и сожгла здание редакции. Далее по старой доброй традиции последовала серия кровавых погромов. В результате столкновений погибли больше 250 человек, а без крова из-за поджогов осталось свыше 30 000 человек!

Складывается ощущение, что стоит только в мире кому-то громко щелкнуть пальцами и крикнуть «Мухаммед!», как лавина мусульманского негодования срывается и погребает под собой весь окрестный пейзаж…

Как вы думаете, кого обвинил в погромах и убийствах президент замечательной страны Нигерия? Правильно, президент замечательной страны Нигерия Олусегун Обасанджо обвинил во всем… «безответственную журналистку». Это она бегала по городу с красными глазами и пеной на бороде, это она убила 250 человек и сожгла полгорода. Понимаете, в чем цимес президентского послания? Я объясню… Мусульмане – они такие нежные, такие нежные, что в их присутствии нужно ходить на цыпочках, пальцами не щелкать и вольных улыбок себе не позволять. А лучше всего надеть паранджу, чтобы не выдать себя глазами. Иначе мусульмане могут невольно сорваться и перерезать вам горло… И будут правы, ибо были жутко оскорблены.

...

И после всего этого в цивилизованном мире еще находятся люди, которые не понимают озабоченности США и мирового сообщества возможностью создания ядерного оружия в Иране!.. Хотя чего тут понимать-то: «Спички – детям не игрушка!»

Находятся люди, которые вполне серьезно говорят и пишут, что США сунулись в талибский Афганистан и, в особенности, в хусейновский Ирак ради своих корыстных интересов. Подзаработать, типа, решили. Не долго думая, мне одна шибко умная девушка так и написала в интернете: мол, США, пользуясь правом сильного, «грабят Ирак».

Грабят? Неужели нефть тайком вывозят в солдатских фляжках?

Господа, верующие в то, что США полезли в Ирак из соображений выгоды, представьте себе такую картину: стоит большой дом. И вы в нем живете. Причем вы и ваш сосед-интеллигент в очочках – единственные нормальные люди. Остальные – либо алкоголики, либо подростки в период гиперсексуальности. Они блюют в подъезде, рисуют на стенах, бросают шприцы, ломают почтовые ящики, балуются с огнем… И в какой-то момент вы вдруг понимаете, что, кроме вас, порядок в вашем доме навести-то и некому. Вы там единственный взрослый! Ну, плюс еще этот хлюпик в очках.

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

– Ты, ва-а-ще, кто такой? Самый умный, что ли? Ты, козел, пользуешься своей силой… Больше всех надо, что ли?! Ну, ничего, мы тебе дверь подпалим. Мы тебе окна выбьем… Чего ты хочешь, признайся, гнида! Самым главным тут быть? Мы твою дочь…

Соединенные Штаты в какой-то момент вдруг поняли, что нет в мире никого другого, кто мог бы навести здесь порядок. Просто потому, что нет никого старше, сильнее, взрослее… И с этого момента пути назад у них не было. Они взяли на себя ответственность за всю планету. А кто еще? Не этот же рефлексирующий европейский очкарик…

Такое уже бывало в мире. Я писал об этом в «Судьбе цивилизатора». Республиканский Рим после пунических войн вдруг осознал, что он в этой песочнице самый сильный. И что кроме него навести порядок и разнять дерущихся здесь больше некому. Это и положило начало Pax Romania . Причем какое-то время Рим выступал в роли мирового жандарма за свой счет – так же, как США в послевоенной Японии и нынешнем Ираке. И что янки получили вместо благодарности?

Американские солдаты уйдут, нефть иракская, как была в Ираке, так и останется. А на долю США достались только проблемы. Дверь им подожгли, окна во Всемирном торговом центре побили… И социально близкий европейский интеллигент в очочках тоже не особенно рвется помогать грязную работу делать…



Александр Никонов: Свобода от равенства и братства. Моральный кодекс строителя капитализма


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

2009-08-11

LinuxCommand

Не могу не поделиться случайной находкой, LinuxCommand.org. Шелл, скрипты, команды. Все для нас.
Вот, что пишет автор про мотивы:

Why do you need to learn the command line anyway? Well, let me tell you a story. Not long ago we had a problem where I used to work. There was a shared drive on one of our file servers that kept getting full. I won't mention that this legacy operating system did not support user quotas; that's another story. But the server kept getting full and stopping people from working. One of the software engineers in our company spent the better part of a day writing a C++ program that would look through the directories of all the users and add up the space they were using and make a listing of the results. Since I was forced to use the legacy OS while I was on the job, I installed a version of the bash shell that works on it. When I heard about the problem, I realized I could do all the work this engineer had done with this single line:

du -s * | sort -nr > $HOME/space_report.txt


linuxcommand.org/learning_the_shell

Типа "наш инженер потратил лучшую часть дня в писании программы на С++ для подсчета места на диске по каждому пользователю... а я написал одну строку...". Это, типа, иллюстрирует полезность командной строки.
Ну, в целом, да. Хотя можно вспомнить примеры и пополезнее.

2009-08-10

Record audio from playback, JACK

Захотелось мне из кина песенку выдернуть, в смысле, получить в виде файла mp3 или вроде того. Задачка плевая, взять и с миксера записать, под виндой я вроде это делал. Почему бы и под линуксом не сделать? Благо программу Audacity уже ставил, пишет в лучшем виде.

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

Короче, записывайте рецепт. Используем JACK.
Нам понадобится фильм, плеер для проигрывания фильма - SMPlayer, рекордер, для записи звука из фильма - Audacity, демон JACKd и его управлятор qJACKctl. Последние два - часть проекта JACK, назначение которого - соединять звуковые потоки. Все эти полезняшки находятся и ставятся командами
aptitude search what-you-need, aptitude install what-you-find.

Сначала надо запустить демона:
$ jackd -d alsa

От имени пользователя, не иначе. Возможно, понадобится запустить демона в риалтайм режиме, для этого команда будет такой:
$ jackd -R -d alsa

Но чтобы вы могли сделать это (использовать риалтайм), придется внести правки в файл
/etc/security/limits.conf
добавить строки вроде:
valik - rtprio 99
valik - memlock unlimited

Валик - это я. У вас будет учетка скорее всего другая. После этих правок надо перелогонится в систему.
Короче, демона запустили.

Теперь запускайте управлятор:
$ qjackctl &

Теперь запускайте плеер, и залезайте в его настройки:
Options-Preferences-General,
Output drivers, Audio: ставите "jack"

Теперь запускаете Audacity, в качестве источника звука выбираете "JACK Audio connection kit, system" или что-то вроде того.

Теперь самое сложное. Подгоняете источник (фильму) к месту старта отрезка, секунд за тридцать до. Ставите на play. Теперь у вас есть 30 секунд чтобы сделать следующее:
В Audacity стартануть запись, перейти в окно JACK Audio Connection Kit (то, которое появилось после запуска qJACKctl) и нажать кнопу "Connect", открыв окно коннекшенов.
В окне коннекшенов во вкладке Audio вы слева выбираете плеер (MPlayer) а справа рекордер (PortAudio) и жмете кнопу Connect. Да, перед этим надо сделать дисконнект для пары (слева-справа) System и PortAudio.
Потому как по умолчанию оно коннектится не так как нам надо.




Запись пошла, это видно по форме сигнала в аудасити. Когда надо, жмем стоп для записи, отрезаем лишнее и сохраняем.

После чего можно закрыть все эти джеки и прочие лишнии программы и вернить настройки аудио в норму. И послушать, что записалось.
У меня записалось нормально. Хотя во время записи сигнал шел с шумом. Пес его знает, откуда шум. В записи его нет.

Если я и забыл какие детали, в интернете все найдете:



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


И вариант расширенный:

2009-08-09

Bluetooth

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

Сегодня убил порядка часу времени, пытаясь слить фотки на комп.
И спаривал этих ублюдков и доверительные отношения им устраивал и всякое такое. Никак. А раньше вроде получалось.
Потом решил подумать. Раз методом тыка не получается. И додумался, что нужен некий сервер. В данном случае на компе нужен OBEX сервер. И он нашелся.
# aptitude install obexpushd

Потом запустил его внутре нужного каталога:
~/t/pic$ obexpushd

После чего с комма файло полилось как из пулемета. Ура, товарищи.
Чтобы остановить этого демона, надо набрать типа
$ pkill -u $USER obexpushd

А файлы он сливает в каталог из которого его запустили. Прост как правда. А еще он может по инфракрасному порту файлы принимать и даже по IPv4.

А вот и фотки, расширение моста через Москвареку, Ленинградское шоссе:


Если интересно, у меня еще есть, я штук 20 нашлепал.

2009-08-08

Virtual ? (What?)

А и в самомо деле, ну сколько можно шуметь "открытый виртуалбокс, свободный виртуалбокс, кроссплатформенный виртуалбокс...".
Не виртуалбоксом единым! Если у вас винда, то вам прямая дорога к Virtual PC.

Разберем, что за хрень.
Сначала виртмашину написала фирма Connectix. И продала ее в Microsoft. Где из машины сделали Virtual PC.
Заметим - это бесплатная виртмашина.

На сегодня доступно две версии: MS Virtual PC 2007 (назовем ее "старая") и Windows Virtual PC (ее назовем "новая"). Зацените, как легко запомнить и отличить одну от другой.

Старая работает под XP и Vista. Старая не поддерживает высоких разрешений, аппаратную виртуализацию и прочую байду, поддержка которой в "новой" выпячивается как крайне необходимая и важная.

Новая работает только под Винда7. Удивлены? Я нет. Новая работает только на камнях с аппаратной поддержкой виртуализации (Intel-VT, AMD-V).

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

Что нам и надо.

2009-08-07

odt2doc

Это я хочу поделицца опытом превращения OpenDocumentText в чтоб-его.doc

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

Что ж, сижу, поправляю доку, бац - вылетел опенофис. И второй раз, и третий - все при сохранении. Документ был с пометками типа notes и мои правки в режиме записи редакций. ОО не справился с переводом такого в чтоб-его.док.

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

Перегнал в PDF - вроде выглядит неплохо, на крайний случай сгодицца. Так, подложив соломки, стал эксперементировать с конвертацией. Пропуская печальное, могу сразу сказать - ОО не справился. Результат кроме вздохов ничего не вызывал.

Полез искать сторонние конвертеры. Нашел один в онлайне - смело можно пользоваться, сделал все как надо:
media-convert.com/convert/

И еще нашел один в офлайне:
dag.wieers.com/home-made/unoconv/

Этот уноконв есть питоновый скрипт, использующий API от ОО для работы с доками и конвертации. Но у меня не заработал, потому как ОО у меня не из пакетов, а свежий, использующий питон 2.6. В то время как в системе установлен питон 2.5.
В бэкпортах питона 2.6 тоже не оказалось, и на этом я решил судьбу дальше не терзать и остановить эксперимент. А то, устанавливая питон 2.6 можно и систему в неработоспособный вид привести.

Да и шансов на успех у уноконва было маловато, если он использует API от ОО, то и конвертит, видимо, не лучше чем ОО.

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

2009-08-06

PostgreSQL, Полнотекстовый поиск

Очень интересная тема. Статья знакомит с кухней полнотекстового поиска. Читать в два приема, сначала прочесть часть до "конфигураций". Часа через два прочесть остаток.

Хотя тема поиска произвольного текста очень хорошо освещена в превосходной документации PostgreSQL, эта статья может служить введением для тех, кто планирует в дальнейшем глубже изучить эту тему. Чтобы уложиться в рамки статьи, довольно много деталей пропущено, так что мы полагаемся на способность читателя додумывать то, о чём не сказано явно.
...
Для PostgreSQL поддерживается чувствительная к регистру символов проверка фраз на соответствие с использованием оператора LIKE, а также нечувствительная к регистру проверка с помощью оператора ILIKE. Для поиска текста "free text and 'Postgres text search'" запрос может выглядеть следующим образом:

select headline, ts_rank(tsv, query)
from pgweb, to_tsquery('free & text & postgres & search') query
where tsv @@ query and body ilike '%Postgres text search%';

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

Просто, не правда ли?
Разбор запросов на естественном языке

Ну, не так уж и просто. Как, скажите на милость, несчастный разработчик должен преобразовать "человеческую" фразу, приведённую выше, в последующий оператор SQL? Это нетривиальная задача и, к тому же, выходящая далеко за пределы возможностей некоторых разработчиков.


rus-linux.net

2009-08-04

Разное, безопасное

Столкнулся с требованием обеспечить "защиту данных по классу 1Г" и полез выяснять, чегойто?
Выяснил, что 1Г это один из 9 классов автоматизированных систем по классификации ФСТЭК России.

Защита от несанкционированного доступа к информации
Классификация автоматизированных систем и требования по защите информации

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

1.8. Устанавливается девять классов защищенности АС от НСД к информации.
Каждый класс характеризуется определенной минимальной совокупностью требований по защите.
Классы подразделяются на три группы, отличающиеся особенностями обработки информации в АС.
В пределах каждой группы соблюдается иерархия требований по защите в зависимости от ценности (конфиденциальности) информации и, следовательно, иерархия классов защищенности АС.
1.9. Третья группа включает АС, в которых работает один пользователь, допущенный ко всей информации АС, размещенной на носителях одного уровня конфиденциальности. Группа содержит два класса - 3Б и 3А.
Вторая группа включает АС, в которых пользователи имеют одинаковые права доступа (полномочия) ко всей информации АС, обрабатываемой и (или) хранимой на носителях различного уровня конфиденциальности. Группа содержит два класса - 2Б и 2А.
Первая группа включает многопользовательские АС, в которых одновременно обрабатывается и (или) хранится информация разных уровней конфиденциальности. Не все пользователи имеют право доступа ко всей информации АС. Группа содержит пять классов - 1Д, 1Г, 1В, 1Б и 1А.


fstec.ru/_razd/_ispo

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

КОМПЛЕКСНАЯ СИСТЕМА ЗАЩИТЫ ИНФОРМАЦИИ «ПАНЦИРЬ-К»
ДЛЯ ОС WINDOWS 2000/XP/2003
(сертификат ФСТЭК России №1144)
КСЗИ «Панцирь-К» для ОС Windows 2000/XP/2003 собственными средствами реализует все технические требования, регламентируемые для АС класса защищенности 1Г.


npp-itb.spb.ru/products/nsdk

Хорошо. Если это еще и работает, просто замечательно.


А еще я кучу времени убил на попытки увидеть в опенофисе некий "спрятанный текст", в присланном вордовом документе. И только увидев подсказку:

1. Click Tools
2. Select Options
3. Open the View tab
4. Under Formatting marks, select or deselect Hidden


wordprocessing.about.com/od/formattingdocument1/qt/Hiddentext

я понял, где надо ставить галочки. Замечу, подсказка эта для ворда. А в опенофисе опция показа "скрытого текста" включается аналогично, через меню tools-options-write-formattingAids, включить всё, где слово "hidden".
Только так.

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

А то еще верстают в ворде. Извращенцы.

Лена Головач

Известна шутка про звонок на радио: "А кто говорит? - Головач Лена. - Голова Члена?".

Смотрел фильму "Austin Powers in Goldmember" и смеялсо. А смешного там больше, чем может показаться. Например, в самом начале, агент ФБР представляется: "I'm Dixie, Dixie Normous". Ну что тут смешного, да? А на самом деле, это Лена Головач. В смысле, "Dicks Enormous". Так слышно, если вслух произнести.

urbandictionary.com

И такого в фильме масса.
Буду пересматривать.

2009-08-02

html

Если посчитать, сколько (в процентах) вы знаете тегов в HTML? Я, похоже, и половины толком не знаю. Не люблю верстку. Вот, пацаны сфокусировались на редкоиспользуемых тегах, послушаем:

Все мы знакомы с тегом <blockquote>, но знаете ли вы о
его младшем брате <cite>? Тег <cite>
позволяет определять текст внутри элемента как ссылку.

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

С помощью тега <acronym> можно давать определение или
расширенное объяснение группе слов. Когда вы наводите курсором на
текст, который находится в теге <acronym>, появляется
подсказка с текстом из атрибута title.

Если вы хотите отобразить исправления с помощью разметки, теги
<ins> и <del> - это то, что вам нужно. Как
подразумевает название, <ins> выделяет то, что было
добавлено в документ с помощью подчеркивания, а <del>
показывает, что было удалено с помощью перечеркивания.

Тег <abbr> похож на тег <acronym>, за
исключением того, что <abbr> используется только для
определения аббревиатур.

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

Тег <wbr> совсем неизвестный. Честно говоря, я
сомневаюсь, что вы его когда-либо встречали, потому что он почти
никогда не используется. Вообще-то я сам его никогда не видел до того,
как стал готовить эту статью. По существу, тег позволяет определить
место, в котором нужно сделать сброс строки, но только если это
необходимо.


2009-08-01

hiLoad

Посмотрел слайды и послушал один из докладов с конференции HighLoad. Доклад меня заинтересовал темой "авторизация в кластере".

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

Ребята сделали так, что сессии стали не нужны. Продвигая RESTfull подход, заставили браузер при каждом запросе передавать паспорт пользователя на сервер. А в паспорте главной информацией определили битовую маску, которая определяет, есть (1) или нет (0) разрешения (привилегии, права) у пользователя на действие, определяемое номером бита в маске.

Привилегия это обьект (значение бита в маске паспорта указывает на наличие этой привилегии у пользователя). Обьект включает в себя данные: идентификатор (тот самый номер, отвечающей номеру бита в маске); регулярное выражение для отбора, группировки урлов (урл однозначно определяет ресурс); метод (действие, типа GET, POST, DELETE, ...); разрешения (видимо, уточнение того, что можно сделать).

Понятное дело, паспорт подписан и зашифрован. Детали туманны, но идея понятна.

highload.ru/papers2008/7166

Идея хороша, кластер упрощается заметно. А пользователь пусть свой паспорт сам таскает. Неплохо.

Послушав доклад, понял, что помимо генерации толковых идей надо еще и уметь донести мысль. Риторикой надо занимацца серьезно тем, кто выступает. Очень нелегко было следить за ходом мысли докладчика. Если бы тема не была близко знакома, кроме разочарования докладом ничего бы не вынес.

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

Хорошо, наши мозги по прежнему скорее востребованы, чем нет.

Архив блога

Ярлыки

linux (241) python (191) citation (186) web-develop (170) gov.ru (159) video (124) бытовуха (115) sysadm (100) GIS (97) Zope(Plone) (88) бурчалки (84) Book (83) programming (82) грабли (77) Fun (76) development (73) windsurfing (72) Microsoft (64) hiload (62) internet provider (57) opensource (57) security (57) опыт (55) movie (52) Wisdom (51) ML (47) driving (45) hardware (45) language (45) money (42) JS (41) curse (40) bigdata (39) DBMS (38) ArcGIS (34) history (31) PDA (30) howto (30) holyday (29) Google (27) Oracle (27) tourism (27) virtbox (27) health (26) vacation (24) AI (23) Autodesk (23) SQL (23) humor (23) Java (22) knowledge (22) translate (20) CSS (19) cheatsheet (19) hack (19) Apache (16) Klaipeda (15) Manager (15) web-browser (15) Никонов (15) functional programming (14) happiness (14) music (14) todo (14) PHP (13) course (13) scala (13) weapon (13) HTTP. Apache (12) SSH (12) frameworks (12) hero (12) im (12) settings (12) HTML (11) SciTE (11) USA (11) crypto (11) game (11) map (11) HTTPD (9) ODF (9) Photo (9) купи/продай (9) benchmark (8) documentation (8) 3D (7) CS (7) DNS (7) NoSQL (7) cloud (7) django (7) gun (7) matroska (7) telephony (7) Microsoft Office (6) VCS (6) bluetooth (6) pidgin (6) proxy (6) Donald Knuth (5) ETL (5) NVIDIA (5) Palanga (5) REST (5) bash (5) flash (5) keyboard (5) price (5) samba (5) CGI (4) LISP (4) RoR (4) cache (4) car (4) display (4) holywar (4) nginx (4) pistol (4) spark (4) xml (4) Лебедев (4) IDE (3) IE8 (3) J2EE (3) NTFS (3) RDP (3) holiday (3) mount (3) Гоблин (3) кухня (3) урюк (3) AMQP (2) ERP (2) IE7 (2) NAS (2) Naudoc (2) PDF (2) address (2) air (2) british (2) coffee (2) fitness (2) font (2) ftp (2) fuckup (2) messaging (2) notify (2) sharepoint (2) ssl/tls (2) stardict (2) tests (2) tunnel (2) udev (2) APT (1) Baltic (1) CRUD (1) Canyonlands (1) Cyprus (1) DVDShrink (1) Jabber (1) K9Copy (1) Matlab (1) Portugal (1) VBA (1) WD My Book (1) autoit (1) bike (1) cannabis (1) chat (1) concurrent (1) dbf (1) ext4 (1) idioten (1) join (1) krusader (1) license (1) life (1) migration (1) mindmap (1) navitel (1) pneumatic weapon (1) quiz (1) regexp (1) robot (1) science (1) seaside (1) serialization (1) shore (1) spatial (1) tie (1) vim (1) Науру (1) крысы (1) налоги (1) пианино (1)