<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Insight IT &#187; Linux</title>
	<atom:link href="http://www.insight-it.ru/category/unix-way/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.insight-it.ru</link>
	<description>Информационные технологии</description>
	<lastBuildDate>Tue, 31 Jan 2012 09:34:08 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Google Chrome</title>
		<link>http://www.insight-it.ru/unix-way/linux/google-chrome/</link>
		<comments>http://www.insight-it.ru/unix-way/linux/google-chrome/#comments</comments>
		<pubDate>Fri, 05 Sep 2008 21:36:49 +0000</pubDate>
		<dc:creator>Иван Блинков</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Chrome]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Google Chrome]]></category>
		<category><![CDATA[online]]></category>
		<category><![CDATA[браузер]]></category>

		<guid isPermaLink="false">http://www.insight-it.ru/?p=90</guid>
		<description><![CDATA[Наверное многие из вас уже успели за последние пару дней стать свидетелями всей этой шумихи на просторах Сети, связанной с выходом Google на рынок браузеров. Сопутствующие релизу комиксы произвели на меня вполне положительное впечатление, благодаря достаточно большой актуальности поднятых в них проблем и интересным вариантам их решений. Так что я определенно решил, что поглядеть что [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/wp-content/uploads/google-chrome.png" title="Google Chrome" alt="Google Chrome" style="float:right;margin:64px 16px;" /><br />
Наверное многие из вас уже успели за последние пару дней стать свидетелями всей этой шумихи на просторах Сети, связанной с выходом Google на рынок браузеров. Сопутствующие релизу <a href="http://www.google.com/googlebooks/chrome/#" target="_blank" rel="nofollow">комиксы</a> произвели на меня вполне положительное впечатление, благодаря достаточно большой актуальности поднятых в них проблем и интересным вариантам их решений. Так что я определенно решил, что поглядеть что за зверь такой &#8212; <strong>Google Chrome</strong>, определенно стоит, а что из этого вышло я и хотел бы тут рассказать, так что очередную рекламу нового продукта или какие-либо практически полезные советы у Вас врядли получится здесь обнаружить.<br />
<span id="more-90"></span><br />
Первым делом я посетил <a href="http://www.google.com/chrome" target="_blank" rel="nofollow">официальную страничку браузера</a> и практически сразу немного разочаровался, увидев в заголовке надпись <strong>Google Chrome (BETA) for W****ws</strong>. Сразу напросился вопрос: а где версия для <strong><em>Linux</em></strong>? Покопавшись в соседних страничках ничего подобного обнаружить не удалось &#8212; пришлось пожать плечами с мыслью &#171;наверное еще не сделали&#187;.</p>
<p>Зато через какое-то время наткнувшись на очередную заметку про все ту же довольно избитую тему, я заметил ма-а-аленькую неприметную <a href="http://dev.chromium.org/developers/how-tos/build-instructions-linux" target="_blank" rel="nofollow">ссылку</a> на &#171;инструкцию по компиляции Google Chrome из исходников в Linux&#187;. В очередной раз пожав плечами с мыслью &#171;а нам не привыкать, все равно Gentoo пользуюсь&#187; отправился вводить заветное заклинание в свежесозданную консольку.</p>
<p>Заклинание это выглядит примерно следующим образом:</p>
<pre lang="bash">
#!/bin/bash
CHROME=/usr/local/src
mkdir $CHROME/chrome
cd $CHROME/chrome
export LANG=C
$CHROME/depot_tools/gclient config http://src.chromium.org/svn/trunk/src
$CHROME/depot_tools/gclient sync
cd $CHROME/src/chrome
../third_party/scons/scons.py Hammer
</pre>
<p>Для успешного каста требуются следующие ингридиенты:</p>
<ul>
<li>subversion &gt;= 1.4</li>
<li>pkg-config &gt;= 0.20</li>
<li>python &gt;= 2.4</li>
<li>perl &gt;= 5.x</li>
<li>gcc/g++ &gt;= 4.2</li>
<li>bison &gt;= 2.3</li>
<li>flex &gt;= 2.5.34</li>
<li>gperf &gt;= 3.0.3</li>
<li>libnss3-dev &gt;= 3.12</li>
</ul>
<p>Начался процесс вполне оптимистично &#8212; строчки, генерируемые <strong>svn co</strong> побежали по экрану вполне весело, но когда этот процесс затянулся на более чем час &ndash; стало очевидно, что даже <em>Google</em> оказалось не по зубам выдержать такой наплыв желающх &#171;заценить&#187; новую игрушку и обеспечить достаточную пропускную способность на сервере с SVN. Правда и масштабы проекта мягко говоря впечатляют &#8212; директория с исходным кодом перед инициализацией компиляции оказалось очень даже весомой: <strong>2.6 GB</strong>. В общем в итоге я не придумал ничего лучше, чем по старой традиции оставить браузер компилироваться на ночь и с чистой совестью уползти спать.</p>
<p>В итоге оказалось, что в результате получается не вовсе браузер, а лишь некоторые непонятно зачем нужные бинарники: надо было внимательно читать инструкцию, особенно обведенный в красную рамку блок &#8212; студенческая привычка при чтении чего-либо подсознательно отфильтровывать всю на первый взгляд второстепенную информацию, попадающую в категорию &#171;слишком много букв&#187;, дала о себе знать <img src='http://www.insight-it.ru/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  В общем там об этом все заранее предупреждали &#8212; я просто не заметил, ну да ладно: в wine-то оно точно заведется, все тот же Google с легкостью помог обнаружить соответствующий мануал, для моего Gentoo он свелся к следующему:</p>
<pre lang="bash">
#!/bin/bash
emerge --sync; emerge -av wine cabextract
cd /usr/bin
sudo wget www.kegel.com/wine/winetricks
sudo chmod +x winetricks
winetricks riched20 riched30 flash allfonts
cd ~
wget gpdl.google.com/chrome/install/149.27/chrome_installer.exe
wine chrome_installer.exe
rm chrome_installer.exe
</pre>
<p>Запуск с ходу из инсталлятора ничем хорошим не закончилcя, но вот такая команда вполне нормально запустила-таки браузер</p>
<pre lang="bash">
wine ~/.wine/drive_c/windows/profiles/m11/Local Settings/Application Data/Google/Chrome/Application/chrome.exe--new-http --in-process-plugins
</pre>
<p><em>(если кто соберется копипастить &#8212; не забываем подменять m11 на свое имя пользователя)</em></p>
<p>Первое впечатление &#8212; ужасный V**ta-like дизайн, вернее не то чтобы он совсем ужасный &#8212; минималистичность очень даже полезное свойство для дизайна браузера, но в мое KDE 3.5.9 темно-фиолетовой раскраски он не вписывается ну совсем никак. Ну да ладно &#8212; пока он стоит &#171;просто побаловаться&#187;, то можно и потерпеть. Далее я решил пройтись по основным &#171;фишечкам&#187;, заинтересовавшим меня в комиксах &#8212; все реализовано вполне &#171;как обещали&#187;, очень много концептуально правильных решений, которых в старом-добром FF определенно не хватает (перечислять наверное смысла нет &#8212; все и так уже, наверное, в курсе что там есть &#171;вкусненького&#187;). Но и многих абсолютно жизненно-важных вещей я там не обнаружил &#8212; начиная с блокировки рекламы и заканчивая все тем же стандартно-фиксированным дизайном и отсутствием центрального репозитория плагинов. Кое-какие неприятности можно свалить на все еще не окончательную доведенность до ума wine (проблемы с SSL/TSL, скажем), но на них я смело закрывал глаза &#8212; пока не будет полноценной Linux-версии о регулярном использовании данного продукта речи быть просто не может. Скорость работы новинки также произвела впечатление &#8212; на его фоне даже FF чисто субъективно показался медлительным (не смотря на все огрехи wine, как оно будет выглядить в native-версии &#8212; предсказать сложно).</p>
<p>Меню настроек оказалось вполне стандартным &#8212; ничего лишнего, лишь самые необходимые вещи, даже ребенок разберется. Хотя сложно на самом деле сказать плюс это или минус: если вдруг взбредет в голову потюнить что-либо более специфическое, могут возникнуть проблемы, хотя впринципе возможно там всетаки предусмотренно какое-то более расширенное меню настроек, по аналогии с about:config в FF, а я его просто не нашел.</p>
<p>Вдоволь наигравшись, я смело закрыл окошко браузера, с твердой уверенностью, что когда-нибудь потом обязательно заморочусь и с установкой и (возможно) эксплуатацией полноценной native Linux версии, когда граждане из Google соизволят-таки довести ее до работоспособного состояния &#8212; к тому времени глядишь и ситуацию с плагинами и темами исправят. Вот такая вот бестолковая история, спасибо, что дочитали до конца <img src='http://www.insight-it.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>P.S.: А вот <a href="/feed" target="_blank">тут есть RSS</a>, если вдруг кто еще не в курсе.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.insight-it.ru/unix-way/linux/google-chrome/feed/</wfw:commentRss>
		<slash:comments>31</slash:comments>
		</item>
		<item>
		<title>Архитектура LiveJournal</title>
		<link>http://www.insight-it.ru/unix-way/linux/arkhitektura-livejournal/</link>
		<comments>http://www.insight-it.ru/unix-way/linux/arkhitektura-livejournal/#comments</comments>
		<pubDate>Wed, 09 Apr 2008 21:24:04 +0000</pubDate>
		<dc:creator>Иван Блинков</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Масштабируемость]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[djabberd]]></category>
		<category><![CDATA[gearman]]></category>
		<category><![CDATA[Memcached]]></category>
		<category><![CDATA[MogileFS]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[Perlbal]]></category>
		<category><![CDATA[TheShwartz]]></category>
		<category><![CDATA[архитектура]]></category>
		<category><![CDATA[архитектура LiveJournal]]></category>

		<guid isPermaLink="false">http://www.insight-it.ru/net/scalability/arkhitektura-livejournal/</guid>
		<description><![CDATA[LiveJournal был одним из первых сервисов, бесплатно предоставляющих всем желающим личный блог. Практически с самого начала своего существования в далеком 1999 году проект столкнулся с непрерывно растущим потоком желающих воспользоваться услугами сервиса. Как же проекту удалось справиться с предоставлением маленького кусочка интернета каждому желающему, обойдя при этом всех конкурентов? Источники информации Возможно Вы ожидали увидеть [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.livejournal.com" target="_blank" rel="nofollow">LiveJournal</a> был одним из первых сервисов, бесплатно предоставляющих всем желающим личный блог. Практически с самого начала своего существования в далеком 1999 году проект столкнулся с непрерывно растущим потоком желающих воспользоваться услугами сервиса. Как же проекту удалось справиться с предоставлением маленького кусочка интернета каждому желающему, обойдя при этом всех конкурентов?<br />
<span id="more-64"></span></p>
<h3>Источники информации</h3>
<p><em>Возможно Вы ожидали увидеть здесь очередной перевод статьи с английского, но тогда придется Вас разочаровать, на этот раз я решил попробовать свои силы в самостоятельном написании статьи на такую серьезную тему. Просьба особо сильно помидорами в меня не кидаться <img src='http://www.insight-it.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </em></p>
<p>Основным источником информации послужила <a target="_blank" rel="nofollow" href="http://video.google.com/videoplay?docid=-8953828243232338732">презентация Brad Fitzpatrick</a> в Токио.</p>
<h3>Платформа</h3>
<ul>
<li><a href="/tag/linux" target="_blank">Linux</a> (<a href="/tag/debian" target="_blank">Debian Sarge</a>)</li>
<li><a href="/tag/perl" target="_blank">Perl</a></li>
<li><a href="/tag/apache" target="_blank">Apache</a></li>
<li><a href="/tag/mysql" target="_blank">MySQL</a> 4.0/4.1 в основном с InnoDB</li>
<li><a href="/tag/perlbal" target="_blank">Perlbal</a>, веб-сервер и балансировщик нагрузки</li>
<li><a href="/tag/memcached" target="_blank">memcached</a> для распределенного кэширования</li>
<li><a href="/tag/mogilefs" target="_blank">MogileFS</a>, распределенная файловая система</li>
<li><a href="/tag/gearman" target="_blank">Gearman</a></li>
<li><a href="/tag/theshwartz" target="_blank">TheShwartz</a></li>
<li><a href="/tag/djabberd" target="_blank">djabberd</a></li>
</ul>
<div style="float: left; margin: 12px;">
<script type="text/javascript"><!--
google_ad_client = "pub-4223450581209002";
/* inline, 468x60, created 11/04/08 */
google_ad_slot = "6487924823";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script><br />
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</div>
<h3>Статистика</h3>
<ul>
<li>на данный момент 15320315 учетных записей; <em>(10.04.08)</em></li>
<li>из них активно используется 551589;</li>
<li>наиболее активно сервис используется в США и Российской федерации, а 2/3 пользователей &#8212; девушки и женщины;</li>
<li>более 15 миллионов новых записей в блогах за месяц;</li>
<li>более 50 миллионов просмотров страниц в день, при пиковой нагрузке &#8212; несколько тысяч в секунду <em>(сильно устаревшие цифры, 2004 год);</em></li>
<li>связь с внешним миром осуществляется через два BIG-IP (активный + в режиме ожидания) с автоматическим восстановлением работоспособности в случае сбоя в работе одного из них, защитой от DDoS, L7 набором правил, включая TCL;</li>
<li>более сотни серверов, насчет конфигурации известен только тот факт, что практически на каждом сервере установлены огромные объемы оперативной памяти (более 12 GB) для эффективного кэширования.</li>
</ul>
<h3>История</h3>
<ul>
<li>Все началось с одного обычного сервера. Он выполнял роль как веб-сервера так и базы данных. Единственный плюс такого подхода к организации работы оборудования &#8212; достаточно дешево. Само собой достаточно скоро этот сервер перестал справляться с нагрузкой.</li>
<li>Следующим шагом было разнесение веб-сервера и базы данных на разные серверы, всего их получилось два. По прежнему имелось два узла, сбой в которых означал недоступность сервиса. По прежнему вычислительная мощность такой системы оставалась более чем скромной.</li>
<li>Первым из тех двух серверов, как ни странно, перестал справляться с нагрузкой веб-сервер &#8212; докупили еще два. Веб-сервера три, внешний IP &#8212; один, теперь приходится как-то распределять нагрузку! А как добавить еще одну базу данных?</li>
<li>Новый сервер баз данных был подключен в роли slave к исходному, данные в нем обновлялись с помощью репликации, а обрабатывал он только операции чтения, оставив все операции записи первому серверу.</li>
<li>Есть предположения о том, к чему привело дальнейшее добавление новых серверов? Правильно &#8212; к полнейшему хаосу! Со временем стала возникать проблема масштабируемости баз данных. Операции чтения производились на каком-то одном сервере, но когда приходил запрос на запись данных, так или иначе данные приходилось производить обновление на каждом из slave серверов. В итоге выполнение синхронизации данных стало занимать подавляющее большинство процессорного времени slave серверов, что привело к отсутствию возможности продолжать масштабирование просто добавлением дополнительных серверов.</li>
<li>Пришло время задуматься над архитектурой системы и распределением операций записи. Основной целью стало избавиться от такой серьезной избыточности данных, так как это было практически пустой тратой времени копировать одни и те же данные на десяток машин, да еще и с RAID на каждой из них.</li>
<li>Наиболее эффективным подходом в такой ситуации является сегментирование базы данных. Все серверы баз данных разбиваются на небольшие кластеры. Каждый пользователь системы прозрачно привязывается к определенному кластеру, таким образом когда он обновляет свой блог или какие-либо еще данные, запись ведется в рамках только небольшой группы серверов, такой же принцип справедлив и для чтения.
<p>Применительно к LiveJournal эту схему лучше всего демонстрирует один из слайдов презентации, указанной в источниках информации:<br />
<a href="/wp-content/uploads/LJ-scheme.jpg" target="_blank"><img src="/wp-content/uploads/LJ-scheme-s.jpg" alt="Сегментирование базы данных в Livejournal" title="Механизм работы сегментированной базы данных в LiveJournal" /></a></p>
<p>При работе такой системы не используется auto_increment в <a href="/tag/mysql" target="_blank">MySQL</a>, а также используется составной primary key из номера пользователя и номера записи. Таким образом пространство имен объектов разбито на группы, соответствующие конкретному пользователю.</li>
<li>Дальнейшим развитием решения проблемы излишней избыточности данных может послужить отказ от кластеров, аналогичных по структуре исходному для хранения сегментов базы данных. Это может быть как вариант с общим на несколько серверов хранилищем данных, так и более низкоуровневая репликация данных средствами <abbr title="Distributed Replicated Block Device">DRBD</abbr> в совокупности с HeartBeat. Каждый из возможных вариантов кластеризации MySQL имеет массу положительных и отрицательных сторон, так что конкретного лидера среди них выделить достаточно сложно. Возможно именно это и подтолкнуло разработчиков построить собственное решение, комбинируя их с целью получения наилучшего эффекта.</li>
</ul>
<h3>Программное обеспечение</h3>
<p>В ситуации, когда не удавалось найти готового программного решения для какой-то конкретной задачи, они не боялись взяться за написание его самостоятельно, это стало одним из основных компонентов успеха проекта. Существенная часть программной платформы LiveJournal написана специально для этого проекта и выпущено под свободной лицензией с открытым исходным кодом, доступным в <a href="http://code.sixapart.com/" target="_blank" rel="nofollow">официальном SVN репозитории</a>.</p>
<h4>memcached</h4>
<p>Залогом быстрой загрузки любой страницы крупного интернет-проекта является кэширование. Но как всегда возникает вопрос: а на каком уровне обработки данных его стоит выполнять? Для динамических страниц недопустимо кэширование на уровне готовых страниц. Можно кэшировать на уровне mod_perl, но по сути это пустая трата оперативной памяти, так как создастся отдельный кэш для каждого потока <a href="/tag/apache" target="_blank">Apache</a>, и количество промахов мимо кэша будет огромно. Кэширование запросов MySQL или HEAP таблицы также не дали бы требуемого результата ввиду чрезвычайной распределенности базы данных.</p>
<p>Выходом из сложившейся ситуации стало написание собственной распределенной системы кэширования объектов, получившей название <a href="/tag/memcached" target="_blank">memcached</a>. Она позволяет:</p>
<ul>
<li>использовать для кэширования свободную оперативную память практически любого компьютера, задействованного в системе;</li>
<li>кэшировать объекты практически любого языка программирования в сериализованном виде: <a href="/tag/perl" target="_blank">Perl</a>, <a href="/tag/php" target="_blank">PHP</a>, <a href="/tag/java" target="_blank">Java</a>, <a href="/tag/c" target="_blank">C++</a> и так далее;</li>
<li>использовать для передачи кэшируемых данных простой протокол, не требующий избыточности данных;</li>
<li>избегать даже теоретической возможности полного сбоя работы кэшируещей системы в связи с полной равнозначностью серверов;</li>
<li>достигать превосходной производительности при формировании HTML-кода страниц;</li>
<li>в разы снизить нагрузку на базы данных в проекте любого масштаба.</li>
</ul>
<p>Этот продукт на практике оказался более чем эффективен, о чем свидетельствует его более чем успешное использование во многих крупнейших веб-проектах.</p>
<h4>Perlbal</h4>
<p>При решении вопроса, связанного с балансировкой нагрузки между веб-серверами, пришлось перепробовать далеко не один десяток готовых решений, но, к сожалению, ни один из них не смог удовлетворить все потребности проекта. Не растерявшись, разработчики написали свое решение этой задачи и назвали его <a href="/tag/perlbal" target="_blank">Perlbal</a>. Конкурентов у него множество, начиная от решений на уровне оборудования, например от Foundry, заканчивая proxy балансировщиками нагрузки встроенные в более популярные веб-сервера, но, тем не менее, продукт получился достаточно конкурентноспособным. Он удовлетворял всем требованиям, выдвигаемым разработчиками проекта:</p>
<ul>
<li>быстрый;</li>
<li>небольшой размер;</li>
<li>&#171;сообразительный&#187;;</li>
<li>обработка &#171;мертвых&#187; узлов;</li>
<li>может выступать как в роли reverse proxy, так и балансировщика нагрузки;</li>
<li>базовый функционал классического веб-сервера;</li>
<li>реализация внутреннего перенаправления данных;</li>
<li>поддержка некоторых менее существенных трюков, реализованных обычно в виде plug-in&#8217;ов.</li>
</ul>
<p><a href="/tag/perlbal" target="_blank">Perlbal</a> не так активно используется вне LiveJournal, по сравнению с <a href="/tag/memcached" target="_blank">memcached</a>, но для решения конкретной задачи он подошел как нельзя лучше.</p>
<h4>MogileFS</h4>
<p>Идея распределенных файловых систем далеко не нова, достаточно вспомнить лишь <a href="/tag/gfs" target="_blank">GFS</a> или любой ее opensource аналог. Сам факт создания такой системы был очень легок, изначальная версия была написана за одни выходные, но при доведении ее до требуемого уровня качества пришлось попотеть. Решение о ее создании было развитием идеи распределения операций записи. Общая принцип хранения файлов прост: каждый файл в ФС относится к определенному классу файлов, который определяет все правила работы с файлом, в основном механизм его реплицирования, об остальном заботится сама система.</p>
<p>Как и все файловые системы этого класса, <acronym title="oMgFileS">MogileFS</acronym> работает на уровне пользовательских приложений и использует достаточно тривиальные протокол передачи данных и общую архитектуру: клиенты, управляющие серверы, абстрактные базы данных, сервера для хранения самих данных &#8212; в этом плане ничего нового придумано не было. Доступ к файлам осуществляется с помощью HTTP-запросов PUT/GET либо через виртуальный NFS-раздел. Единственной особенностью можно назвать уклон в построение собой абстрактной прослойки между приложением и собственно кластером базы данных (в случае LiveJournal &#8212; сегмента), используемой в роли альтернативы более тривиальной master/slave схемы.</p>
<h4>Gearman</h4>
<p><acronym title="manaGer">Gearman</acronym> по сути прост до безобразия, но это не мешает ему быть чрезвычайно эффективным. Возможно Вы уже догадались в чем суть этого еще одного продукта, написанного специально для LJ, если уже навели курсор на акроним в начале этого абзаца, если же нет &#8212; поясню: он управляет общей работой системы средствами клиент-серверной архитектуры и высокопроизводительного бинарного протокола. С их помощью он способен удаленно вызывать практически любые процедуры на удаленных серверах с минимальными задержками во времени. Казалось бы ничего особенного он сам по себе не делает, но на самом деле он выполняет очень важную функцию: увеличивает степень параллельности выполнения операций, необходимых для полноценного функционирования проекта. Единственное <strong>но</strong> в работе этого механизма заключается в том, что он не предоставляет никаких гарантий успешности выполнения работ.</p>
<p>В рамках LiveJournal <acronym title="manaGer">Gearman</acronym> применяется в основном для:</p>
<ul>
<li>обработка изображений средствами Image::Magick вне perl-приложений;</li>
<li>создание pool&#8217;а DBI соединений (DBD::Gofer + Gearman);</li>
<li>уменьшением нагрузки, создаваемой отдельными компонентами системы;</li>
<li>улучшения субъективного впечатления пользователей о быстродействии сервиса, благодаря выполнению части работ параллельно в фоновом режиме;</li>
<li>выполнение блокирующего ресурсы кода отдельно от обработчиков различных событий.</li>
</ul>
<h4>TheShwartz</h4>
<p>В качестве альтернативы gearman&#8217;у для работ, для выполнения которых необходимы некоторые гарантии успешности, а также некоторая стабильность, была разработана эта библиотека. Общая схема работы осталась та же: клиент-серверная, но за стабильность приходится платить &#8212; производительность существенно ниже, возможно возникновение задержек.</p>
<p>Хоть эти два продукта и выполняют схожие функции, используются они обычно в совокупности друг с другом, просто-напросто обрабатывая разные типы работ.</p>
<p>Основными сферами применения TheShwartz в LJ являются:</p>
<ul>
<li>отправка электронной почты (SMTP клиент);</li>
<li>LJ Notifications: каждое событие может вызывать за собой цепочку из тысяч уведомлений по электронной почте, SMS, XMPP и так далее;</li>
<li>отправка RPC сообщений внешним сервисам;</li>
<li>внедрение Atom потоков;</li>
</ul>
<h4>djabberd</h4>
<p>Как всегда следуя принципу &#171;чем проще &#8212; тем лучше&#187;, разработки LJ написали этот крошечный daemon, лежащий в основе их Jabber/LJTalk. Он способен спокойно работать с более чем 300 тысячами соединений, используя очень скромное количество оперативной памяти для поддержания каждого соединения.</p>
<p>Основной причиной для написания собственного Jabber-сервера, стало недостаточная расширяемость и масштабируемость существующих решений. Была необходимость в реализации многих нестандартных функций, вроде индивидуальных обработчиков пользовательских изображений и личных данных, обычно в других решениях было доступно только изменение методов аутентификации.</p>
<h3>Подводим итоги</h3>
<ul>
<li>Если перед Вами появилась нетривиальная задача &#8212; не бойтесь написать программное обеспечение для ее решения самостоятельно! Пускай, возможно, это потребует некторых дополнительных усилий, но масса преимуществ, связанных с полным соответствием требованиям конкретного проекта, превосходит все издержки дополнительной разработки.</li>
<li>Невозможно масштабировать проект просто постоянно добавляя новые сервера, рано или поздно все же прийдется задуматься об его архитектуре;</li>
<li>Распределение нагрузок и параллельное операций порой заслуживают того, чтобы разработчики обратили на них внимание;</li>
<li>&#171;Мы ненавидим изобретать колесо! Но тем не менее, если колесо не существует или оно квадратное, то мы не боимся изобретать круглое колесо.&#187; (с)</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.insight-it.ru/unix-way/linux/arkhitektura-livejournal/feed/</wfw:commentRss>
		<slash:comments>32</slash:comments>
		</item>
		<item>
		<title>Первые впечатления от релиза KDE 4</title>
		<link>http://www.insight-it.ru/unix-way/linux/pervye-vpechatleniya-ot-reliza-kde-4/</link>
		<comments>http://www.insight-it.ru/unix-way/linux/pervye-vpechatleniya-ot-reliza-kde-4/#comments</comments>
		<pubDate>Thu, 24 Jan 2008 16:17:01 +0000</pubDate>
		<dc:creator>Иван Блинков</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[KDE]]></category>
		<category><![CDATA[kde 4]]></category>
		<category><![CDATA[kde4]]></category>
		<category><![CDATA[впечатления]]></category>

		<guid isPermaLink="false">http://www.insight-it.ru/unix-way/linux/pervye-vpechatleniya-ot-reliza-kde-4/</guid>
		<description><![CDATA[Вчера вечером, решив провести очередное обновление программного обеспечения, я обнаружил в списке замаскированных пакетов внушительное количество заветных цифр 4.0.0. Не долго думая все эти пакеты были отправлены в комментарии с целью разрешить их установку, а на ночь компьютер был оставлен включенным с указанием к утру предоставить мне рабочую версию KDE 4. И, как ни странно, [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/wp-content/uploads/kde.png" title="K Desktop Environment" alt="KDE Icon" style="margin: 10px; float: right" /></p>
<p>Вчера вечером, решив провести очередное обновление программного обеспечения, я обнаружил в списке <a href="http://gentoo-wiki.com/Masked" target="_blank" rel="nofollow">замаскированных</a> пакетов внушительное количество заветных цифр <em>4.0.0</em>. Не долго думая все эти пакеты были отправлены в комментарии с целью разрешить их установку, а на ночь компьютер был оставлен включенным с указанием к утру предоставить мне рабочую версию <a href="/tag/kde-4" target="_blank">KDE 4</a>. И, как ни странно, с заданием он справился более чем успешно!</p>
<p><span id="more-31"></span></p>
<p>На утро если честно был слегка удивлен. увидев сообщение в консоли о том, что пакет <strong>kde-base/kdebase-meta-4.0.0</strong> установлен успешно. Запустив по привычке <strong>etc-update</strong> и сделав на всякий случай backup настроек третьего <a href="/tag/kde" target="_blank">KDE</a>, я приступил к запуску свежеустановленного рабочего окружения.</p>
<p>Процесс оказался простым до безобразия, достаточно было лишь сменить тип сессии в <strong>kdm</strong>, и рабочее окружение успешно загрузилось. Представшее передо мной зрелище меня ничуть не удивило &#8212; мне уже доводилось собирать beta-версию <a href="/tag/kde-4" target="_blank">KDE 4</a> из SVN, да и screenshot&#8217;ы стандартного рабочего окружения KDE я видел далеко не один раз.</p>
<p>Первым делом я решил запустить Kopete, реально конечно из-за того, что перед завершением сеанса работы с третьим KDE мне кто-то успел написать в ICQ, и меня ждал неоконченный разговор, но посмотреть как он изменился со времен беты тоже хотелось. Попытавшись зайти с его помощью в ICQ, я обнаружил что этого протокола в списке доступных нет, причина нашлась быстро с помощью консоли (которая изменений практически не претерпела) &#8212; <strong>kopete</strong> по-умолчанию был собран без флага <strong>oscar</strong>. Не долго думая, по-быстрому пересобрал клиент, но в ходе указания настроек account&#8217;а он мне заявил, что ему нужен еще и <strong>KWallet</strong> для хранения пароля. Отправив на сборку и его, я решил временно отложить повторное знакомство с <strong>kopete</strong> и запустил <strong>Pidgin</strong>, которым достаточно часто пользуюсь.</p>
<p>После решения вопроса со связью, я отправился на изучения остальных пунктов <strong>KMenu</strong>, ничего принципиально нового я там не нашел, но решил все же заглянуть в пункт под названием <em>System Settings</em> с целью сделать небольшой обзор доступных настроек и оценить потенциал нового рабочего рабочего окружения в плане &#171;доработки напильником&#187;, чем я и планирую в обозримом будущем заняться. Большую часть интересных для меня настроек я нашел прямо в GUI, а если бы не поленился покопаться в конфигурационных файлах &#8212; нашел бы и все остальное.</p>
<p><strong>Plasma</strong> &#8212; по-моему одно из самых существенных изменений в новой версии KDE, в котором невооруженным глазом можно увидеть огромный потенциал для развития пользовательских интерфейсов. Но если сейчас смотреть на эту технологию как обычный пользователь, то можно увидеть во всех эти widget&#8217;ах лишь недоделанность, неудобство и непривычность. В будущем, когда ассортимент и качество &#171;плазмоидов&#187; приумножится, эта технология станет очень гибкой и удобной в повседневном использовании для очень разнообразного спектра задач.</p>
<p>Самым большим недостатком доступной на данный момент версии <a href="/tag/kde" target="_blank">KDE</a>, на мой взгляд, является та самая черная панель внизу экрана, которая используется для размещения любых виджетов наравне с рабочим столом, но имеет один большой недостаток &#8212; практически полное отсутствие каких-либо настроек (за исключением непонятно зачем и кому нужного &#171;Show tooltips&#187;), и как следствие, отсутствие элементарных способов ее переместить или изменить в размерах. Именно из-за этого факта я сейчас и пишу снова из KDE 3.5.8, так как я слишком привык получать доступ ко всем функциям рабочего окружения из верхней части экрана, а переучиваться или искать какие-либо нестандартные решения этой небольшой проблемки на данный момент нет ни времени, ни желания.</p>
<p>По не помню какой причине мне пришлось залезть в файловую систему, сделал я это естественно с помощью <strong>Dolphin</strong>, но сам факт осознал далеко не сразу: настолько привычен и удобен оказался его интерфейс, что мне показалось, что я всю жизнь всегда им пользовался, хотя на самом деле по большому счету увидел его впервые.</p>
<p>В целом новинка произвела по большей части положительные впечатления, обязательно вернусь к ее освоению через какое-то время, когда хотябы существенные недоработки будут тем или иной способом исправлены. Так что пока даже не стал ее удалять, тем более отдельными приложениями можно пользоваться и из KDE 3, что я сейчас с удовольствием и делаю в отношении нового Kopete, который в итоге прекрасно запустился и работает существенно лучше чем многие другие ICQ-клиенты.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.insight-it.ru/unix-way/linux/pervye-vpechatleniya-ot-reliza-kde-4/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Gentoo Linux + Sony Vaio = &#9829;</title>
		<link>http://www.insight-it.ru/unix-way/linux/gentoo-linux-sony-vaio/</link>
		<comments>http://www.insight-it.ru/unix-way/linux/gentoo-linux-sony-vaio/#comments</comments>
		<pubDate>Mon, 21 Jan 2008 22:06:32 +0000</pubDate>
		<dc:creator>Иван Блинков</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[gentoo linux]]></category>
		<category><![CDATA[notebook]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[sony]]></category>
		<category><![CDATA[sony vaio]]></category>
		<category><![CDATA[sony vaio fe41zr]]></category>
		<category><![CDATA[sony vaio vgn-fe41zr]]></category>
		<category><![CDATA[линукс]]></category>
		<category><![CDATA[ноутбук]]></category>
		<category><![CDATA[ОС]]></category>

		<guid isPermaLink="false">http://www.insight-it.ru/unix-way/linux/gentoo-linux-sony-vaio/</guid>
		<description><![CDATA[Gentoo is all about choices Абсолютно не важно, держите ли Вы в руках блестящую болванку с надписью &#171;Прощай, предустановленная Vista!&#187; или только подумываете о том, чтобы избавить свой ноутбук от тяжести этой ноши. Прочитав это повествование, Вы сможете представить себе процесс установки альтернативной операционной системы на ноутбук на примере Gentoo Linux и Sony Vaio. Я [...]]]></description>
			<content:encoded><![CDATA[<blockquote style="margin-left: 200pt"><p>Gentoo is all about choices</p></blockquote>
<p><img src="/wp-content/uploads/gentoo.png" style="float: left" title="Gentoo Linux" alt="Gentoo Linux" /></p>
<p>Абсолютно не важно, держите ли Вы в руках блестящую болванку с надписью <em>&#171;Прощай, предустановленная Vista!&#187;</em> или только подумываете о том, чтобы избавить свой ноутбук от тяжести этой ноши. Прочитав это повествование, Вы сможете представить себе процесс установки альтернативной операционной системы на ноутбук на примере <em><a href="/tag/gentoo" target="_blank">Gentoo</a> <a href="/tag/linux" target="_blank">Linux</a></em> и <em><a href="/tag/sony-vaio" target="_blank">Sony Vaio</a></em>. Я постараюсь освятить все особенности этого процесса, а также по возможности дать советы по избежанию потенциальных проблем. Не надейтесь найти здесь пересказ <a href="http://www.gentoo.org/doc/ru/handbook/index.xml" rel="nofollow" title="Gentoo Hanbook" target="_blank">Gentoo Handook</a>, ее стоит прочитать в любом случае, если Вы на самом деле задумали установить эту очень серьезную <a href="/tag/os" target="_blank">операционную систему</a>.</p>
<p><span id="more-30"></span></p>
<p>Сам я занимался этим делом уже более полугода назад на ноутбуке <strong>Sony Vaio VGN-FE41ZR</strong>, не знаю почему мой выбор в свое время пал именно на эту модель, были доступны и более производительные и &#171;навороченные&#187; &#8212; видимо приглянулась она мне чем-то. Далее речь пойдет именно об этой модели ноутбука, но думаю большая часть написанного далее будет справедлива и для других моделей линейки <a href="/tag/sony-vaio" target="_blank">Sony Vaio</a>. Поначалу процесс установки и настройки был очень непрост, ведь часто приходилось пользоваться методом &#171;проб и ошибок&#187;, да и достойную документацию найти удавалось далеко не по каждому вопросу. Все про все заняло далеко не один мой летний вечер, терпения потребовалось изрядное количество, но полученный в итоге результат до сих пор не дает повода пожалеть о потраченном свободном времени.</p>
<p>Как я уже успел намекнуть во вступлении, начинается все с болванки на которую записан <a href="http://www.gentoo.org/main/ru/where.xml" rel="nofollow" target="_blank">тот самый волшебный образ</a>. Никто не мешает выбрать любой из доступных вариантов, но предположим, что выбор пал на <a href="/tag/gentoo" target="_blank">Gentoo</a> <a href="/tag/linux" target="_blank">Linux</a> LiveCD 2007.0. Загрузка ноутбука с этого диска проходит плавно и непринужденно, ровно как и сама работа с уже загруженным LiveCD как в консоли, так и в используемом там рабочем окружении &#8212; <em>Gnome</em>. Следуя инструкциям из <em>настольной книги</em> начать установку операционной системы очень нетрудно, но если честно у меня прочитав пару раз этот немаленьких размеров текст возникла мысль попытаться сэкономить некоторое количество времени, воспользовавшись услугами двух предложенных автоматических инсталляторов &#8212; с графическим и консольным пользовательским интерфейсом &#8212; не повторяйте этой ошибки, так как качество реализации обоих вариантов на данный момент оставляет желать лучшего, заставить успешно установить систему один из них может занять ничуть не меньше времени, чем ручная установка. Лично мне приручить ни один из автоматических инсталлятора так и не удалось, но как ни странно тоже не пришлось жалеть об этом факте &#8212; как оказалось ручная установка очень качественно позволяет разобраться в структуре <a href="/tag/os" target="_blank">операционной системы</a> вцелом, ровно как и в принципе работы отдельных ее компонентов.</p>
<p>Следовать инструкциям из <em>Книги</em> я думаю у всех должно неплохо получаться, единственное что могу порекомендовать: делайте это неторопясь, стараясь как можно подробнее осознавать что, как и зачем Вы делаете. Здесь же я хочу останавливаться лишь на специфических моментах для этой модели ноутбуков.</p>
<h3>Ядро</h3>
<p>Как известно, для <a href="/tag/gentoo" target="_blank">Gentoo</a> доступно несколько вариантов ядер, в процессе установки мой выбор пал на <strong>suspend2-sources</strong>, но со временем полностью перебрался на <strong>gentoo-sources</strong>, так как я понял, что сами suspend-to-ram и suspend-to-hdd мне абсолютно не нужны, но suspend2 слегка отстают от gentoo по версиям. Тем более, насколько я знаю, в современных версиях основной ветки ядра suspend тоже поддерживается на достойном уровне (но так как мне он не нужен &#8212; пробовать на собственном опыте не доводилось).</p>
<p>Поначалу осознать как именно необходимо настроить ядро довольно непросто, часто забываешь какой-нибудь драйвер или маленькую опцию, сильно влияющую на ту или иную часть системы, или наоборот включаешь множество абсолютно бесполезных компонентов. Вариантов решения этой ситуации есть несколько:</p>
<ul>
<li><em>Просто скопировать ядро с LiveCD.</em> Этот вариант является самым простым в плане реализации, систему с его помощью запустить вполне реально &#8212; пробовал, но в плане производительности ему до идеала о-о-очень далеко.</li>
<li><em>Собрать ядро с помощью <strong>genkernel</strong> и стандартной его конфигурации.</em> Прочитав <strong>man genkernel</strong> это занятие тоже становится простым и привычным. Именно этот вариант я и выбрал в первый раз, слегка подредактировав конфигурационный файл с помощью <strong>––menuconfig</strong> в тех местах, где был точно уверен что это не повлияет на функциональность и положительно повлияет на производительность. Естественно этот вариант тоже годится только на первое время.</li>
<li><em>Ручная сборка классическим способом &#8212; <strong>make</strong>, с использованием конфигурационного файла, взятого с LiveCD</em>. Чисто теоретически возможно, но не могу порекомендовать этот способ, при его реализации возникает существенно больше проблем, до конца решить которые мне так и не удалось в процессе установки, а в последующем как-то не возникало желания возвращаться к ручной сборке ядра, так как привык к <strong>genkernel</strong> &#8212; просто и удобно.</li>
<li><em>Метод &#171;проб и ошибок&#187;.</em> Если есть желание и возможность потратить существенное количество времени на подбор оптимальной конфигурации ядра прямо в процессе установки &#8212; почему бы этим и не заняться?</li>
</ul>
<p>Вне зависимости от выбранного варианта сборки ядра, рано или поздно Вы получите успешно загружающуюся без помощи LiveCD систему (естественно имеется ввиду, что в консоль, о X-ах говорить еще рано), о которой и пойдет речь дальше.</p>
<h3>Сеть</h3>
<p>Первым делом, конечно же появляется желание выползти на просторы Сети, даже скорее не желание, а необходимость, ведь жизнь компьютера без Сети хоть и возможна, но грустна и нелегка.</p>
<p>Как известно, у большинства ноутбуков дорога в Сеть может пролегать по трем маршрутам:</p>
<ul>
<li>Сетевая карта &#8212; Ethernet</li>
<li>Беспроводная сеть &#8212; WiFi</li>
<li>Старый-добрый модем</li>
</ul>
<p>Из всех трех вариантов мне довелось опробовать только первые два, испытать модем в полевых условиях, к сожалению, не удалось в связи с отсутствием как возможности, так и желания.</p>
<h4 style="text-align: right">Ethernet</h4>
<p>Воткнув заветный штекер RJ45 в соответствующий разъем, я с удивлением обнаружил с помощью команды <strong>ifconfig</strong>, что на этом мои телодвижения по получению доступа в Интернет благополучно закончились. Все драйвера оказались на месте, DHCP-клиент без моего вмешательства получил IP-адрес, все необходимые настройки по-умолчанию были выбраны верно &#8212; вобщем в этом плане все отлично.</p>
<p>Конечно далеко не у всех локальная сеть организована таким же образом, как и у меня, возможно придется поизучать man <strong>ifconfig</strong>&#8216;а или повозиться с VPN-соединением.</p>
<h4 style="text-align: right">WiFi</h4>
<p>С беспроводным соединением все прошло далеко не так гладко, как хотелось бы. Первой задачей стояло определение того, какой же драйвер необходим для функционирования соответствующего устройства. Вариантов ответа на этот вопрос в <a href="/net" target="_blank">Сети</a> нашлось множество, но какой именно подошел бы именно к моей модели ноутбука было как минимум не очевидно.</p>
<p>Попробовав несколько вариантов, мне удалось-таки установить беспроводное соединение с помощью драйвера под названием <strong>ipw3945</strong> и сопутствующего ему daemon&#8217;а <strong>ipw3945d</strong>. Подробно весь процесс описывать не буду, я думаю при необходимости подробную инструкцию найти особого труда не составит.</p>
<p>Я еще не упоминал, что в качестве рабочего окружения предпочитаю использовать KDE, как-то с самого начала к нему привык, как внешне так и внутренне он меня более чем устраивает. Не сочтите предыдущее предложение за отступ от темы, я всеголишь хотел как-то объяснить переход к разговору об утилите, предоставляющей GUI к работе с беспроводными соединениями, &#8212; <strong>KWifiManager</strong>. Утилитка достаточно своеобразная, манера ее поведения поначалу сильно удивляла, но со временем привыкаешь. Особенно странно она производит выбор беспроводной сети, к которой подключаться. Не смотря на установленную в настройках мою домашнюю сеть, как сеть по-умолчанию, она все равно частенько пытается залезть к соседям или еще куда. И что самое интересное &#8212; вернуть ее на <em>путь истинный</em> ее же средствами мне обычно так и не удается. Из-за этого пришлось написать bash-скрипт, который помогает укратить эту утилиту. Включать в текст записи его особо желания нету, если кто хочет его заполучить: оставьте соответствующий комментарий &#8212; выложу.</p>
<h3>Альтернатива консоли</h3>
<p>Консоль &#8212; штука конечно полезная, но со временем пользоваться только ей на домашнем компьютере все же надоедает, хочется чего-то большего &#8212; например, компании состоящей из X-сервера, Xorg и какого-либо рабочего окружения (как я уже успел упомянуть &#8212; в его роли я предпочитаю использовать <a href="/tag/kde" target="_blank">KDE</a>, о нем и буду дальше говорить, но Ваш выбор это естественно ни капли не ограничивает).</p>
<p>Проблем как ни странно с этим пунктом нашей программы не возникло никаких &#8212; официальная документация по этому поводу обширна, и чуть ли не гарантированно приводит к положительным результатам. Все прекрасно собирается (правда долговато) и не менее прекрасно работает.</p>
<p>Одно время конечно возникали некоторые трудности, например в одной из версий X-сервера была неприятная недоработка с LED&#8217;ами на клавиатуре &#8212; не было видно нажат ли Caps Lock, или при одной конкретной комбинации программного обеспечения и ядра системы по странному стечению обстоятельств частоиспользуемая клавиша <strong>F2</strong> приводила к сворачиванию X-сервера и возвращению в консоль, что тоже доставляло массу неудобств. На данный же момент все проблемы такого рода решены руками огромного <a href="/tag/opensource" target="_blank">opensource</a>-сообщества и все снова замечательно работает точно также как и полгода назад сразу после установки системы.</p>
<p>Через некоторое время после установки <a href="/tag/kde" target="_blank">KDE</a> мне все же захотелось привести его в более приятный моим глазам внешний вид. Вооружившись любимым графическим редактором под названием <strong>The GIMP</strong> я принялся за дело. В итоге получилось  нечто странное, которое выглядит примерно вот так:</p>
<p><a href="/wp-content/uploads/screenshot-desktop.jpg" target="_blank"><img src="/wp-content/uploads/screenshot-desktop-s.jpg" alt="Screenshot" title="KDE 3.5.8 Screenshot" /></a></p>
<h3>Видео</h3>
<p>Используемый по-умолчанию видеодрайвер <em>vesa</em> оставляет желать лучшего, этот факт заметен сразу же после первой загрузки рабочего окружения, а значит ничего не остается кроме как искать ему замену. Искать долго не придется &#8212; отличный видеодрайвер для присутствующей в внутри этого ноутбука <em>Nvidia GeForce 7600</em> легко доступен через Portage, называется он, как ни странно, <strong>nvidia-drivers</strong>.</p>
<p>Впечатления он оставляет только положительные: легко настраивается, достаточно производительный, поддерживает множество технологий, в том числе пресловутый Composite Extension в Xorg, который необходим для работы большинства (если не всех) трехмерных приложений.</p>
<h3>Аудио</h3>
<p>С ним все еще проще &#8212; достаточно лишь не забыть включить <strong>ALSA</strong> и <strong>Intel HD Audio</strong> в конфигурации ядра.</p>
<p>Качество конечно не идеальное, но для такого класса устройств звук вполне &#171;на уровне&#187;, для просмотра фильмов и негромкого воспроизведения музыки более чем достаточно.</p>
<h3>Bluetooth</h3>
<p>Синий зуб прекрасно чувствует себя под руководством встроенного в ядра драйвера <strong>BlueZ</strong>, с работой в качестве GUI для работы с этим устройством также неплохо справляются KDE&#8217;шные утилиты KBluetooth и компания.</p>
<p>На роль помощника в тестировании и настройке bluetooth&#8217;а я не смог придумать ничего лучше, чем выбрать свой старенький телефон <em>Qtek S200</em>. Передача файлов заработала безукоризненно в обоих направлениях, а вот с использованием телефона в роли GPRS-модема пришлось изрядно повозиться: узнать необходимые настройки соединения на сайте оператора, найти хотябы примерно подходящую документацию по данному вопросу, настроить все как положено. Когда дело дошло до процесса дозвона по указанному номеру, телефон по каким-то причинам отказывался реагировать на запросы компьютера. Попытки понять в чем же причина длились достаточно долго, пока я не наткнулся в интернете на подробное техническое описание своего телефона, где было сказано, что он просто-напросто не поддерживает доступ у своему GPRS-модему через bluetooth-соединение. Узнав об этом факте я решил больше себя не мучать и бросил эту затею, но чисто технически с другим телефоном оно должно было заработать, но на практике проверить руки так до сих пор и не дошли.</p>
<h3>Разные мелочи</h3>
<p>Устав от продолжительной установки и настройки системы, на вещи, которыми я не планировал активно пользоваться, я не тратил много времени, по-этому упомяну их лишь вкратце.</p>
<p>Очень удивил меня тот факт, что для приведения к жизни различных нестандартных кнопок вроде регулировки громкости, S1, S2 и Fn необходима достаточно серьезная &#171;работа напильником&#187;: модули ядра вроде <strong>sonypi</strong> способны оживить их лишь частично, для полного их функционирования возможно придется изрядно покопаться в конфигурационных файлах, а также написать/найти некоторое количество bash-скриптов. Надеюсь в будущем найду в себе силы довести это дело до конца, правда особого дискомфорта от ненастроенных кнопок я не испытываю &#8212; не успел к ним привыкнуть, да и реализованного на уровне оборудования mute sound мне вполне хватает.</p>
<p>Регулировка яркости дисплея работает прекрасно через консоль с помощью утилиты <strong>nvclock</strong>, но какого-либо GUI к ней мне найти не удалось, т.к. особой необходимости в этом не испытываю &#8212; все равно предпочитаю держать экран максимально ярким, лишь в очень редких случаях возникает необходимость его приглушить, но в таких случаях обычно проще бывает нажать <strong>Alt+F2</strong> и набрать необходимую команду.</p>
<p>Встроенная камера заслуживает отдельного разговора. С одной стороны драйвера под нее есть и легко доступны, весь необходимый набор модулей для ядра &#8212; <strong>v4l, gspcav1</strong>, установить абсолютно не проблема. Найдя неплохую статейку в вики я достаточно быстро разобрался с их установкой, но после этого возник вопрос: а зачем оно собственно говоря надо? Как оказалось, камера является абсолютно бесполезным для меня device&#8217;ом, и я даже не придумал никакого адекватного способа проверить ее работоспособность. Так эти драйвера и находятся установленными в системе непонятно зачем.</p>
<p>Порт IEEE 1394 aka FireWire опробовать в действии не удалось, так как я не являюсь обладателем устройств, его использующих, но я не вижу каких-либо причин для того, чтобы он не работал: если мне не изменяет память, то он фигурировал в настройках ядра наравне с USB, который замечательно работает.</p>
<p>Cardreader&#8217;ов в комплекте было два &#8212; один встроенный для MemoryStick, и внешний в 34мм-слот для SD/MMC. Насчет первого не могу ничего сказать, так как карточек таких у меня не нашлось, а второй отлично определился без каких-либо дополнительных действий с моей стороны.</p>
<p>Про DVD-привод, miniJack и прочие стандартные вещи наверное и упоминать смысла нет &#8212; с ними все в порядке.</p>
<h3>Подведем итоги</h3>
<p>Как Вы уже успели заметить, в целом процесс установки этого одного из самых &#171;сложных&#187; дистрибутивов <a href="/tag/linux" target="_blank">Linux</a> на ноутбук является далеко не элементарной задачей. Когда я писал этот текст, передо мной не стояло задачи убедить как можно больше читателей последовать по тому пути, что выбрал я и стать активным пользователем операционной системы под гордым названием <em><a href="/tag/gentoo" target="_blank">Gentoo</a> <a href="/tag/linux" target="_blank">Linux</a></em>, я всеголишь хотел показать Вам выбор, который стоит перед каждым пользователем персональных компьютеров, как настольных, так и портативных.</p>
<p>На закуску я хотел бы поделиться своими впечатлениями насчет активной эксплуатации такой системы на протяжении достаточного длительного периода времени. Промолчав про несравнимую производительность и стабильность, сразу перейду к тому, как я использую свой ноутбук: в основном для меня он просто является устройством, позволяющим пользоваться всем разнообразием услуг <a href="/net" target="_blank">Сети</a>: общаться, получать разного рода информацию, делиться информацией. Помимо этого я подрабатываю программированием на некоторых языках программирования, а также удаленным администрированием. Для каждой из этих задач существует огромнейший набор вариантов воплощения их в жизнь, и выбор каким из них мне пользоваться в каждой конкретной ситуации остается за мной, за <em>пользователем</em>, а не за производителями программного обеспечения, которые навязывают своим клиентам свои решения.</p>
<p>Закончить хотелось бы той же цитатой из <em>Gentoo Handbook</em>, которую я использовал в эпиграфе к этой статье: <em>&#171;Gentoo is all about choices.&#187;</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.insight-it.ru/unix-way/linux/gentoo-linux-sony-vaio/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>KDE 4 увидел свет</title>
		<link>http://www.insight-it.ru/unix-way/linux/kde-4-uvidel-svet/</link>
		<comments>http://www.insight-it.ru/unix-way/linux/kde-4-uvidel-svet/#comments</comments>
		<pubDate>Fri, 11 Jan 2008 18:37:40 +0000</pubDate>
		<dc:creator>Иван Блинков</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Unix]]></category>
		<category><![CDATA[KDE]]></category>
		<category><![CDATA[ПО]]></category>
		<category><![CDATA[программное обеспечение]]></category>

		<guid isPermaLink="false">http://www.insight-it.ru/unix-way/linux-unix-way/kde-4-uvidel-svet/</guid>
		<description><![CDATA[Наконец-то наступил тот самый день, которого так долго ждали многие пользователи различных дистрибутивов Linux и многих других unix-like операционных систем. Да-да, сегодня вышла новая major-версия знаменитого K Desktop Environment под номером 4.0! Вкратце перескажу оффициальный пресс-релиз: Набор библиотек, лежащих в основе KDE, был кардинальным образом переделан, изменения произошли в каждой из них. Появилось два новых [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/wp-content/uploads/kde.png" title="K Desktop Environment" alt="KDE Icon" style="margin: 10px; float: right;" /></p>
<p>Наконец-то наступил тот самый день, которого так долго ждали многие пользователи различных дистрибутивов Linux и многих других unix-like операционных систем. Да-да, сегодня вышла новая major-версия знаменитого K Desktop Environment под номером 4.0!</p>
<p><span id="more-24"></span></p>
<p>Вкратце перескажу <a target="_blank" href="http://www.kde.org/announcements/4.0/index.php">оффициальный пресс-релиз</a>:</p>
<p>Набор библиотек, лежащих в основе KDE, был кардинальным образом переделан, изменения произошли в каждой из них. Появилось два новых framework&#8217;а: один мультимедийный.- Phonon, а второй &#8212; Solid &#8212; для интеграции интерфейса для работы с используемым оборудованием в рабочее окружение.</p>
<p>Рабочий стол KDE приобрел новую оболочку под названием Plasma, которая поддерживает огромное количество widget&#8217;ов, эффектов и прочих украшательств.</p>
<p>Все программное обеспечение, входящее в его состав также не осталось без изменений (немного от себя: лично мне больше всего понравились изменения в Kopete &#8212; единственный icq клиент под *nix, в котором появилась возможность использования x-status, которой сильно не хватало, успел заценить его еще некоторое время назад в beta-версии KDE 4). Помимо Konqueror появился новый файловый менеджер под названием Dolphin и просмотрщик документов Okular (основанный на KPDF, но поддерживающий существенно большее количество форматов документов).</p>
<p>Тема рабочего окружения, используемая по-умолчанию также изменилась и называется она теперь Oxygen, на вкус и цвет конечно, но я думаю найдется много людей, которым она прийдется по душе.</p>
<div style="margin: 16px; text-align: center;"><img src="http://www.kde.org/announcements/4.0/screenshots/desktop_thumb.jpg" alt="KDE4 Screenshot" title="KDE 4.0 Screenshot" /></div>
<p>Вот так вот примерно выглядит новинка в стандартном варианте оформления, естественно практически безграничные возможности по модификации пользовательского интерфейса не только никуда не делись, а только преувеличились.</p>
<p>&nbsp;</p>
<p>На личном опыте новый релиз я опробовать еще не успел, но планирую этим делом заняться в ближайшем будующим, наверное сразу же как появятся ebuild&#8217;ы для Gentoo. После чего несомненно поделюсь с Вами впечатлениями.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.insight-it.ru/unix-way/linux/kde-4-uvidel-svet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

