2 февр. 2010 г.

Вокруг iPad

Пока только 2 фотки и ссылка на обсуждение яблочной новики - iPad.

28 янв. 2010 г.

Как IT может попытаться предотвратить изменение климата?

В блоге Unix Tutorial разместили коротенькую заметку с заголовком "Climate Change: How You Can Help Prevent It" ("Климат изменяется: Как ты можешь помочь предотвратить это?"). В ней даны 3 совета. До этой заметки о первом из них я и не задумывался...:
1. Используйте виртуализацию, чтобы экономить электроэнергию. Избавляйтесь от старой техники.
В частности, от серверов. Потребляют старые системники гораздо больше электроэнергии, чем новая техника. В обслуживании они значительно сложнее и с каждым годом дороже. Пространства они занимают значительно больше. С использованием виртуальные сервера будет использоваться значительно меньше единиц аппаратного обеспечения, при том что используемая техника будет использоваться более практично.

2. Больше читайте с экрана. Меньше распечатывайте.
Особо, думаю, комментировать не стоит. Тонны макулатуры, на которой стоит по 2-3 закорлючки на каждом листе, может служить наилучшим комментарием. Благо, наладонники с каждым годом дешевеют, ebook-и тоже развиваются...

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

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

Или вот - сколько уйдет ресурсов на производство и последующее использование 100 персоналок с мониторами, которые будут использоваться на 2% своей мощности 100 пользователями на протяжении 5 лет? Может полезнее будет произвести один аппарат, который будет делать распечатки нужной информации для 100 пользователей, работать на 70% своей мощности, но потреблять всё то же количество электроэнергии, что и 1 персоналка?

В общем, ко всему нужно подходить без фанатизма. Иначе и в одном, и в другом случае будет вава.

25 янв. 2010 г.

Накипело

"Мороз и солнце - день чудесный!"
Имел я в виду такие чудеса... -20 по Цельсию...

24 янв. 2010 г.

Скрещивание Opera и Google Bookmarks

Пользую сервис Google Bookmarks для хранения закладок. И пользую Opera для сёрфинга. Но почему-то нигде на сайтах не ставят кнопки добавления текущей страницы в этот сервис. Для автоматизации сего действия нашел и чуть доработал следующую команду JS:

javascript:location.href='http://www.google.com/bookmarks/mark?op=add&bkmk='+encodeURIComponent(location.href)+'&title='+(document.title);

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

UPD 2010-01-25 11:09:50
Еще немного изменил строку
javascript:void window.open('http://www.google.com/bookmarks/mark?op=add&bkmk='+encodeURIComponent(location.href)+'&title='+(document.title));

В этом варианте Google Bookmarks открывается в отдельном окне.

23 янв. 2010 г.

Фразы

Vista: Because XP was too good for Microsoft's standard.

20 янв. 2010 г.

Linux. GLPI. Инвентаризация IT-структуры предприятия

При наличии более, чем 5 компьютеров и сотрудников на предприятии, системный администратор (он же обычно по совместительству является и завхозом) сталкивается с вопросом инвентаризации имеющегося оборудования, пользователей, ПО... До какого-то предела это можно делать в электронных таблицах (Open Office SpreadSheet, MS Excel...). Потом упираемся в поиск, отчеты, шаблоны и т.д.

Я не упирался. Я сразу начал искать специализированный софт. Нашли мы Hardware Inspector. По крайней мере из просмотренных нами в 2006 году он оказался одним из самых удобных. Основной недостаток - платность (хотя и небольшая). Мелкие неприятности - иногда выскакивали ошибки, которые, в прочем, не мешали работать дальше. С переходом на Ubuntu возник еще один неудобств - HI писан под Windows. Работать через RDP - не наш путь.

После обновления Hardware Inspector-а на новую версию возникло большое неудобство работы с отчетами и поиском оборудования.

После непродолжительных поисков по совету Лиссяры в оборот был взят пакет GLPI. Вышеупомянутых недостатков Hardware Inspector он начисто лишен: бесплатен, кроссплатформеннен (LAMP - Linux Apache MySQL PHP), неплохо описан (в том числе на русском языке). По возможностям (пока что я его только начал осваивать), по крайней мере, не уступает HI. А учитывая возможность и количество плагинов, скорее всего переплёвывает оного на несколько порядков.

В Ubuntu установил его через
sudo aptitude install glpi
Но в репозитории находится версия 0.70. А на сайте лежит стабильная 0.72.3. Первый же плагин, который я попытался поставить, руганулся на старую версию. Поэтому я скачал свежий вариант с сайта производителя и обновил по инструкции оттуда же (просто скопировал содержимое архива в /usr/share/glpi, куда он был поставлен аптитьюдом).

upd: Вот попалась еще одна программка. БКО - База Компьютеров Организации. Автор один. Россиянин (вроде бы). Программа под Windows, но совсем бесплатная. Отзывы о программе положительные. Но сам я ее не пробовал.

Windows, NTFS. Настройка ACL из командной строки

На сайте WindowsFAQ опубликован перевод использования утилиты cacls из дистрибутива Windows (XP-7). Утилита позволяет изменять права доступа к файлу из командной строки, что иногда очень нужно. Не говоря уже про Windows Home Edition, в которой редактора прав нет (если я правильно помню - очень редко с этой комплектацией сталкиваюсь).

