понедельник, 21 апреля 2008 г.

Как вывести текст конфига без комментариев и пустых строк?

Давно уже интересовался этим, но всё не доходили руки как следует погуглить. Ответ прост и красив, как и всё в юниксах ;).
cat myfile | grep -v "^#" | grep -v "^$"

воскресенье, 6 апреля 2008 г.

Запираем Skype в клетку AppArmor

Заметка написана по мотивам вот этой статьи и вот этого руководства.
Как мне стало известно, скайп проявляет любопытство (не по чину) к личным данным пользователя, который имел неосторожность запустить его на своём компьютере. Причем собирает любую мало-мальски ценную информацию: технические характеристики системы, историю посещения страниц и сохранённые пароли в Firefox и Opera, пользователей системы, установленные программы и много всего прочего...
Информация о таком непотребном поведении программы появилась в сети достаточно давно.
Естественным шагом был бы полный отказ от использования Skype. Но как бы-то не было, всё равно, время от времени приходится прибегать к услугам зловредной софтины. Естественно, хочется как то оградить себя от посягательств владельцев скайпа на пароли и прочую мою информацию. И выход конечно же есть. Как раз для таких случаев, умельцами из Novell написана хитрая программа под названием AppArmor. Суть её в том, чтобы ограничить список устройств и файлов к которым имеет доступ тот же Skype, будучи запущенным под ней.
Теперь подробнее.
Устанавливаем skype (с сайта или из репозитория).
AppArmor уже установлен в Ubuntu начиная с верси 7.10.
Открываем терминал и создаём новый профиль для skype:
sudo aa-genprof /usr/bin/skype
Теперь запускаем skype, делаем звонок, закрываем, выходим.
Переходим в терминал и нажимаем S. AppArmor собирает информацию об активности подопытной софтины (в данном случае скайпа), а затем по шагам показывает, где именно данная программа была, что читала, с каким железом взаимодействовала. Нажимаем 123, G, A или D, в зависимости от того, хотим ли мы видеть её там в дальнейшем.
В конце S чтобы сохранить и F чтобы закончить.
В итоге, мы получаем новый профиль для скайпа. Теперь его нужно немного подредактировать.
sudo nano /etc/apparmor.d/usr.bin.skype
Заменяем всё содержимое на следующий текст:
# Last Modified: Wed Nov 28 19:26:07 2007
#include
/usr/bin/skype {
#include
#include
#include
#include
#include
/dev/video0 mrw,
/etc/gai.conf r,
/home/*/.ICEauthority r,
/home/*/.Skype/** krw,
/home/*/.Xauthority r,
/home/*/.config/* kr,
/home/*/.kde/share/config/kioslaverc r,
/proc/*/cmdline r,
/tmp/.ICE-unix/* w,
/tmp/.X11-unix/* w,
/usr/bin/skype mr,
/usr/share/X11/* r,
/usr/share/icons/** r,
/usr/share/skype/** kr,
}

Сохраняем. Закрываем.
Перезагружаем AppArmor:

sudo /etc/init.d/apparmor restart

Активируем профиль для скайпа:

sudo aa-enforce skype

Готово!
Проверить можно так:

sudo apparmor_status

Теперь, каждый раз, когда вы запустите skype, вам в dmesg будут сыпаться сообщения где и за что скайпу надавали по сусалам.

пятница, 21 марта 2008 г.

Ubuntu и девушки

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

Я и Asus Eee PC

Новгородские знакомые попросили приобрести для них пару-тройку агрегатов. Честно говоря, я ничего хорошего от продукта за 9999 рублей не ожидал. Фотографии в интернете также не прибавляли оптимизма...
Купил 3 штуки. Привёз курьер на работу, раскрыл все коробки, наставил эльдорадовских штампов в гарантийные талоны, сказал, что у меня есть неделя на тесты и укатил.
Естественно, я сразу же взялся за первый образец, с целью как следует изучить его.
Внешний вид: Ну что можно сказать. В жизни Eee PC гораздо лучше чем на фотографиях в интернете. Никакого намёка на убогость. Маленький? Да. Создаётся ощущение основательности, прочности какой-то.
Железо: Процессор 900 MHz, 512 MB оперативки, Wi-Fi, камера 0,3 мегапикселя
Клавиатура: Маленькая. Такая, типично асусовская. С нормальным ходом. Кнопки небольшие, но удобные.
Дисплей: Порадовал, пожалуй больше всего. Отличные углы обзора, хорошая яркость и контрастность. От впечатления ужатости, которое производили картинки в интернете, не осталось и следа. Дизайнерам этого чуда, от меня отдельный респект.
Софт: Windows XP и Microsoft Works. Непонятно мне, какой идиот догадался впихнуть туда венду? С первого взгляда становится ясно - ей там не место. С трудом помещаясь на маленьком разрешении, пытаясь впихнуть невпихуемое, редмондовская операционка производит довольно жалкое впечатление. Сходу расположилась на диске, оставив 1,2 гигабайта из 4-х под данные. Была бы моя машинка, сразу бы снёс венду нафиг.

четверг, 20 марта 2008 г.

Почему надо венчаться

Когда выбор кончен, должно произойти сочетанию, таинственному от Бога слиянию духовно-телесному. Естественный союз, по любви, есть союз дикий, мрачный. Здесь он очищается, освящается, отрезвляется по молитве Церкви Божественною благодатию. Трудно самому одному устоять в союзе крепком и спасительном. Нити естества рвуться – благодать непреодолима. Самонадеянность опасна везде, тем более здесь… Потому смиренно, с постом и молитвою, приступи к таинству.


Свт Феофан Затворник

среда, 27 февраля 2008 г.

Кодировка ICQ в Pidgin

Пользуюсь Pidgin'ом давно и с удовольствием (ещё с тех времён, когда он был Gaim'ом).

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

После таких нехитрых манипуляций, совместимость была восстановлена.

P.S. Отдельное спасибо Hetfield за помощь и терпение при решении проблемы.


Update: Проверил на последних версиях. Теперь ему кодировка вобще нафиг не нужна. То есть теперь поле Кодировка нужно просто оставить пустым.

суббота, 2 февраля 2008 г.

Atheros AR5007EG на Gutsy Gibbon

Недавно приобрёл беcпроводной маршрутизатор D-Link DI-524. Вобще, мне больше нравится техника от Asus, но в данном случае пришлось выбирать из вариантов предложенных провайдером.
Итак: маршрутизатор установлен, подключение настроено, казалось бы, живи да радуйся. Однако, со временем в работе начали обнаруживаться некоторые странности. А именно: при скачивании с меня файлов через примерно 15 секунд связь обрывалась, маршрутизатор переставал пинговаться, через минуту связь восстанавливалась, кроме того, наблюдалась общая неустойчивость соединения и при загрузке.
Первоначально мои подозрения упали на маршрутизатор. Однако никакой информации в подтверждение в интернете мне найти не удалось. Дальше я решил провести эксперимент и протестировать соединение в альтернативной ОС. Тестирование показало исключительно устойчивую связь с интернетом. Таким образом, была установлена причина нестабильности: драйвер Wi-Fi-карточки. Поиски решения привели сначала на форум русскоязычного сообщества Ubuntu, а затем к следующему HowTo
Решение проблемы сводится к замене встроенного драйвера беспроводной карты на драйвер для Windows, установленный с помощью ndiswrapper - обёртки для драйвера позволяющего запускать его в Linux.
Процедура достаточно проста и занимает несколько минут
Для начала нужно скачать исходники ndiswrapper: http://sourceforge.net/project/showfiles.php?group_id=93482
Затем драйвер карты

wget http://blakecmartin.googlepages.com/ar5007eg-32-0.2.tar.gz

Теперь нужно распаковать скачанные архивы


tar xvf ar5007eg-*.tar.gz
tar xvf ndiswrapper-*.tar.gz


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

sudo aptitude update && sudo aptitude install linux-headers-$(uname -r) build-essential

Внесём в черный список модуль ядра ath_pci (он нам больше не понадобится)

echo "blacklist ath_pci" | sudo tee -a /etc/modprobe.d/blacklist

Компилируем ndiswrapper

pushd ndiswrapper-*/
sudo make uninstall
make
sudo make install
popd

Устанавливаем драйвер для Windows

pushd */ar5007eg/
sudo ndiswrapper -i net5211.inf
popd

Добавляем ndiswrapper в список обязательной загрузки

sudo modprobe ndiswrapper
echo "ndiswrapper" | sudo tee -a /etc/modules

Перезагружаем компьютер.
Последующее нагруженное тестирование показало превосходную работу драйвера. Проблема была устранена. :)