|
Мейнтейнеры ядра линукс всё не унимаются - теперь они впендюрили в ядро утилиту, выполняющую те же функции что и memtest86+. Следуя этому тренду, стоит ожидать когда они встроят в ядро openoffice. Танненбаум был прав ...
( Read more... )
|
|
Интересно, как человеку с фамилией Косячный работается в IT? Причём профессия его не связана с тестированием. |
|
Вот уже около месяца какие-то подонки пытаются поломать мою домашнюю машину. К счастью их странные замыслы пока не реализованы, а странные потому-что не понятно нафига я им сдался - обычный юзер. Брутфорсят, негодяи. Логов о неудачном логине у меня накопилось уже 3,5 МБ. Если они продолжат идти по этому пути, то мне опасаться нечего - будут всю жизнь перебирать, хотя может эти имбицилы поумнеют и подумают о более эфективных способах взлома ибо сломать можно всё, но не такими тупыми методами.
А пока что я осваиваю selinux, регулярно обновляюсь, читаю отчёты secunia и книжки для безопасников, и главное, главное чему меня научила эта жизнь - РЕГУЛЯРНО ДЕЛАЮ БЕКАПЫ!!! Думаю, если бы в России была партия сторонников регулярных бекапов, то она была бы популярна. Лично я бы поддержал её главную идею :)
Вот как всё это началось (и пока не прекращается, только IP постоянно меняется): May 17 06:29:10 ismirnov-pc sshd[7377]: Invalid user master from 217.110.81.194 May 17 06:29:11 ismirnov-pc sshd[7381]: Invalid user nimda from 217.110.81.194 May 17 06:29:12 ismirnov-pc sshd[7385]: Invalid user rodartsinimda from 217.110.81.194 May 17 06:29:13 ismirnov-pc sshd[7389]: Invalid user administrator from 217.110.81.194
|
|
Немного забавная фраза из документации к suspend2ram:
Suspend to RAM with ACPI (S3) is still very experimental, but there are several machines that are known to work. There are several "hacks" that can be tried to actually get the machine to resume (suspend is usually not the problem, just the resume) ;-)
Очень похоже на распостраненную у меня на работе шутку, о том что "мы настраиваем резервное копирование - это не предполагает возможность восстановления из резервной копии".
Источник
|
|
Банкротство SCO: как это было (сокращенная версия).
<SCO> hey guyz, i bought caldera, I have linux now. <red_hat> haha, your linux sucks. <novell> lol <atnt> lol <ibm> lol <SCO> no wayz, i will sell more linux than u! <ibm> your linux sucks, you should look at SuSE <SuSE> Ja. Wir bilden gutes Linux für IBM. <SCO> can we do linux with you? <SuSE> Ich bin nicht sicher... <ibm> *cough* <SuSE> Gut lassen Sie uns vereinigen. * SuSE is now SuSE[UL] * SCO is now caldera[UL] <turbolinux> can we play? <conectiva> we're bored... we'll go too. <ibm> sure! * turbolinux is now turbolinux[UL] * conectiva is now conectiva[UL] <ibm> redhat: you should join! <SuSE[UL]> Ja! Wir sind vereinigtes Linux. Widerstand ist vergeblich. <red_hat> haha. no. <red_hat> lamers. <ibm> what about you debian? <debian> we'll discuss it and let you know in 5 years. <caldera[UL]> no one wants my linux! <turbolinux[UL]> i got owned. <caldera[UL]> u all tricked me. linux is lame. * caldera[UL] is now known as SCO <SCO> i'm going back to unix. <SGI> yeah! want to do unix with me? <SCO> haha. no. lamer. <novell> lol <ibm> snap! <SGI> :~( <SCO> hey, u shut up. im gonna sue u ibm. <ibm> wtf? <SCO> yea, you stole all the good stuff from unix. <red_hat> lol <SuSE[UL]> heraus laut lachen <ibm> lol <SCO> shutup. i'm gonna email all your friends and tell them you suck. <ibm> go ahead. baby. <SCO> andandand... i revoke your unix! how do you like that? <ibm> oh no, you didn't. AIX is forever. <novell> actually, we still own unix, you can't do that. <SCO> wtf? we bought it from u. <novell> whoops. our bad. <SCO> i own u. haha <SCO> ibm: give me all your AIX now! <ibm> whatever. lamer. * ibm sets mode +b SCO!*@* * SCO has been kicked from #os (own this.)
Источник
|
|
Досталась мне тут на работе одна машина с коммерческим юниксом на борту (hp-ux). Она в основном простаивала и прошлый владелец видимо изучал shell скриптинг. Это стало понятно по большому количеству скриптов странного назначения в домашнем каталоге. Вот самый короткий и интересный из них:
hpora10 ~ # cat suicide.sh #!/usr/local/bin/bash me=$$ kill $me
Гореть ему в гиене огненной. Его душа попадёт в ад.
|
|
Тем кто был избавлен от "удовольствия" читать мануал к fvwm (144 страницы в распечатанном виде) привожу абзац с планами разработчиков на ближайшие 4.27e+27 лет:
BUGS
As of fvwm version 2.4.0 there were exactly 71.8 unidentified bugs. Since then 22.825 bugs have been fixed. Assuming that there are at least 10 unidentified bugs for every identified one, that leaves us with 71.8 - 22.825 + 10 * 22.825 = 277.225 unidentified bugs. If we follow this to its logical conclusion we will have an infinite number of unidentified bugs before the number of bugs can start to diminish, at which point the program will be bug-free. Since this is a computer program infinity = 3.4028e+38 if you do not insist on double-precision. At the current rate of bug discovery we should expect to achieve this point in 4.27e+27 years. I guess we better plan on passing this thing on to our children... man fvwm Иногда настроение поднимается в самых неожиданных местах (c).
|
|
Чего только в мануалах не прочитаешь. Можно и на такое наткнуться:
"All mail clients suck. This one just sucks less." -me, circa 1995 Источник
|
|
Просто цитата:
HOWTO Записать работу программы в видеофайл /* ... */ Запись через видеовыход Нужна видеокарта с ТВ-выходом и плата видеозахвата/ТВ-тюнер. Соединив разъемы, можно вести запись с помощью mencoder. Примечание: Если оба устройства стоят в одном компьютере - высока вероятность смерти железа.
Источник
|
|
На ЛОРе, LF и прочих никсовых местах рунета недавно была новость о Dell IdeaStorm - это некий инструмент, который поможет Dell узнать о том чего хотят её клиенты. Технология такова: постишь свою идею и если она получит достаточное количество голосов, то она возможно будет "взята на карандаш" в Dell. Я в шоке от результатов. Вот самые популярные 8 тем на 10 марта 2007 (слева количество голосов):
106206: Предустановленные на PC: Fedora, OpenSUSE или Ubuntu. 71230: Предустановленный OpenOffice. 53140: Маленький и быстрый linux laptop для интернет. OpenOffice & Firefox. 49898: Преустановленный firefox в качестве дефолтного браузера. 48583: Отсутствие дополнительного предустановленного ПО (в частности от AOL, Google). Только "чистая" ОС. 47740: Отсутствие предустановленных ОС 34045: Поддержа всего железа на linux 27681: Стикер на ноутбук "Linux 2.6.16 ready" или "Ubuntu 6.10 Capable"
Приятно удивлён. Я конечно был уверен, что тема будет популяной, но не думал что всё примет такие масштабы. Через пол-годика надо будет посмотреть как изменится ряд PC'шок предлагаемых Dell. Лед тронулся господа присяжные-заседатели ...
|
|
Вычитал сегодня (текст сохранён в оригинале):
Созданная в Швеции в качестве школьного проекта Линуса Торвальдсона (Linus Torvaldson), операционная система Linux ...
Автор: Craig Zacker Название: Компьютерные сети. Модернизация и поиск неисправностей.
Хотя я всё ещё считаю эту книгу одной из лучших в своём роде.
|
|
Введение.
libgcrypt - это библиотека, предоставляющая высокоуровневый интерфейс к криптографическим функциям. Она является частью проекта gnupg, распостранияется по лицензии LGPL, использует расширяемый и гибкий API.
В частности libgcrypt поддерживает (версия 1.2.2 - 29 июля 2005):
1) Симметричная криптография
AES-128
AES-192
AES-256
ARCFOUR
BLOWFISH
CAST5
DES
3DES
TWOFISH-128
TWOFISH-256
2) Криптография с открытым ключем:
RSA
DSA
ElGamal
3) Хеш-функции:
MD2
MD4
MD5
SHA1
SHA256
SHA384
SHA512
CRC24 (соответствует RFC2440)
CRC32 (соответствует RFC1510)
CRC32 (соответствует ISO 3309)
RIPE-MD-160
TIGER-192
HAVAL
4) Генераторы псевдослучайных последовательностей.
5) Аллокаторы (в том числе для выделения защищенной области памяти).
Подготовка исходных текстов.
libgcrypt написана на С, поэтому её достаточно просто подключить к проекту написанном на C или C++. Все интерфейсы библиотеки описаны в заголовочном файле "gcrypt.h". Вы должны включить директивой препроцессора "include" заголовочный файл "gcrypt.h" во все файлы исходных текстов, использующих библиотеку libcrypt. #include <gcrypt.h>
Чтобы собрать программу с libgcrypt, вы должны добавить на вход gcc вывод следующей комманды: # libgcrypt-config --libs --cflags или компилировать её примерно так:# gcc program.c `libgcrypt-config --libs --cflags` Все будет гороздо удобней, если вы используете autoconf & automake. Вам нужно будет добавить вызов m4 макроса AM_PATH_LIBCRYPT в configure.ac (или configure.in). Синтаксис вызова таков:AM_PATH_LIBGCRYPT ([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) После своей работы, данный макрос устанавливает две переменные:LIBGCRYPT_CFLAGS - содержит флаги необходимые для компиляции программы с gcrypt.h. LIBGCRYPT_LIBS - содержит флаги необходимые для компоновки программы с libgcrypt. Вот пример использования этого макроса:AM_PATH_LIBGCRYPT([1.2.2],,AC_MSG_ERROR([[****** libgcrypt was not found.*** You may want to get it from ftp://ftp.gnupg.org/gcrypt/libgcrypt/***]]))AC_SUBST(LIB_GCRYPT_CFLAGS)AC_SUBST(LIB_GCRYPT_LIBS) В данном случае проверяется наличие в системе библиотеки libgcrypt версии 1.2.2 (или выше) и еслиеё нет, то выдаётся сообщение об ошибке. Если библиотека нужной версии найдена, то вызываются макросы AC_SUBST, которые подставляют в выходные файлы соответствующие переменные (флаги компиляции и компоновки). Осталось только добавить эти переменные в ваш "Makefile.am". Это выглядит примерно так: AM_CPPFLAGS = $(LIBGCRYPT_CFLAGS)LDADD = $(LIBGCRYPT_LIBS) Пример использования (симметричная криптография).
Последовательность наших действий:
- Выбрать алгоритм, режим его использования (например: поточный, блочный), некоторые дополнительные флаги(например: совершать все операции в защищенной области памяти).
- Указать секретный ключ.
- Выполнить процедуру шифрования/дешифрования.
А вот и сам код:
gcry_error_t error;
/* переменная в которой будет находится результат завершения предыдущей операции */
gcry_cipher_hd_t handle;
/* context handle*/
char* key = "Password01234567";
/* секретный ключ */
char* data = "Message1";
/* шифруемые данные */
/* Примечание: ключ и шифруемые данные здесь выбраны не случайно. Их длины отвечают требованиям к длине ключа идлине блока для BLOWFISH (keylength=128, blocklength=64). */
error = gcry_cipher_open (&handle, GCRY_CIPHER_BLOWFISH, GCRY_CIPHER_MODE_CBC, 0);
/* выбор контекста
GCRY_CIPHER_BLOWFISH - используем алгоритм BLOWFISH
GCRY_CIPHER_MODE_CBC - блочный режим */
if (error) {
printf("%s", gcry_strerror(error));}
/* напечатать сообщение об ошибке */
error = gcry_cipher_setkey(handle, key, 16);
/* установка секретного ключа
key - секретный ключ
16 - длинна секретного ключа */
if (error) {
printf("%s", gcry_strerror(error));}
char* out = (char*) gcry_malloc(strlen(data));
/* out - строка с зашифрованными данными
gcry_malloc - функция аналогичная обычному malloc */
error = gcry_cipher_encrypt(handle, out, 8, data, 8);
/* шифрует data в out
параметр №3 - размер выделенной памяти под out
параметр №5 - размер шифруемых данных data */
if (error) {
printf("%s", gcry_strerror(error));}
gcry_cipher_close(handle);
/* "отпускаем" контекст */
В любом случае перед использованием каких-либо функций libgcrypt нужно прочитать соответствующиеразделы документации (поэтому здесь я не приводил прототипы функций).
|
|
Вчера увидел такую вот строчку в одной из обёрток для libgcrypt:
#define SWAP(a,b) do { int _t = a; a = b; b = _t; } while(0)
а ещё некоторые говорят программеры - хмурые люди.
обёртка: http://josefsson.org/shishi/releases/shishi-0.0.11.tar.gz файл: shishi-0.0.11/lib/libgcrypt.c
|
|
Пользуюсь CVS всего лишь месяца 3-4, но очень не нравиться то что нельзя перемещать/переименовывать файлы без потери истории. Иногда это жутко раздражает. Всего-то хотелось переложить заголовочники и дописать в Makefile.am строку с их новым расположением. И что? - чтобы не потерять историю я должен лезть в репозитарий и всё править руками? А нахрена мне тогда CVS? Я предполагал что это должно входить в её обязанности.
Конечно и это можно пережить, но уж очень привлекательна для меня эта фраза:
... Subversion разрабатывалась как продвинутая замена CVS, изначально ставилась задача: сохранить всю привычную функциональность при добавлении новых возможностей и исправлении наиболее очевидных недостатков CVS. Поэтому большинство широкоиспользуемых команд Subversion имеют такой же синтаксис, как и CVS. Переход на Subversion несложен и не требует долгого привыкания.
Надеюсь она окажется правдой. Благо на sourceforge.net есть и svn-сервер. Попробуем-с.
|
|
Чистил свою флешку от хлама и нашёл свою статейку свои заметки по отладке бекэндов SANE. Когда-то хотел поделиться с русскоязычными пользователями программистами о том что же нужно им делать если они нашли свой сканер с списке unsupported. Но видать хреновый из меня писатель - желание продолжать угасло почти моментально. Однако думаю эти заметки почитать стоит хотябы потому что аналога им нет (на английском тоже). Хотя начинать стоит всё равно с описания API (есть на английском). Теперь с чистой душой удаляю эту ненужную мне гадость с флехи.
|
|
|