Копипаст статьи:

Просмотр или изменение файлов избирательных таблиц управления доступом (DACL).

Синтаксис

cacls имя_файла [/t] [/e] [/c] [/g пользователь:разрешение] [/r пользователь [...]] [/p пользователь:разрешение [...]] [/d пользователь [...]]

Параметры

имя_файла Обязательный параметр. Вывод избирательных таблиц управления доступом (DACL) указанных файлов. /t Изменение избирательных таблиц контроля доступа (DACL) указанных файлов в текущем каталоге и всех подкаталогах. /e Редактирование избирательной таблицы управления доступом (DACL) вместо ее замены. /c Продолжение внесения изменений в избирательные таблицы управления доступом (DACL) с игнорированием ошибок. /g пользователь:разрешение Предоставление прав доступа указанному пользователю. В следующей таблице перечислены допустимые значения параметра разрешение.

Значение

Описание

n

Нет

r

Чтение

w

Запись

c

Изменение (запись)

f

Полный доступ

/r пользователь Отмена прав доступа для указанного пользователя. /p пользователь:разрешение Смена прав доступа для указанного пользователя. В следующей таблице перечислены допустимые значения параметра разрешение.

Значение

Описание

n

Нет

r

Чтение

w

Запись

c

Изменение (запись)

f

Полный доступ

/d пользователь Запрещение доступа для указанного пользователя. /? Отображение справки в командной строке.

Заметки

  • Для расшифровки полученных результатов воспользуйтесь следующей таблицей.

    Вывод

    Применение таблицы управления доступом (ACE)

    OI

    Для этой папки и ее файлов

    CI

    Для этой папки и ее подпапок

    IO

    Таблица управления доступом (ACE) не применяется к текущему файлу/каталогу

    Выходное сообщение отсутствует

    Только для этой папки

    (IO)(CI)

    Для этой папки, ее подпапок и файлов

    (OI)(CI)(IO)

    Только для подпапок и файлов

    (CI)(IO)

    Только для подпапок

    (OI)(IO)

    Только для файлов

  • Для задания нескольких файлов можно использовать подстановочные знаки (* и ?).
  • Имеется возможность указать несколько пользователей.

Ubuntu 9.10, Lotus Notes 8.5.1. Не перерисовывается окно

Поставил Lotus Notes 8.5.1 на Ubuntu 8.10. Запускается, но нормально перерисовывает только менюшки, панельки и окно списка писем. Остальные окна (в том числе диалог конфигурации) не перерисовывает. Решение найдено ЗДЕСЬ со ссылкой СЮДА. Конкретно - п.п. 7. А еще конкретнее :):
1. скачать ОТСЮДА библиотеки к лотусу
2. рспаковать их
3. установить атрибуты чтения/запуска для всех, установить владельцем рута

-rwxr-xr-x 1 root root 116732 2009-09-20 01:26 libgdk_pixbuf-2.0.so.0
-rwxr-xr-x 1 root root 67240 2009-09-20 01:26 libgdk_pixbuf_xlib-2.0.so.0
-rwxr-xr-x 1 root root 679940 2009-09-20 01:26 libgdk-x11-2.0.so.0
-rwxr-xr-x 1 root root 4579940 2009-09-20 01:26 libgtk-x11-2.0.so.0

4. поместить в /opt/ibm/lotus/notes.

Lotus при запуске будет использовать их, а не общесистемные. После этих действий клиент Лотуса заработал нормально.

Однострочники: нечитаемые пароли

Субж.
echo "Vasya shel is kafe" | md5sum | base64

Хотя, как и во всех случаях работы с *x, есть много других вариантов. В частности:
mkpasswd

19 янв. 2010 г.

AIDE - продолжатель славных дел ADINF

Был когда-то такой пакет ADINF. Хотя, почему "был"?! Он и сейчас есть - www.adinf.com. Только я его не видел годов этак с середины девяностых. Тогда его довольно активно пользовали у нас. Основная задача - мониторинг и отображение измененных между проверками файлов на носителях. Ставили его в автозапуск (autoexec.bat) и при очередном старте системы он сообщал какие файлы были изменены. В принципе - очень простое и эффективное средство контроля. С какой радости вдруг ни с того, ни с сего будет изменяться kernel32.dll?! Изменился? Срочный алярм.
Однако, продукт сей не бесплатен и писан под Win-платформу. А вот AIDE - свободный и линуксовый. Идея та же. Ставим в кроне проверку, в случае компрометации системы изменением каких-либо критичных файлов делаем откат на ближайший бакап.

Краткая инструкция по приготовлению - здесь.

Еще одна утилита подобного функционала - AFICK (А ФИК пройдешь, наверное :) )

ZeroShell. Роутер для ленивых

Набрел на проект ZeroShell - LiveCD, представляющий собой сборку Linux, заточенную под функционал роутера, прокси, брандмауэра и прочих железяк, устанавливаемых на выходе в глобальную сеть. Образ занимает примерно 150МБ. Судя по документации, автоматом подхватывает все сетевые интерфейсы. Настраивается через вебморду. Настройки сохраняет на любом носителе, который видит Linux.
Должно быть удобная штука. Хотя, конечно, собранное руками всё равно надёжнее.

