суббота, 19 февраля 2011 г.

XPRA - "screen" для X-клиентов

xpra, или X Persistent Remote Applications - это приложение, которое позволит подключаться к запускаемым с его использованием X-клиентам (графическим программам) удаленно или локально, не опасаясь обрыва связи или смерти X-сервера. Эдакий “screen” для графических приложений, который и правда чем-то напоминает обычный screen для терминала.

Итак, как это работает?
  1. Устанавливаем xpra. (свежие ебилды, репозитории со свежачком)
  2. Запускаем xpra на каком-либо свободном дисплее:
    xpra start :1
    xpra list - показывает активные дисплеи xpra
  3. Запускаем наше приложение:
    DISPLAY=:1 someguiapp
  4. Идем на удаленную машину... запускаем ssh с X-forwarding:
    ssh -X username@hostname
  5. Делаем xpra attach:
    xpra attach
  6. Видим свое приложение и работаем с ним.
После этого можно повторять шаги 4-6 с любой машины (включая ту, на которой мы запустили xpra, правда для этого не нужно никуда подключаться по ssh).


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

пятница, 18 февраля 2011 г.

Узнать время в другом часовом поясе

Кросспост с ЛинСовет

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

$ date
Fri Feb 18 10:22:53 EET 2011
 
$ TZ="America/Chicago" date 
Fri Feb 18 02:22:53 CST 2011
Узнать название зоны поточнее всегда можно в каталоге /usr/share/zoneinfo.

четверг, 10 февраля 2011 г.

Немного "бенчмарков"

Как-то недавно я задался желанием купить свежий быстрый процессор от Intel и в преддверии этого искал и читал кучу бенчмарков. Появилось и желание проделать свой собственный, но так как мы, линуксоиды, не владеем кучей стандартных бенчмарков я вспомнил, как быстро компилилось 2.6.9 на одном из серверов, когда хотелось проверить стабильность системы. Так что я решил взять одну и ту же версию ядра и собрать ее с make allmodconfig на самых разных системах.
И вот что получилось:

https://spreadsheets.google.com/ccc?key=0AprkJoujHYK8dERmZF9aLTI4SFhTWjBWd2J5LWlTVEE&hl=en#gid=0

Выводов пока немного. :)
1. Благодаря наличию в i7 2600 технологии HyperThreading мне удалось протестировать процессор и с ней и без нее. Разница в убывании времени компиляции довольно значительна - около 20%, что, безусловно, совсем не мало, так что, пожалуй, если вы часто собираете ядро, вам Hyperthreading пригодится.
2. Чем "боянистее" процессор, тем он медленнее. Это хорошо заметно по убыванию времени компиляции по сравнению с временем выхода процессоров в свет. Вплоть до 20 раз между 2003 и 2011 годом :). Также можно найти тест одного из товарищей на мобильном i7 720QM, который даже на меньших частотах обгоняет старенький XP 2200+ не в ожидаемые 4-8 раз (по числу ядер и потоков), а в целых 10.
3. Частота процессора и шин может влиять на время компиляции значительно. Это стало ясно после разгона XP2200+ с 1800 до 2025 МГц по шине (с 133 до 150 Мгц), а именно на 12%, отчего время компиляции снизилось на целых полчаса (~16%). Частота памяти же тут ничем не влияла, хотя и была попытка переключать DDR266 в DDR400, благо такая возможность была в чипсете nForce2). Но, несмотря на это, разогнанный до 4.2 ГГц Core i7 не дал лучших результатов, возможно, пропускной способности одноканальной памяти не хватило.
4. В разных ядрах/компиляторах результаты разные. Так получилось, что тест на T7250 проводился сначала в Funtoo (64-битный), а потом с Live CD Ubuntu 10.04 (32 бита), просто из интереса, дает ли прирост 64-битная архитектура при компиляции ядер. Так как результат оказался в 5 минут в пользу 32-битной системы было заподозрено неладное - и 64-битный LiveCD Ubuntu 10.04 тоже оказался быстрее на те же 5 минут.
5. Не всегда больше ядер - быстрее сборка. :) Opteron 8220 при вдвое меньшем числе ядер серьезно обставил 4 Xeon E7340 (хотя, ну может быть, дело в RT-ядре на последнем). Влияет "качество" ядер и частоты.

Немного справки:
Ядро было 2.6.36.3.
Компилировалось тестируемой архитектурой под нее же.
Конфигурация ядра получалась командой make allmodconfig
Памяти было достаточно чтобы пренебречь дисковыми тормозами.
Каждый тест проводился после чистой распаковки ядерного тарболла.
Учитывалось только время компиляции.

Если кому-то захотелось тоже прогнать компиляцию и поделиться результатом, скрипт примерно такой:
#!/bin/bash

KERNEL_TAR=kernel.tar.gz
KERNEL_URL=http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.36.3.tar.bz2
KERNEL_DIR="linux-2.6.36.3"

CPU_CNT=`grep -c processor /proc/cpuinfo`
# Here you can change number of jobs
JOBS=$CPU_CNT 
#JOBS=$(( $CPU_CNT * 2 )) 
echo "Running test usung $CPU_CNT processors and $JOBS jobs"

if [ ! -e "$KERNEL_TAR" ] ; then
    wget "$KERNEL_URL" -O"$KERNEL_TAR"
fi

if [ -e "$KERNEL_DIR" ] ; then
    rm -rf "$KERNEL_DIR"
fi

tar xf "$KERNEL_TAR" && cd $KERNEL_DIR && 
make allmodconfig &&
time (make -j "$JOBS" > ../build.log 2>&1) 
if [ $? -eq 0 ] ; then  
 cd .. &&
 rm -rf "$KERNEL_DIR" 
 echo Include this data to report too: 
 gcc --version
 uname -a
 grep "model name" /proc/cpuinfo | head -1
 echo $CPU_CNT threads
else  
 cd ..
 echo build failed. You can look into build.log to find cause.
fi


Требуется наличие подключения к интернету, около 4 ГБ свободного места на диске, make, компилятор и другие программы для сборки ядра.

И если решите запускать через sh "xxxx.sh", убедитесь, что ваш /bin/sh - bash, иначе результаты time будут отличаться от тех, которые публикую я.

суббота, 25 декабря 2010 г.

StumbleUpon

Пользуюсь этим сервисом уже месяца три и очень доволен. По-моему, он достаточно безвреден и хорош.

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

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


И да, никто меня не заставлял это писать. Просто вставляет...

вторник, 21 декабря 2010 г.

Про одаренных детей

Часто в душе, под мощными струями воды приходят странные озарения. Вот так и сейчас вдруг выстрелило.

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

суббота, 27 ноября 2010 г.

Про социальные сети

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

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

среда, 20 октября 2010 г.