15 янв. 2010 г.

Весёлый светофор

Вот такой светофор есть в Одессе на Пушкинской.

6 янв. 2010 г.

Удешевлённый RDP

Наткнулся на сайтик http://www.thinstuff.com/, на котором, например здесь, рекламируется некоторая надстройка над MS Windows для реализации терминального сервера. Основной цимис, как я понял, в том, что нужно заплатить только за эту надстройку и пользовать ее с любым количеством пользователей. В отличие от лицензии на терминальный сервер от MS, по которой нужно платить сначала за серверное ПО, а потом за каждого подключающегося пользователя. Цена заявлена в районе от $100.

2 янв. 2010 г.

Программистский календарик

Очень замечательный календарик :). С Новым Годом!

29 дек. 2009 г.

Металлолом

Пришлось два дня провозиться с железякой 95-го года производства. Точнее с тремя. Какие-то, на то время очень крутые, персоналки. 80 МБ рамы (4 симма по 20, получается, МБ - я таких не встречал никогда, хотя симмы застал); HDD 4GB; Pentium 133, Win 98 (на корпусе - наклеечка "Designed for Windows 95" :) ); 12-x CD-Rom (круть по тем временам). Пока разобрал корпус, придумал пару новых выражений нецензурных - [censored] и [censored][censored][censored][censored]. Позже скину фотки сего дела.
Задача была поставить на машинку какой-нибудь Linux. Для того, чтобы сотворить железяку, которая будет будить сервера, уснувшие в случае отключения света, но не проснувшиеся при его появлении. То есть такая ситуация.



  • На серверах (несколько штук подключены к одному smart-UPS, который, в свою очередь управляется на одном из серверов) поднят apcupsd.

  • Пропадает свет. Сервера корректно тушатся командами от мастера, затем выключается и сам мастер. При этом между выключением первого сервера и выключением самого UPS проходит около 5 минут
  • .
  • UPS отключает питание с выходов.

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



Но если питание в электросети появится до отключения UPS-а и после отключения первого сервера, то последний так и останется выключенным. Для этого было решено поставить какой-нибудь старый тазик, который будет включен прямо в электросеть, чтобы по появлению электричества начинать рассылать нужным серверам сообщения Wake On Lan.
Под руками оказались 3 полусобранные машины с вышеописанной конфигурацией. С загрузочныз компактов грузиться они упорно не хотят - если старт и происходит, то тут же процесс обрывается с разнообразными сообщениями о невозможности правильно сконфигурировать привод. С загрузкой с дискет примерно та же история.

После дня мученний скопировал имевшуюся под руками Slax - Live-дистрибутив Slackware. Скопировал его на диск c:\ одной из машинок. Прописал в autoexec.bat запуск. Без особых проблем он запускается. Но с непонятной периодичностью теряет сделанные настройки. То /root пропадает, то настройки сети... Полдня с ним провозился. Плюнул.

Подошел zipslack. Подключил винт с машинки к донору, распаковал на него пакет zipslack-а. Прописал, опять-таки, в autoexec.bat его запуск. Стартует, конфигурацию запоминает... Всё хорошо. Пришлось, правда скачать perl.tgz и установить его. Для того, что в пакет не входят компиляторы, которыми можно было бы собрать программку для отсылки WOL-пакетов. А perl поставился без компиляции, а перловый скрипт (взятый отсюда) очень даже нормально с этой задачей справляется.


Таким образом получился костыль 15-летнего возраста, который помогает молодым брендовым серверам, лет на 14 младше этого костыля. :)

Каламбурчик

Наше счастье - постоянно
Ешь кокосы, жуй бананы
Ешь кокосы, жуй бананы...
...Хочу МЯСА!

Чунга Чанга.

9 дек. 2009 г.

"iMax Download Manager"

Вчера столкнулся, как, подозреваю, и еще несколько сот тысяч, пользователей, с т.н. "вымогателем". При попытке запуска любого exe-файла приложение тут же закрывалось. Через пару минут после старта системы выскакивало окно с надписью "Вы нарушили правила использования пакета iMax Download Manager." + [куча текста] + "отправьте СМС на номер такой-то с текстом таким-то". Троянец был подхвачен неизвестно когда (пользователь работал с правами админа и что где и как запускал - неизвестно). Но активизировался троян 08/12/2009. Сообщений в форумах - море. С разными кодами и советами. Часа 4 ушло на попытки вычислить откуда происходит запуск и как его вычистить и на выдумывание новых воззваний в адрес пользователей и троянописателей. Ничего не получалось. Кроме воззваний. Потом в одном посте таки подсказали симптом - в windows\system32\ располагаются несколько DLL-файлов с одинаковым размером, признаком системных скрытых файлов и белибердой в имени. Загрузился с LiveCD, выстроил список файлов по размерам. Нашел группу из десятка файлов с одним размером и признаками скрытости. Снес их в архив и перезагрузился. Помогло.

Если это читает кто-то живой! :)
Работайте с учеткой обычного пользователя! Используйте права администратора только при необходимости. Значительно упростите себе жизнь!

3 дек. 2009 г.

Грязные хаки в C++

В блоге "C++ для всех" наткнулся на статейку "Вокруг public, private и protected". В двух словах - 4 метода доступа к private-членам класса. Особенно улыбнуло

1 #define private public
2
3 class some {
4 public:
5 int a;
6 protected:
7 int b;
8 private:
9 int c;
10 };
11
12 void hack(some& obj) {
13 obj.c = 0;
14 }


:)

29 нояб. 2009 г.

Ляпы

Вот. Купли сок. Таки оказался персиковым.

26 нояб. 2009 г.

Коллажик

Вот. (c) - не мой. Идея моя.

20 нояб. 2009 г.

Уроды

Пришло спам-письмо. Просмотрел его. В конце - текстовка (см фото). Ну не уроды?..

18 нояб. 2009 г.

Ubuntu, Pidgin. Слетают Jabber-учетки.

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

Де-то так...

Где-то так и есть :)
Взято с Нонейма.

13 нояб. 2009 г.

Трус не играет, не смотрит, не снимает, не ходит на, не читает про хоккей

Крысиные бега под названием "эпидемия"

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

11 нояб. 2009 г.

Клавиша SysRq

К стыду своему, за много лет работы за компом я ни разу не задумался назначение на клавише Print Scrn второй надписи - SysRq. А вот оказывается, эта клавиша поистине волшебна. В *x системах она выполняет следующие действия на уровне системы (ядра?):
Alt-SysRq-K - снимает все процессы в текущей виртуальной консоли, оставляя только системный процесс login, который не может подменить никакая внешняя утиль. Аналог виндового Ctrl-Alt-Del, выводящего окно логина, которое принадлежит системе и не может быть подменено никакой программой. Нужно для защиты от программ-шпиёнов. В этом окне нажатия клавиш обрабатывают только драйвера.

Alt-SysRq-E - прекращает в системе все процессы кроме init, отправляя им сигнал SIGTERM. При получении этого сигнала программа перед выходом может сохранить нужные данные.

Alt-SysRq-I - прекращает в системе все процессы кроме init, отправляя им сигнал SIGKILL. При получении этого сигнала процесс немедленно убивается - без возможности сохранения данных.

Alt-SysRq-S - сбрасывает все буфера записи на диск. Полезно, если только Reset спасет, чтобы не потерять данных в буферах. Рекомендуют дождаться сообщения "Emergency Sync.... OK" (или подождать секунд 5-6, если вывод на консоль не производится) перед Reset - нужно дать системе время на сброс и запись данных.

Alt-SysRq-U - отмонтирует все примонтированные ФС. Выводится сообщение "Emergency Umounting". Рекомендации по ожиданию - те же. Еще желательно перед этим скинуть буффера командой Alt-SysRq-S.

И на закуску - контрольный в голову
Alt-SysRq-B - reBoot - аналог виндового ресета.
Alt-SysRq-S - Shutdown - аналог виндовой кнопки питания :)

GPG. Пример использвания

Взято отсюда.



GNU Privacy Guard - GPG

GnuPG - программа для шифрования и подписывания информации, совместимая с PGP. Я не буду здесь рассказывать, что такое шифрование и как оно работает, а лишь приведу основные приемы работы с GnuPG.
Исполняемый файл GnuPG называется gpg. Работа с ним производится при помощи параметров командной строки либо в интерактивном режиме (например, редактирование ключа).
Связка открытых ключей хранится в файле ~/.gnupg/pubring.gpg, а закрытых - в ~/.gnupg/secring.gpg.

Создание пары ключей

Пара ключей создается командой gpg --gen-key. При этом вас спросят тип, размер и срок действия ключа. Затем будет предложено ввести идентификатор пользователя и ключевую фразу. После создания ключа можно просмотреть его командой gpg --list-keys <ключ>, где <ключ> - это любая информация о ключе - имя пользователя, почтовый адрес или цифровой идентификатор.

Теперь экспортируем открытый ключ в файл. Это делается следующей командой:

gpg --output pubkey.asc --export <ключ> --armor

Здесь --armor указывает на то, что вывод должен быть в текстовом, а не двоичном, формате.

Импорт и подписывание чужих открытых ключей

Допустим, у нас имеется чей-то открытый ключ, полученный по почте, с PGP-сервера или еще как-то и созраненный в файл pubkey.asc. Импортируем его в свою связку:

gpg --import pubkey.asc

Перед тем, как пользоваться этим ключом для шифрования или проверки подписи, надо указать степень доверия к этому ключу, а для этого подписать его своим закрытым ключом. Всё это (как и все операции над ключами, имеющимися в связке) делается в специальном режиме редактирования ключа, запускаемом командой gpg --edit-key <ключ>.
Сначала командой fpr просмотрите отпечаток ключа и обязательно сравните его с отпечатком, полученным от хозяина ключа по надежным каналам (по телефону или при личной встрече). Помните, что подписывая открытый ключ, вы подтверждаете его подлинность. Не проверяя отпечаток, вы можете довериться подмененному ключу, что недопустимо. После проверки отпечатка введите команду sign. Укажите, должна ли будущая подпись быть экспортируемой вместе с открытым ключом, или же только локальной. Выберите степень Вашего доверия к данному открытому ключу. Затем введите ключевую фразу своего закрытого ключа. Ключ подписан. Для проверки можете ввести команду check и увидеть только что сделанную подпись. Для выхода из режима редактирования введите команду q и не забудьте сохранить сделанные изменения.

Шифрование

Для шифрования нам необходим открытый ключ человека, которому предназначена шифруемая информация. Для шифрования самому себе можно использовать и собственный открытый ключ.
Чтобы зашифровать файл 1.txt, введите следующую команду:

gpg --output 1.gpg --encrypt --recipient <ключ> 1.txt

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

gpg --output 1.txt --decrypt 1.gpg

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

Подписывание и проверка подписи

Существует 3 типа подписей. Для создания подписи необходим закрытый ключ, для проверки - открытый.

1. Обычная подпись. Команда:

gpg --output 1.gpg --sign 1.txt

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

gpg --verify 1.gpg

Для того, чтобы извлечь сам файл, вместо --verify используйте --decrypt. При этом, несмотря на название ключа, закрытый ключ не потребуется.

2. Прозрачная подпись (Clearsign). При таком способе подписывания к исходному файлу добавляется подпись, при этом сам файл можно просматривать без использования gpg. Для создания такой подписи вместо --sign используется --clearsign.

3. Отделенная (detached) подпись. При этом исходный файл вообще не меняется, а подпись сохраняется в отдельный файл. Для этого используется ключ --detach-sign. Чтобы проверить подпись, необходимы и подпись, и сам подписанный файл. В команде проверки надо указывать оба файла:

gpg --verify 1.sig 1.txt


forum.od.ua решил не отставать от Microsoft :)

forum.od.ua решил не отставать от Microsoft :)

10 нояб. 2009 г.

Slackware. Сборка Apache Httpd 2.2.14 поверх 2.2.9

Возился долго со сборкой Apache Httpd 2.2.14 на системе под Slackware с имеющимся httpd 2.2.9. При make возникало:

log.c: In function 'piped_log_spawn':
log.c:900: error: 'piped_log' has no member named 'cmdtype'
log.c: In function 'ap_open_piped_log_ex':
log.c:1039: error: 'piped_log' has no member named 'cmdtype'
make[2]: *** [log.lo] Error 1
make[2]: Leaving directory `/home/user/install/httpd/server'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/user/install/httpd/server'
make: *** [all-recursive] Error 1


Поиск по форумам ничего толкового не дал. Обновление библиотек apr и apr-utils тоже.
Сделал так:
Взял последнюю команду сборщика, после которой он выходил с сообщением об ошибке. Посмотрел подозрительные пути в параметре -I (указание на директорию, в которой нужно искать необходимые для компиляции библиотеки), увидел там старую директорию include. Попробовал ее заменить на новую и библиотека log.c скомпилировалась. Далее понял куда двигаться. Нашел все файлы в дистрибутиве httpd, в которых упоминается функция ap_open_piped_log_ex - 4 файла. Посмотрел где находятся найденные файлы *.h. Увидел, что они расположены и в старой (в уже установленном старом httpd), и в новой директориях include (в инсталляции). От старой директории избавился переименованием. Указание --includedir при ./configure тоже почему-то не помогло.

7 нояб. 2009 г.

Драйвера для ноутбуков

Возился с ноутом LG LE50-33SR. Переставил систему, а драйверов под него нет. Поиски в инете всё вермя выкидывают на различные дорвеи типа drivers-notebooks-drivers.com, на которых ничего кроме рекламы и тематических фраз нету. Даже на родном сайте про него нет упоминания. Часа через 2 поисков попал на сайт http://www.notebook-driver.com/, на котором нашел полный набор. Если верить их каталогу, у них имеется набор для 830 моделей.
Так что, рекомендую :)

2 нояб. 2009 г.

Microsoft Office 2003. msgrru32.dll - ошибка.

На одной из машинок начал вылетать Microsoft Word с ошибками в модуле msgrru32.dll. Изыскания привели к выводу, что это модуль проверки орфографии русского языка. Помогло переименование (сиречь удаление) этого файла. На орфографию это не повлияло, а ошибки исправило.

Open Office. Отключить заставку

Взято из блога Tips4Linux.com


If you for whatever reason dislike OpenOffice.org’s logo or want to gain an extra few seconds of speed while the application loads, you can disable OO.o’s logo by editing the

/etc/openoffice/sofficerc

file and modifying the

Logo=1

value into

Logo=0
target="blank"

31 окт. 2009 г.

Sorry, GeoCities has closed.

Какой-то этот год выпался разрушительный. Кризисы, выборы, Oracle купил Sun, Microsoft Encarta закрыли... Теперь вот - "Sorry, GeoCities has closed". GeoCities - такой же старый, как интернет у нас в стране (от 1994 года), - перестал быть интересен Yahoo, купившего его за 3 млрд вечнозеленых. То есть, был интернет, был Yahoo, был GeoCities.
Sad but true.

Сборник нормативных документов МОЗ Украины

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

В чём разница между операторами «as» и «приведения»?

Никогда не задумывался над этим вопросом. Хотя всегда использовал приведение типов. А вот прочёл в переводном блоге Эрика Липперта, что приведение типов в случае невозможности приведения генерирует исключение. Оператор же as в случае неудачи возвращает NULL. То есть он требует оперирования nullable-типами. В общем - вот копипаст с заметки:


Большинство людей скажут, чт о разница между «(Alpha)bravo» и «bravo as Alpha» в том, что первое бросает исключение при неуспехе преобразования, а последнее возвращает null. Хоть это и правильно, и это самая очевидная разница, дело не только в этом. Здесь есть ловушки, которых нужно остерегаться.

Во-первых, поскольку результатом оператора «as» может быть null, целевым может быть только такой тип, который допускает значение null: либо ссылочный тип, либо Nullable тип-значение. Нельзя сделать «as int», это не имеет никакого смысла. Если аргумент не int, то каким должно быть возвращаемое значение? Выражение «as» всегда возвращает указанный тип, так что он должен быть типом, допускающим null.

Во-вторых, оператор приведения, как я уже обсуждал – странный зверёк. Он имеет два противоречивых смысла: «проверь, что этот объект действительно этого типа, брось исключение, если не так», и «этот объект не этого типа; найди мне эквивалентное значение, которое принадлежит этому типу». Второе значение оператора приведения не поддерживается оператором «as». Если вы написали

short s = (short)123;
int? i = s as int?;

то вам не повезло. Оператор «as» не станет делать изменяющие представление преобразования из short в nullable int, как стал бы оператор приведения. Аналогично, если у вас есть класс Alpha и несвязанный с ним класс Bravo, с пользовательским оператором преобразования из Bravo в Alpha, то «(Alpha)bravo» применит это преобразование, а «bravo as Alpha» – нет. Оператор «as» учитывает только ссылочные преобразования, и упаковку/распаковку типов-значений.

И, в-последних, сценарии использования этих двух операторов, конечно же, имеют поверхностное сходство, но весьма различны семантически. Приведение сообщает читателю «я уверен, что это преобразование законно, и я готов получить исключение при исполнении, если я ошибся» Оператор «as» сообщает «Я не знаю, можно ли провести это преобразование; мы дадим ему шанс, и посмотрим, что получилось».

30 окт. 2009 г.

Онлайновый растровый-редактор

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

Пакетная обработка файлов изображений

Пакет ImageMagic позволяет производить разнообразнейшие преобразования файлов изображений. Наиболее часто используемые - изменение размера. Пример скрипта:

#!/bin/bash
for file in *.jpg
do
convert -geometry '1024x768>' -quality 85 "$file" "${file%.???}_thumb.jpg"
done


изменяется размер иллюстрации до размера 1024x768 с сохранением пропорций и качество JPG устанавливается в 85. Обрабатываются все jpg-файлы в текущей директории.

26 окт. 2009 г.

Trud.ua + worksales.comua + work.com.ua

Пришла рассылка от trud.ua. В ней - ссылка на worksales.com.ua. А там - тётенька-близняшка тётеньки с work.com.ua :)

Рабочие места, однако!

Вчера на остановке видел такое вот объявление:
Внимание! Требуются молодые, энергичные люди. Для работы агитаторами. з/п 100грн./день.
Бригадиры (старшие агит группы) з/п 130грн./день.
80971663xxx


Очень показательное объявление в период выборов.

Развивая тему можно будет в ближайшем будущем узреть следующие вакансии:
Требуются коммунисты
Требуются сексменьшинства
Требуются сторонники Ющенко
Требуются фанаты Тимошенко
Требуются борцы за правду
... з/п 100грн/день.

17 окт. 2009 г.

Мысли

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

16 окт. 2009 г.

Linux Slackware. Установка Hamachi

Понадобилось на одном сервере под Slackware организовать вход через закрытое подключение. Решил поднять на нем Hamachi. Долго не доходили руки, но вот таки дошли :)
Пошагово:
1. Качаем подходящий пакет отсюда. На данный момент там лежат 2 пакета:
hamachi-0.9.9.9-20-lnx-pentium.tar.gz и hamachi-0.9.9.9-20-lnx.tar.gz. В чем разница кроме размера - я так и не нашел.

2. Распаковываем.
tar zxvf hamachi-0.9.9.9-20-lnx.tar.gz

3. Инсталлируем
sudo make install

4. Hamachi пользует туннелинг, который должен быть в ядре. Либо впёрднут в ядро, либо подключен как модуль. Если туннелинг уже активирован, то будет присутствовать директория
/dev/net/tun
если нет - выполняем с правами рута:
modprobe tun

5. Затем, опять таки, от рута:
/sbin/tuncfg

6. Из под своего пользователя:
hamachi-init

Подготовка закончилась.
Потом можно вводить команды старта, логина, создания сети и т.д. Команды перечислены в README к пакету.

У себя я создал файл /etc/rc.d/rc.hamachi следующего содержания:

#!/bin/bash
###################################
### Start-up script for Hamachi ###
###################################
USER=rettpop
case "$1" in
start)
modprobe tun
/sbin/tuncfg
/bin/su - $USER -c "hamachi start"
/bin/su - $USER -c "hamachi join NetworkName NetworkPass"
/bin/su - $USER -c "hamachi go-online NetworkName"

;;
stop)
hamachi stop
;;
restart|force-reload)
hamachi start
hamachi stop
;;
*)
exit 1
;;
esac
exit 0


Запуск его прописал из rc.local. Работает.

Вот кратки перечень команд:
hamachi-init
Генерирует ключи идентификации для учетной записи

hamachi start
Запуск демона Hamachi

hamachi login
Активизация Hamachi

hamachi join <network>
Подключиться к сети

hamachi go-online <network>
Активизировать сеть

hamachi list
Вывести список участников сети

15 окт. 2009 г.

Бесплатность от Microfost

Все-таки приходится мастодонтом шевелиться под действием общественных движений.
Microsoft объявила (правда уже 23/09/2009, но всё равно актуально) о запуске программы WebsiteSpark. Программа позволяет легально использовать ряд пакетов для web-разработки из Редмода. При этом должно соблюдаться несколько правил: маленький штат компании (до 10 работников), работа на сторонних заказчиков. Выдаются такой софт:

  1. 3 пользовательские лицензии на Visual Studio 2008 Professional Edition
  2. 1 пользовательскую лицензию на Expression Studio 3 (включающую Expression Blend, Sketchflow и Web)
  3. 2 пользовательские лицензии на Expression Web
  4. 3 4 процессорные лицензии на Windows Web Server 2008 R2
  5. 4 процессорные лицензии на SQL Server 2008 Web Edition
  6. Панель управления DotNetPanel (облегчает удаленное управление вашими серверами)


Выдается это всё на 3 года. В конце периода за участие программы предполагается возыметь с участников по $100. Если понравилось, то можно будет приобрести пакет софта за $1000.

Немного раньше Microsoft объявила подобную программу для софтверных стартапов BizSpark. Условия участия примерно те же - малый размер предприятия, трехлетний период.

Антикризисная, так сказать, программа.

14 окт. 2009 г.

Эппл тоже лажает...

Из новосетй uinC.ru:


Из-за ошибки в Mac OS X Snow Leopard пользователи лишаются личных данных
Пользователи Mac OS X столкнулись с серьезной проблемой: из-за странной ошибки в новой операционной системе Apple с кодовым названием Snow Leopard могут быть уничтожены все личные данные. Как сообщается на сайте технической поддержки Apple, проблема проявляется тогда, когда пользователь сначала входит в систему как гость (преднамеренно или случайно), а затем выходит из нее и вновь пытается войти, но уже через собственную учетную запись. В этом случае все настройки ОС и приложений сбрасываются до установок по умолчанию, а содержимое критически важных папок с документами, фотографиями и музыкой уничтожается. По предварительным данным, ошибка проявляется на тех компьютерах, которые были обновлены до Mac OS X Snow Leopard с предыдущей версии операционной системы, известной как Leopard. По словам пользователей, единственный способ вернуть потерянные файлы — восстановить их из резервной копии. Однако многие из пострадавших не копировали файлы в течение нескольких месяцев. «У меня было 250 Гб непродублированных данных, и я потерял всё: годы потраченных трудов на документы, фотографии, видео, музыку! Можно ли хоть что-нибудь восстановить?!» — восклицает одна из жертв. Компания Apple пока не комментирует ситуацию. Пользователям Mac OS X Snow Leopard в качестве временной меры рекомендуется отключить гостевую учетную запись во избежание возможных неприятностей.


Гонка вооружений среди софтописателей не дает писать качественный софт.

13 окт. 2009 г.

Ubuntu. Запуск rdesktop при загрузке

Делал из старой персоналки тонкого клиента для подключения к терминальному серверу.
Поставил Ubuntu (7.10 Festy Favn). Отключил ненужные службы, настроил выключение машины по нажатию кнопки питания. Завел пользователя и поставил его как автологинящегося.
Затем в /usr/share/xsessions создал файл rdesktop.desktop (имя должно быть *.desktop) следующего содержания:
Код

[Desktop Entry]
Encoding=UTF-8
# The names/descriptions should really be better
Name=RDesktop -- название, отображаемое в списке сессий *dm
Comment=RDesktop session
#путь к команде, запускающей наш скрипт
Exec=/usr/share/rdsession
Icon=
Type=Application


Файл /usr/share/rdsession имеет следующий вид:

#!/bin/bash
while [ 1 ]; do
# Запускаем сессию в фуллскрине, с глубиной цветов в 16 бит и клавиатурной раскладкой en-us
/usr/bin/rdesktop -f -k en-us -a 16 [serverIP]
done


Естественно, выставляем ему атрибут +x.

При следующем запуске *dm в его списке сессий должен появиться RDesktop. Логинимся в него и на вопрос о запоминании его как дефолтного даем положительный ответ.

Формат cron-времени

Формат времени демона crontab.
минута час день_месяца месяц день_недели команда
------------------------------------------------

Допустимые значения:
минута от 0 до 59
час от 0 до 23
день_месяца от 1 до 31
месяц от 1 до 12 (можно три буквы из названия месяца,
регистр не имеет значения от jan до dec)
день_недели от 0 до 6 (0 это воскресенье,
можно писать от sun до sat)

7 окт. 2009 г.

Ускорение работы FireFox 3

На Tips4Linux.com опубликовали совет по ускорению работы FireFox 3. Пользую я его не часто, но может пригодится:

1. Открыть Firefox и в адресной строке набрать about:config.
2. Согласиться с “Я обещаю быть осторожным“
3. Найти параметр network.http.pipelining и выставить его в True.
4. Создать новый логический параметр network.http.pipelining.firstrequest и взвести его в True.
5. Параметр network.http.pipelining.maxrequests выставить в 8.
6. network.http.proxy.pipelining установить в True.
7. Создать 2 целочисоленных параметра nglayout.initialpaint.delay и content.notify.interval. Установить их значение в 0.
8. Перезапустить Огнелиса.

4 окт. 2009 г.

В Украине в 2012 году не будет ни одного школьного выпускника

Вот такоя статейка на сайте Министерства Образования Украины:


Відсутність випускників шкіл у 2012 році не зірве вступної кампанії
У Верховній Раді України за участю заступника голови парламенту Миколи Томенка та першого заступника міністра освіти і науки Олександра Гребельника відбувся круглий стіл, присвячений вступу до ВНЗ у 2012 році.

Ректори університетів та директори шкіл й ліцеїв висловлювали свої думки з приводу того, як безболісно для системи освіти пережити 2012 рік. Нинішні дев'ятикласники - перші, хто пройдуть 12-річну шкільну дистанцію, тому саме в 2012 році українські школи не випустять жодного випускника.

"Ситуація неприємна, але не катастрофічна. У 2012 році буде кому вступати до університетів, - вважає Олександр Гребельник. - Планується держзамовлення на рівні 115 тисяч осіб, і всі ці місця будуть зайняті. Хто ще крім випускників шкіл зможе вступати до ВНЗ? Це випускники минулих років. В останньому ЗНО їх брало участь близько 120 тисяч. Стати студентами вищих навчальних закладів можуть випускники ПТУ (з 230 тисяч осіб в університети йде 15-20 тисяч) та молодші спеціалісти (а це ще 15-20 тисяч). Таким чином, набігає 150-160 тисяч при держзамовленні у 115 тисяч. Для державних університетів ситуація не катастрофічна".

Ректори внесли пропозицію збільшити кількість вступників 2012 року завдяки екстернатному випуску. На їхню думку, частина учнів могла б проходити програму, розраховану на чотири роки, за три. Але яким чином тоді визначати, хто має закінчити школу раніше? Також можна заохочувати випускників минулих років вступати до університетів у 2012 році.

"Дванадцятирічна школа уже відбулася, а з наступного року вона стає ще й профільною, - наголосив директор Інституту інноваційних технологій і змісту освіти Олександр Удод. - Уже готуються підручники на профільні класи. І тоді буде видно чи є учні цих класів у перспективі студентами ВНЗ. Нічого страшного у 2012 році не станеться. У нас вже кілька років підряд в країні парадоксальна ситуація - місць в університетах більше, ніж випускників шкіл. Рік без випускників стане періодом "природного" відбору найсильніших ВНЗ".

Прес-служба МОН



В двух словах - в связи с тем, что девятиклассники нынешнео года представляют первое поколение школяров, которые перешли на 12-летнюю систему обучения, и таким образом перескочили через один класс, их выпуск состоится в 2013 году, а не в 2012, как при 11-летней системе. То есть, в 2012 году в Украинских школах не будет выпусков.
На первый взгляд нечего страшного... Но получается, что в этот год и новых абитуриентов в ВУЗах будет значительно меньше. Не знаю точно, чем это грозит ВУЗам, но предполагаю, что ничем хорошим. Паганели собрались по этому поводу и утешают электорат предположениями, что еще же есть выпускники техникумов, профтехучилищ, залётные заочники... Так же предполагают, что ситуацию можно поправить за счет экстернатов - вундеркиндов, проходящих школьную программу значительно быстрее своих убогих ровесников.

Интересно, вот, они только сейчас об этом задумались? Или когда вводили эту систему?

Я отчего-то не слышал подобного при переходе с 10-летней на 11-летнюю систему... Я сам в 7-м классе не учился - года 4 ждал, что у нас в 7-м классе начнется УПК (учбно-производственная практика, на которой можно было и права получить, и какому-то ремеслу научиться), а пока я дошел до окончания 6-го класса, нас сразу перевели в 8-й. И УПК не состоялась.

2 окт. 2009 г.

Гигантская анимация

Я - у захватi!

COMBO a collaborative animation by Blu and David Ellis (2 times loop) from blu on Vimeo.

Поиск родственных сайтов

Наткнулся в инете на интересный поисковик сайтов, схожих по тематике с указанным. Поиск по Google.com выдает список самых известных поисковиков. 90% из которых я не знаю :)

1 окт. 2009 г.

Препресс. Параметр Total Inc

Столкнулся тут с требованием от типографии: Total Inc=300. Кинулся за его расшифровкой, но тщетно. У спецов выяснил - это максимальный суммарный процент краски в каждой точке. То есть, сумма компонентов CMYK не должна превышать это число. Например, C=50, M=50, Y=50, K=50 даёт в результате Total Inc = 200. Превышение этого значения влечет за собой склеивание листов, налипание краски на валы печатной машины, отбиванием на соседние листы... Для газетной печати принято значение в 260-280, для мелованной бумаги - 300-320.