<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2russianfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Shumaher’s_Blog</title><link>http://blog.shumaher.net.ru</link><description>yet another stupid personal weblog</description><language>en</language><image><link>http://blog.shumaher.net.ru</link><url>http://blog.shumaher.net.ru/avatar.100.jpg</url><title>Shumaher’s_Blog</title><width>100</width><height>100</height><description>Shumaher’s_Blog</description></image><lastBuildDate>Sun, 26 Feb 2012 16:37:41 PST</lastBuildDate><sy:updatePeriod xmlns:sy="http://purl.org/rss/1.0/modules/syndication/">hourly</sy:updatePeriod><sy:updateFrequency xmlns:sy="http://purl.org/rss/1.0/modules/syndication/">1</sy:updateFrequency><feedburner:info uri="shumahers_blog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://blog.shumaher.net.ru/feed/" /><feedburner:emailServiceId>Shumahers_Blog</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://blog.shumaher.net.ru/feed/" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:feedFlare href="http://lenta.yandex.ru/settings.xml?name=feed&amp;url=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://lenta.yandex.ru/i/addfeed.gif">?????? ? ??????.?????</feedburner:feedFlare><feedburner:feedFlare href="http://www.plusmo.com/add?url=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://plusmo.com/res/graphics/fbplusmo.gif">Subscribe with Plusmo</feedburner:feedFlare><feedburner:feedFlare href="http://www.thefreedictionary.com/_/hp/AddRSS.aspx?http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://img.tfd.com/hp/addToTheFreeDictionary.gif">Subscribe with The Free Dictionary</feedburner:feedFlare><feedburner:feedFlare href="http://www.bitty.com/manual/?contenttype=rssfeed&amp;contentvalue=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://www.bitty.com/img/bittychicklet_91x17.gif">Subscribe with Bitty Browser</feedburner:feedFlare><feedburner:feedFlare href="http://www.live.com/?add=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://tkfiles.storage.msn.com/x1piYkpqHC_35nIp1gLE68-wvzLZO8iXl_JMledmJQXP-XTBOLfmQv4zhj4MhcWEJh_GtoBIiAl1Mjh-ndp9k47If7hTaFno0mxW9_i3p_5qQw">Subscribe with Live.com</feedburner:feedFlare><feedburner:feedFlare href="http://mix.excite.eu/add?feedurl=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://image.excite.co.uk/mix/addtomix.gif">Subscribe with Excite MIX</feedburner:feedFlare><feedburner:feedFlare href="http://www.webwag.com/wwgthis.php?url=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://www.webwag.com/images/wwgthis.gif">Subscribe with Webwag</feedburner:feedFlare><feedburner:feedFlare href="http://www.podcastready.com/oneclick_bookmark.php?url=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://www.podcastready.com/images/podcastready_button.gif">Subscribe with Podcast Ready</feedburner:feedFlare><feedburner:feedFlare href="http://www.wikio.com/subscribe?url=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://www.wikio.com/shared/img/add2wikio.gif">Subscribe with Wikio</feedburner:feedFlare><feedburner:feedFlare href="http://www.dailyrotation.com/index.php?feed=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://www.dailyrotation.com/rss-dr2.gif">Subscribe with Daily Rotation</feedburner:feedFlare><feedburner:feedFlare href="http://www.flurry.com/pushRssFeed.do?r=fb&amp;url=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://www.flurry.com/images/flurry_rss_logo2.gif">Subscribe with Flurry</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsalloy.com/?rss=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://www.newsalloy.com/subrss3.gif">Subscribe with NewsAlloy</feedburner:feedFlare><feedburner:feedFlare href="http://download.attensa.com/app/get_attensa.html?feedurl=http%3A%2F%2Fblog.shumaher.net.ru%2Ffeed%2F" src="http://www.attensa.com/blogs/attensa/WindowsLiveWriter/BadgeredintoBadges_10C02/attensa_feed_button5.gif">Subscribe with Attensa for Outlook</feedburner:feedFlare><item><title>Настройка серверной истории в ejabberd2</title><link>http://feedproxy.google.com/~r/Shumahers_Blog/~3/uKOe1aoxzAA/</link><category>Text</category><category>ejabberd</category><category>IM</category><category>Jabber</category><category>soft</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shumaher</dc:creator><pubDate>Thu, 16 Feb 2012 14:15:56 PST</pubDate><guid isPermaLink="false">http://blog.shumaher.net.ru/?p=1349</guid><description>&lt;p&gt;&lt;img src="http://blog.shumaher.net.ru/wp-content/uploads/2010/11/ejabberd.png" alt="ejabberd" title="ejabberd" width="350" height="90" class="aligncenter size-full wp-image-809" style="border:none; margin:0 auto 4px; float:none; display:block" /&gt;&lt;br clear="all"&gt;Не так давно стал юзать на &lt;a href="http://blog.shumaher.net.ru/tag/android/" title="тег: Android"&gt;Андоиде&lt;/a&gt; jabber-клиент с поддержкой &lt;a href="http://xmpp.org/extensions/xep-0136.html" target="_blank"&gt;XEP-0136: Message Archiving&lt;/a&gt; (aka история на сервере).&lt;br /&gt;
В &lt;a href="http://www.ejabberd.im/" target="_blank"&gt;ejabberd2&lt;/a&gt; данный XEP реализуется при помощи модуля &lt;a href="http://www.ejabberd.im/mod_archive" target="_blank"&gt;mod_archive&lt;/a&gt;. Казалось бы, подключить и радоваться, но, как обычно, всё не так просто [как могло бы быть].&lt;br /&gt;
Проблема в том, что последняя на текущий момент версия модуля реализует лишь 0.6 версию XEP'а, тогда как сам он имеет уже версию &lt;strong&gt;1.2&lt;/strong&gt; (от 2010.06.21). И современные клиенты использовать функцию сохранения истории не могут, даже если модуль на сервере присутствует.&lt;br /&gt;
Для того чтобы обеспечить совместимость надо отредактировать исходник модуля, чему и будет посвящен этот пост.&lt;/p&gt;
&lt;p&gt;&lt;span id="more-1349"&gt;&lt;/span&gt;О том, как получить исходники &lt;strong&gt;mod_archive&lt;/strong&gt;, собрать и установить модуль, я здесь писать не буду, т.к. процесс ничем не отличается для всех модулей, так что читайте &lt;a href="http://blog.shumaher.net.ru/ustanovka-mod_webpresence-v-ejabberd2/" title="Установка mod_webpresence в ejabberd2"&gt;предыдущий пост про mod_webpresence&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;br clear="none"&gt;&lt;/p&gt;
&lt;h3&gt;Правка исходника&lt;/h3&gt;
&lt;p&gt;В новой версии XEP-0136 изменился &lt;a href="http://xmpp.org/extensions/xep-0136.html#ns" target="_blank"&gt;namespace&lt;/a&gt; архива с &lt;code&gt;http://xmpp.org/extensions/xep-0136.html#ns&lt;/code&gt; на &lt;code&gt;urn:xmpp:archive&lt;/code&gt;, поэтому необходимо изменить соответствующие строки в &lt;strong&gt;mod_archive.erl&lt;/strong&gt; так:&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;table&gt;&lt;tr&gt;&lt;td class="line_numbers"&gt;&lt;pre&gt;40
41
42
43
44
45
46
47
&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;pre class="erlang" style="font-family:monospace;"&gt;&lt;span style="color: #014ea4;"&gt;-&lt;/span&gt;&lt;span style="color: #5400b3;"&gt;define&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #6941fd;"&gt;NS_ARCHIVE&lt;/span&gt;&lt;span style="color: #6bb810;"&gt;,&lt;/span&gt;
	&lt;span style="color: #ff7800;"&gt;&amp;quot;urn:xmpp:archive&amp;quot;&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #6bb810;"&gt;.&lt;/span&gt;
&lt;span style="color: #014ea4;"&gt;-&lt;/span&gt;&lt;span style="color: #5400b3;"&gt;define&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #6941fd;"&gt;NS_ARCHIVE_MANAGE&lt;/span&gt;&lt;span style="color: #6bb810;"&gt;,&lt;/span&gt;
	&lt;span style="color: #ff7800;"&gt;&amp;quot;urn:xmpp:archive:manage&amp;quot;&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #6bb810;"&gt;.&lt;/span&gt;
&lt;span style="color: #014ea4;"&gt;-&lt;/span&gt;&lt;span style="color: #5400b3;"&gt;define&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #6941fd;"&gt;NS_ARCHIVE_PREF&lt;/span&gt;&lt;span style="color: #6bb810;"&gt;,&lt;/span&gt;
	&lt;span style="color: #ff7800;"&gt;&amp;quot;urn:xmpp:archive:pref&amp;quot;&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #6bb810;"&gt;.&lt;/span&gt;
&lt;span style="color: #014ea4;"&gt;-&lt;/span&gt;&lt;span style="color: #5400b3;"&gt;define&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #6941fd;"&gt;NS_ARCHIVE_MANUAL&lt;/span&gt;&lt;span style="color: #6bb810;"&gt;,&lt;/span&gt;
	&lt;span style="color: #ff7800;"&gt;&amp;quot;urn:xmpp:archive:manual&amp;quot;&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #6bb810;"&gt;.&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none"&gt;&lt;br /&gt;
Файлы ODBC/SQL-версий модуля &lt;strong&gt;mod_archive_odbc.erl&lt;/strong&gt; и &lt;strong&gt;mod_archive_sql.erl&lt;/strong&gt; редактируются аналогично.&lt;/p&gt;
&lt;p&gt;Некоторые клиенты могут поддерживать и оба варианта, а какие-то только старый, соответственно в них может перестать работать данная функция.&lt;/p&gt;
&lt;p&gt;&lt;br clear="none"&gt;&lt;/p&gt;
&lt;h3&gt;Конфиг&lt;/h3&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="erlang" style="font-family:monospace;"&gt;&lt;span style="color: #109ab8;"&gt;&amp;#123;&lt;/span&gt;listen&lt;span style="color: #6bb810;"&gt;,&lt;/span&gt;		&lt;span style="color: #666666; font-style: italic;"&gt;%% ТОЛЬКО для mod_archive_webview, подробнее ниже!!!&lt;/span&gt;
 &lt;span style="color: #109ab8;"&gt;&amp;#91;&lt;/span&gt;
&lt;span style="color: #6bb810;"&gt;...&lt;/span&gt;
  &lt;span style="color: #109ab8;"&gt;&amp;#123;&lt;/span&gt;&lt;span style="color: #ff9600;"&gt;5280&lt;/span&gt;&lt;span style="color: #6bb810;"&gt;,&lt;/span&gt; ejabberd_http&lt;span style="color: #6bb810;"&gt;,&lt;/span&gt; &lt;span style="color: #109ab8;"&gt;&amp;#91;&lt;/span&gt;
			 &lt;span style="color: #109ab8;"&gt;&amp;#123;&lt;/span&gt;request_handlers&lt;span style="color: #6bb810;"&gt;,&lt;/span&gt;
			 &lt;span style="color: #109ab8;"&gt;&amp;#91;&lt;/span&gt;
			 &lt;span style="color: #6bb810;"&gt;...&lt;/span&gt;
			 &lt;span style="color: #109ab8;"&gt;&amp;#123;&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#91;&lt;/span&gt;&lt;span style="color: #ff7800;"&gt;&amp;quot;archive&amp;quot;&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#93;&lt;/span&gt;&lt;span style="color: #6bb810;"&gt;,&lt;/span&gt; mod_archive_webview&lt;span style="color: #109ab8;"&gt;&amp;#125;&lt;/span&gt;
			 &lt;span style="color: #109ab8;"&gt;&amp;#93;&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#125;&lt;/span&gt;
			&lt;span style="color: #109ab8;"&gt;&amp;#93;&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#125;&lt;/span&gt;
 &lt;span style="color: #109ab8;"&gt;&amp;#93;&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#125;&lt;/span&gt;&lt;span style="color: #6bb810;"&gt;.&lt;/span&gt;
&amp;nbsp;
&lt;span style="color: #109ab8;"&gt;&amp;#123;&lt;/span&gt;modules&lt;span style="color: #6bb810;"&gt;,&lt;/span&gt;
 &lt;span style="color: #109ab8;"&gt;&amp;#91;&lt;/span&gt;
  &lt;span style="color: #6bb810;"&gt;...&lt;/span&gt;
  &lt;span style="color: #109ab8;"&gt;&amp;#123;&lt;/span&gt;mod_archive&lt;span style="color: #6bb810;"&gt;,&lt;/span&gt;  &lt;span style="color: #109ab8;"&gt;&amp;#91;&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#123;&lt;/span&gt;save_default&lt;span style="color: #6bb810;"&gt;,&lt;/span&gt; true&lt;span style="color: #109ab8;"&gt;&amp;#125;&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#93;&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#125;&lt;/span&gt;&lt;span style="color: #6bb810;"&gt;,&lt;/span&gt;
  &lt;span style="color: #109ab8;"&gt;&amp;#123;&lt;/span&gt;mod_archive_webview&lt;span style="color: #6bb810;"&gt;,&lt;/span&gt; &lt;span style="color: #109ab8;"&gt;&amp;#91;&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#93;&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#125;&lt;/span&gt;
 &lt;span style="color: #109ab8;"&gt;&amp;#93;&lt;/span&gt;&lt;span style="color: #109ab8;"&gt;&amp;#125;&lt;/span&gt;&lt;span style="color: #6bb810;"&gt;.&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none"&gt;&lt;/p&gt;
&lt;h3&gt;mod_archive_webview&lt;/h3&gt;
&lt;p&gt;Дополнительный модуль для просмотра истории через браузер по адресу &lt;strong&gt;http://server.com:5280/archive/&lt;/strong&gt;. Сам новый раздел в админке открывается, но дальше генерирует пустые страницы. Возможно это только у меня.&lt;br /&gt;
Так что добавлять этот модуль или нет — решать вам.&lt;/p&gt;
&lt;p&gt;&lt;br clear="none"&gt;&lt;/p&gt;
&lt;h3&gt;Клиенты&lt;/h3&gt;
&lt;p&gt;Пока что мне известно лишь 2 jabber-клиента с поддержкой серверной истории:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://emess.eqx.su/" target="_blank"&gt;EMess&lt;/a&gt; (&lt;a href="http://4pda.ru/forum/index.php?showtopic=181938" target="_blank"&gt;4PDA&lt;/a&gt;) — для Android &lt;small&gt;(ради чего всё это и делалось)&lt;/small&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.vacuum-im.org/" target="_blank"&gt;Vacuum-IM&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Если знаете ещё, просьба написать в комментах!&lt;/p&gt;
&lt;p&gt;&lt;br clear="none"&gt;&lt;br /&gt;
Вот таким нехитрым образом можно получить в смартфоне историю переписки с десктопа, даже если вы только что установили клиент первый раз, или, если десктопный клиент это всё не умеет, хотя бы историю отправленную/полученную смартом ранее.&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© &lt;strong&gt;Shumaher&lt;/strong&gt; for &lt;a href="http://blog.shumaher.net.ru"&gt;Shumaher’s_Blog&lt;/a&gt;, 17th February 2012 @ 2:15 | &lt;a href="http://blog.shumaher.net.ru/2012/02/17/nastrojka-servernoj-istorii-v-ejabberd2/"&gt;Permalink&lt;/a&gt; | &lt;a href="http://blog.shumaher.net.ru/2012/02/17/nastrojka-servernoj-istorii-v-ejabberd2/#comments"&gt;No Comments&lt;/a&gt;
&lt;br /&gt;
Post tags: &lt;a href="http://blog.shumaher.net.ru/tag/ejabberd/" rel="tag"&gt;ejabberd&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/im/" rel="tag"&gt;IM&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/jabber/" rel="tag"&gt;Jabber&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/soft/" rel="tag"&gt;soft&lt;/a&gt;
&lt;/small&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Shumahers_Blog/~4/uKOe1aoxzAA" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blog.shumaher.net.ru/2012/02/17/nastrojka-servernoj-istorii-v-ejabberd2/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://blog.shumaher.net.ru/2012/02/17/nastrojka-servernoj-istorii-v-ejabberd2/</feedburner:origLink></item><item><title>Star Wars art</title><link>http://feedproxy.google.com/~r/Shumahers_Blog/~3/ujUq9ico0_E/</link><category>Pictures</category><category>Links</category><category>Star Wars</category><category>спёртое</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shumaher</dc:creator><pubDate>Fri, 20 Jan 2012 09:43:50 PST</pubDate><guid isPermaLink="false">http://blog.shumaher.net.ru/?p=1340</guid><description>&lt;p&gt;Арт про &lt;a href="http://blog.shumaher.net.ru/tag/star-wars/" title="тег: Star Wars"&gt;SW&lt;/a&gt;. Офигенно:&lt;/p&gt;
&lt;p style="text-align:center"&gt;&lt;a href="http://joyreactor.ru/post/170028" target="_blank" title="Star Wars art"&gt;&lt;img src="http://img4.joyreactor.ru/pics/post/art-star-wars-83094.jpeg" alt="Star Wars art" width="811" height="1017" class="aligncenter size-full" style="border:none; margin:0 auto 0; float:none" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;br clear="all" /&gt;&lt;br /&gt;
Остальные при клике на картинку.&lt;br /&gt;
Даже сохранил себе, на обоины ставить.&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© &lt;strong&gt;Shumaher&lt;/strong&gt; for &lt;a href="http://blog.shumaher.net.ru"&gt;Shumaher’s_Blog&lt;/a&gt;, 20th January 2012 @ 21:43 | &lt;a href="http://blog.shumaher.net.ru/2012/01/20/star-wars-art/"&gt;Permalink&lt;/a&gt; | &lt;a href="http://blog.shumaher.net.ru/2012/01/20/star-wars-art/#comments"&gt;No Comments&lt;/a&gt;
&lt;br /&gt;
Post tags: &lt;a href="http://blog.shumaher.net.ru/tag/links/" rel="tag"&gt;Links&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/pictures/" rel="tag"&gt;Pictures&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/star-wars/" rel="tag"&gt;Star Wars&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/spertoe/" rel="tag"&gt;спёртое&lt;/a&gt;
&lt;/small&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Shumahers_Blog/~4/ujUq9ico0_E" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blog.shumaher.net.ru/2012/01/20/star-wars-art/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://blog.shumaher.net.ru/2012/01/20/star-wars-art/</feedburner:origLink></item><item><title>Как монтировать сетевые диски Windows в Android без консоли (часть 2)</title><link>http://feedproxy.google.com/~r/Shumahers_Blog/~3/zPhmorQ4ncE/</link><category>Text</category><category>Android</category><category>bash</category><category>Linux</category><category>warez</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shumaher</dc:creator><pubDate>Fri, 30 Dec 2011 12:58:05 PST</pubDate><guid isPermaLink="false">http://blog.shumaher.net.ru/?p=1310</guid><description>&lt;p&gt;В прошлый раз я написал, &lt;a href="http://blog.shumaher.net.ru/kak-montirovat-setevye-diski-windows-v-android/" title="Как монтировать сетевые диски Windows в Android"&gt;как монтировать расшаренные папки Windows в Android-смартфон&lt;/a&gt;: о сборке необходимого модуля &lt;strong&gt;cifs.ko&lt;/strong&gt; и зависимостей для него. Само монтирование было сделано при помощи стандартной команды &lt;strong&gt;mount&lt;/strong&gt;, но каждый раз открывать эмулятор терминала и вводить длинные команды, конечно же, мягко говоря, не очень удобно.&lt;br /&gt;
Поэтому сегодня я расскажу о двух приложениях, которые позволят монтировать всего в 1-2 тапа пальцем. На одно из них я уже давал ссылку в предыдущем посте.&lt;/p&gt;
&lt;p&gt;&lt;span id="more-1310"&gt;&lt;/span&gt;&lt;br clear="none"&gt;&lt;/p&gt;
&lt;h3&gt;CifsManager&lt;/h3&gt;
&lt;p&gt;&lt;img src="http://blog.shumaher.net.ru/wp-content/uploads/2011/12/cifsmanager.png" alt="CifsManager" title="CifsManager" width="320" height="480" class="alignleft size-full wp-image-1311" style="border:none; margin:0 10px 15px 0; float:left" /&gt;&lt;a href="https://market.android.com/details?id=ws.plattner.cifsmanager" target="_blank"&gt;Android Market&lt;/a&gt; | &lt;a href="market://details?id=ws.plattner.cifsmanager" target="_blank"&gt;market://&lt;/a&gt; | &lt;a href="http://4pda.ru/forum/index.php?showtopic=183336" target="_blank"&gt;4PDA&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Описание есть на форуме 4PDA, поэтому подробно останавливаться на этом приложении я не буду.&lt;br /&gt;
Стоит только отметить правильный порядок модулей в опции &lt;strong&gt;Path to cifs.ko&lt;/strong&gt; (видно на скриншоте).&lt;br /&gt;
А так же при создании шары не забудьте в опциях вбить &lt;strong&gt;iocharset=utf8,file_mode=0777,dir_mode=0777&lt;/strong&gt;&lt;br /&gt;
Прямо из приложения можно открыть установленным файловым менеджером подключенный ресурс, что плюс.&lt;br /&gt;
А минус — нет бэкапа опций на SD, потому что их достаточно много. Так что при, например, перепрошивке, всё нужно будет вбивать заново (если не пользоваться прогами для бэкапа).&lt;br /&gt;
Но главное — оно работает, и позволяет монтировать в 2 тапа пальцем по экрану: запуск приложения + тап по нужной шаре.&lt;br /&gt;
&lt;br clear="all" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br clear="none" /&gt;&lt;/p&gt;
&lt;h3&gt;GScript&lt;/h3&gt;
&lt;p&gt;&lt;img src="http://blog.shumaher.net.ru/wp-content/uploads/2011/12/gscript-1.png" alt="GScript - Edit script" title="GScript - Edit script" class="alignleft size-full wp-image-1316" style="border:none; margin:0 10px 15px 0; float:left" /&gt;&lt;img src="http://blog.shumaher.net.ru/wp-content/uploads/2011/12/gscript-2.png" alt="GScript - cifs.sh" title="GScript - cifs.sh" width="320" height="480" class="alignleft size-full wp-image-1318" style="border:none; margin:0 10px 15px 0; float:right" /&gt;&lt;br clear="all" /&gt;&lt;br /&gt;
&lt;strong&gt;Lite:&lt;/strong&gt; &lt;a href="https://market.android.com/details?id=nl.rogro.GScriptLite" target="_blank"&gt;Android Market&lt;/a&gt; | &lt;a href="market://details?id=nl.rogro.GScriptLite" target="_blank"&gt;market://&lt;/a&gt;&lt;br /&gt;
&lt;strong&gt;Full:&lt;/strong&gt; &lt;a href="https://market.android.com/details?id=nl.rogro.GScriptFull" target="_blank"&gt;Android Market&lt;/a&gt; | &lt;a href="market://details?id=nl.rogro.GScriptFull" target="_blank"&gt;market://&lt;/a&gt; | &lt;a href="http://4pda.ru/forum/index.php?showtopic=151597" target="_blank"&gt;4PDA&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Это приложение предназначено не именно для монтирования, а для запуска вообще любых скриптов. Также поддерживает создание ярлыков, что и позволяет монтировать шары в один тап.&lt;br /&gt;
Имеются функции и сохранения/загрузки скриптов с SD-карты.&lt;br /&gt;
Полезные скрипты можно найти в &lt;a href="http://forum.xda-developers.com/showthread.php?t=488928" target="_blank"&gt;теме на XDA&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Ну а теперь к монтированию.&lt;br /&gt;
Можно было бы, конечно, просто вбить все команды из предыдущего поста: &lt;strong&gt;insmod&lt;/strong&gt;, &lt;strong&gt;mount&lt;/strong&gt; и &lt;strong&gt;unount&lt;/strong&gt;. Но это всё равно долго и нудно (особенно если подключаемых ресурсов несколько), поэтому я для себя решил наговнокодить скрипт, чтобы все нужные команды были в одном обычном sh-файле, который можно будет запускать не только из GScript, но и при необходимости из терминала.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;cifs.sh:&lt;/strong&gt;&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;table&gt;&lt;tr&gt;&lt;td class="line_numbers"&gt;&lt;pre&gt;1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;pre class="bash" style="font-family:monospace;"&gt;&lt;span style="color: #666666; font-style: italic;"&gt;#!/system/bin/sh&lt;/span&gt;
&amp;nbsp;
&amp;nbsp;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;export&lt;/span&gt; &lt;span style="color: #007800;"&gt;PATH&lt;/span&gt;=&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;data&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;data&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;berserker.android.apps.sshdroid&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;home&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;bin:&lt;span style="color: #007800;"&gt;$PATH&lt;/span&gt;
&amp;nbsp;
&lt;span style="color: #000000; font-weight: bold;"&gt;case&lt;/span&gt; &lt;span style="color: #007800;"&gt;$1&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;in&lt;/span&gt;
&amp;nbsp;
	&lt;span style="color: #ff0000;"&gt;&amp;quot;m&amp;quot;&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#41;&lt;/span&gt;
&lt;span style="color: #000000; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;mount&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;grep&lt;/span&gt; &lt;span style="color: #660033;"&gt;-Fq&lt;/span&gt; &lt;span style="color: #ff0000;"&gt;'unc=\192.168.1.1\share,username=USER'&lt;/span&gt;
&lt;span style="color: #000000; font-weight: bold;"&gt;then&lt;/span&gt;
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt; &lt;span style="color: #ff0000;"&gt;&amp;quot;UnMounting //server/share ...&amp;quot;&lt;/span&gt;
	&lt;span style="color: #c20cb9; font-weight: bold;"&gt;umount&lt;/span&gt; &lt;span style="color: #660033;"&gt;-f&lt;/span&gt; &lt;span style="color: #660033;"&gt;-l&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;mnt&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sdcard&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;cifs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;share
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt; &lt;span style="color: #ff0000;"&gt;&amp;quot;//server/share unmounted for USER!&amp;quot;&lt;/span&gt;
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #000000; font-weight: bold;"&gt;else&lt;/span&gt;
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt; &lt;span style="color: #ff0000;"&gt;&amp;quot;Mounting //server/share ...&amp;quot;&lt;/span&gt;
	&lt;span style="color: #c20cb9; font-weight: bold;"&gt;mount&lt;/span&gt; &lt;span style="color: #660033;"&gt;-t&lt;/span&gt; cifs &lt;span style="color: #660033;"&gt;-o&lt;/span&gt; ro,&lt;span style="color: #007800;"&gt;iocharset&lt;/span&gt;=utf8,&lt;span style="color: #007800;"&gt;username&lt;/span&gt;=USER,&lt;span style="color: #007800;"&gt;password&lt;/span&gt;=PASS,&lt;span style="color: #007800;"&gt;file_mode&lt;/span&gt;=0777,&lt;span style="color: #007800;"&gt;dir_mode&lt;/span&gt;=0777 &lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;192.168.1.1&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;share &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;mnt&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sdcard&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;cifs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;share &lt;span style="color: #000000; font-weight: bold;"&gt;&amp;amp;&amp;amp;&lt;/span&gt; \
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt; &lt;span style="color: #ff0000;"&gt;&amp;quot;//server/share mounted for USER!&amp;quot;&lt;/span&gt;
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
	&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #000000; font-weight: bold;"&gt;fi&lt;/span&gt;
	&lt;span style="color: #000000; font-weight: bold;"&gt;;;&lt;/span&gt;
&amp;nbsp;
        &lt;span style="color: #ff0000;"&gt;&amp;quot;l&amp;quot;&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#41;&lt;/span&gt;
&lt;span style="color: #c20cb9; font-weight: bold;"&gt;lsmod&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;&amp;amp;&amp;amp;&lt;/span&gt; \
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
        &lt;span style="color: #000000; font-weight: bold;"&gt;;;&lt;/span&gt;
&amp;nbsp;
        &lt;span style="color: #ff0000;"&gt;&amp;quot;r&amp;quot;&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#41;&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;cd&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;mnt&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sdcard&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;cifs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;$&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;uname&lt;/span&gt; -r&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;&amp;amp;&amp;amp;&lt;/span&gt; \
&amp;nbsp;
modprobe &lt;span style="color: #660033;"&gt;-r&lt;/span&gt; nls_utf8 &lt;span style="color: #000000; font-weight: bold;"&gt;&amp;amp;&amp;amp;&lt;/span&gt; \
modprobe &lt;span style="color: #660033;"&gt;-r&lt;/span&gt; cifs &lt;span style="color: #000000; font-weight: bold;"&gt;&amp;amp;&amp;amp;&lt;/span&gt; \
modprobe &lt;span style="color: #660033;"&gt;-r&lt;/span&gt; slow-work &lt;span style="color: #000000; font-weight: bold;"&gt;&amp;amp;&amp;amp;&lt;/span&gt; \
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt; &lt;span style="color: #ff0000;"&gt;&amp;quot;*.ko unloaded!&amp;quot;&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
        &lt;span style="color: #000000; font-weight: bold;"&gt;;;&lt;/span&gt;
&amp;nbsp;
	&lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#41;&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;cd&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;mnt&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sdcard&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;cifs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;$&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;uname&lt;/span&gt; -r&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;&amp;amp;&amp;amp;&lt;/span&gt; \
&amp;nbsp;
modprobe slow-work.ko &lt;span style="color: #000000; font-weight: bold;"&gt;&amp;amp;&amp;amp;&lt;/span&gt; \
modprobe nls_utf8.ko &lt;span style="color: #000000; font-weight: bold;"&gt;&amp;amp;&amp;amp;&lt;/span&gt; \
modprobe cifs.ko &lt;span style="color: #000000; font-weight: bold;"&gt;&amp;amp;&amp;amp;&lt;/span&gt; \
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt; &lt;span style="color: #ff0000;"&gt;&amp;quot;*.ko loaded!&amp;quot;&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;echo&lt;/span&gt;
	&lt;span style="color: #000000; font-weight: bold;"&gt;;;&lt;/span&gt;
&amp;nbsp;
&lt;span style="color: #000000; font-weight: bold;"&gt;esac&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none"&gt;&lt;br /&gt;
На первом скриншоте видно, что перед скриптом стоит команда &lt;strong&gt;sh&lt;/strong&gt;, что позволяет запускать его с SD-карты в FAT32, где невозможно сделать &lt;strong&gt;chmod +x&lt;/strong&gt;.&lt;br /&gt;
Зачем при этом у меня такой длинный путь к файлу, я напишу как-нибудь потом...&lt;/p&gt;
&lt;p&gt;Теперь пара слов о самом скрипте.&lt;br /&gt;
Результат работы показан на втором скриншоте, после того как скрипт отработал окно автоматически закрывается.&lt;br /&gt;
Несколько пустых &lt;strong&gt;echo&lt;/strong&gt; добавлено чтобы появляющийся поп-ап не закрывал вывод.&lt;/p&gt;
&lt;p&gt;При запуске&lt;strong&gt; без параметров&lt;/strong&gt; происходит загрузка всех модулей, &lt;strong&gt;l&lt;/strong&gt; — список, &lt;strong&gt;r&lt;/strong&gt; — выгрузка.&lt;br /&gt;
&lt;strong&gt;m&lt;/strong&gt; — монтирование/размонтирование; если шара смонтирована, происходит размонтирование, и наоборт.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;ВАЖНО:&lt;/strong&gt;&lt;br /&gt;
Скрипт использует &lt;strong&gt;grep&lt;/strong&gt;, поэтому должен быть установлен &lt;a href="https://market.android.com/details?id=stericson.busybox" target="_blank"&gt;BusyBox&lt;/a&gt;.&lt;br /&gt;
Исправьте переменную &lt;code&gt;PATH&lt;/code&gt;, указав правильный путь до grep!&lt;br /&gt;
Также (хотя это и не будет влиять на запуск из-под GScript), исправьте/проверьте путь до интерпретатора &lt;strong&gt;sh&lt;/strong&gt; в 1 строке.&lt;/p&gt;
&lt;p&gt;Добавляя другие аргументы в &lt;code&gt;case&lt;/code&gt; (например, &lt;strong&gt;m1&lt;/strong&gt;, &lt;strong&gt;m2&lt;/strong&gt; и т.д) можно подключать несколько шар, или одну под разными юзерами. Естественно всё ограничивается лишь вашей фантазией.&lt;/p&gt;
&lt;p&gt;Это решение мне показалось лучше в первую очередь тем, что скрипт можно легко редактировать, просто открыв в текстовом редакторе при подключении смартфона как USB-диска, или через SSH.&lt;br /&gt;
Как-нибудь позже я напишу об организации в Android одной среды как при запуске терминала, так и при подключении по SSH.&lt;/p&gt;
&lt;p&gt;А пока что — &lt;em&gt;с наступающим&lt;/em&gt;, юзернеймы! Ведь до 2012-го осталось меньше суток &lt;img src='http://blog.shumaher.net.ru/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© &lt;strong&gt;Shumaher&lt;/strong&gt; for &lt;a href="http://blog.shumaher.net.ru"&gt;Shumaher’s_Blog&lt;/a&gt;, 31st December 2011 @ 0:58 | &lt;a href="http://blog.shumaher.net.ru/2011/12/31/kak-montirovat-setevye-diski-windows-v-android-bez-konsoli/"&gt;Permalink&lt;/a&gt; | &lt;a href="http://blog.shumaher.net.ru/2011/12/31/kak-montirovat-setevye-diski-windows-v-android-bez-konsoli/#comments"&gt;No Comments&lt;/a&gt;
&lt;br /&gt;
Post tags: &lt;a href="http://blog.shumaher.net.ru/tag/android/" rel="tag"&gt;Android&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/bash/" rel="tag"&gt;bash&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/linux/" rel="tag"&gt;Linux&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/warez/" rel="tag"&gt;warez&lt;/a&gt;
&lt;/small&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Shumahers_Blog/~4/zPhmorQ4ncE" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blog.shumaher.net.ru/2011/12/31/kak-montirovat-setevye-diski-windows-v-android-bez-konsoli/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://blog.shumaher.net.ru/2011/12/31/kak-montirovat-setevye-diski-windows-v-android-bez-konsoli/</feedburner:origLink></item><item><title>Как монтировать сетевые диски Windows в Android</title><link>http://feedproxy.google.com/~r/Shumahers_Blog/~3/UVXl3QPvg00/</link><category>Text</category><category>Android</category><category>HTC</category><category>Linux</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shumaher</dc:creator><pubDate>Wed, 28 Dec 2011 16:29:29 PST</pubDate><guid isPermaLink="false">http://blog.shumaher.net.ru/?p=1274</guid><description>&lt;p&gt;Зачем это нужно, спросят некоторые, ведь есть файловые менеджеры с поддержкой виндовых шар?&lt;br /&gt;
Отвечу — чтобы смотреть сериальчики по Wi-Fi без задержек и с быстрой перемоткой, и слушать музыку папками. Пользователи Linux знают, какая это удобная штука — монтирование всех ресурсов в локальную ФС. И естественно на Андройде тоже можно так сделать. Проблема только в том, что нужен модуль ядра &lt;strong&gt;cifs.ko&lt;/strong&gt; для конкретной прошивки конкретного смартфона. И если его ещё никто не скомпилировал, придётся сделать это самому.&lt;/p&gt;
&lt;p&gt;&lt;span id="more-1274"&gt;&lt;/span&gt;Процесс сборки модулей далее будет описан на примере моего не самого популярного смартфона &lt;strong&gt;HTC Wildfire S&lt;/strong&gt;.&lt;br /&gt;
Девайс с прошивкой 2.13 имеет ядро &lt;strong&gt;2.6.35.10-ga66971c&lt;/strong&gt; (последняя часть номера версии тоже важна, далее станет ясно почему), и не так много свободной внутренней памяти как хотелось бы.&lt;/p&gt;
&lt;p&gt;Данный способ не является догмой, и возможно существуют и более правильные и простые решения данного вопроса.&lt;br /&gt;
&lt;strong&gt;Всё, что написано далее, вы делаете на свой страх и риск!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;br clear="none"&gt;&lt;/p&gt;
&lt;h3&gt;Что понадобится&lt;/h3&gt;
&lt;p&gt;0) Телефон должен быть &lt;strong&gt;root&lt;/strong&gt;'ован, хотя бы &lt;em&gt;временно&lt;/em&gt;!&lt;br /&gt;
&lt;a href="http://4pda.ru/forum/index.php?showtopic=239982&amp;#038;st=680#entry9919289" target="_blank"&gt;Способ для HTC&lt;/a&gt;. Точно работает для WFS, прежде чем делать на другой модели, читайте соответствующий топик.&lt;br /&gt;
Обязательно эмулятор терминала, рекомендую &lt;a href="https://market.android.com/details?id=com.magicandroidapps.bettertermpro" target="_blank"&gt;BTEP&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;1) &lt;strong&gt;Исходники&lt;/strong&gt; "ванильного" ядра с kernel.org, например &lt;a href="http://kernel.org/pub/linux/kernel/v2.6/longterm/v2.6.35/linux-2.6.35.10.tar.gz" target="_blank"&gt;2.6.35.10&lt;/a&gt;&lt;br /&gt;
ИЛИ, что естественно более предпочтительно, исходники ядра именно вашей прошивки (если вы знаете, где их взять). Тут я пишу именно про официальное ядро.&lt;/p&gt;
&lt;p&gt;&lt;br clear="none"&gt;&lt;br /&gt;
2) Файл &lt;strong&gt;.config&lt;/strong&gt; с конфигурацией сборки вашего ядра. Извлекается из смартфона, для HTC так:&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="bash" style="font-family:monospace;"&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;zcat&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;proc&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;config.gz &lt;span style="color: #000000; font-weight: bold;"&gt;&amp;gt;&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;mnt&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sdcard&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;.config&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none"&gt;&lt;br /&gt;
3) &lt;strong&gt;Toolchain&lt;/strong&gt;. Таким странным словом называется кросс-компилятор, которым и собирают всякие полезные штуки для процессоров ARM на обычных i386 компах с линуксом.&lt;br /&gt;
Есть сайт &lt;a href="http://www.gnuarm.com/" target="_blank"&gt;gnuarm.com&lt;/a&gt;, откуда можно скачать кучу архивов с исходниками и собрать всё самому по очереди, а также мне попалось несколько архивов с готовыми бинарниками. Загуглить не составляет труда.&lt;br /&gt;
Но оказывается (для Ubuntu 10.10 и выше) есть способ лучше — всего лишь&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="bash" style="font-family:monospace;"&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;apt-get&lt;/span&gt; build-dep linux &lt;span style="color: #000000; font-weight: bold;"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;apt-get&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;install&lt;/span&gt; g++-&lt;span style="color: #000000;"&gt;4.5&lt;/span&gt;-arm-linux-gnueabi&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none"&gt;&lt;/p&gt;
&lt;h3&gt;Сборка&lt;/h3&gt;
&lt;p&gt;1) Нужно определить несколько &lt;strong&gt;переменных&lt;/strong&gt; для корректной работы toolchain'а:&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="bash" style="font-family:monospace;"&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;export&lt;/span&gt; &lt;span style="color: #007800;"&gt;ARCH&lt;/span&gt;=&lt;span style="color: #ff0000;"&gt;&amp;quot;arm&amp;quot;&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;export&lt;/span&gt; &lt;span style="color: #007800;"&gt;CROSS_COMPILE&lt;/span&gt;=&lt;span style="color: #ff0000;"&gt;&amp;quot;/usr/bin/arm-linux-gnueabi-&amp;quot;&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;export&lt;/span&gt; &lt;span style="color: #007800;"&gt;EXTRAVERSION&lt;/span&gt;=&lt;span style="color: #ff0000;"&gt;&amp;quot;.10-ga66971c&amp;quot;&lt;/span&gt; &lt;span style="color: #666666; font-style: italic;"&gt;# vermagic ядра, у меня эта переменная не работала&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;export&lt;/span&gt; &lt;span style="color: #007800;"&gt;CFLAGS&lt;/span&gt;=&lt;span style="color: #ff0000;"&gt;&amp;quot;-march=armv6&amp;quot;&lt;/span&gt; &lt;span style="color: #666666; font-style: italic;"&gt;# ВАЖНО: архитектура проца, подробнее ниже&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;export&lt;/span&gt; &lt;span style="color: #007800;"&gt;CXXFLAGS&lt;/span&gt;=&lt;span style="color: #ff0000;"&gt;&amp;quot;&lt;span style="color: #007800;"&gt;${CFLAGS}&lt;/span&gt;&amp;quot;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none"&gt;&lt;br /&gt;
Опция &lt;code&gt;-march=armv6&lt;/code&gt; указана для примера, выбирайте архитектуру своего процессора (узнать можно по &lt;strong&gt;cat /proc/cpuinfo&lt;/strong&gt;), ещё есть опция &lt;code&gt;-mtune=&lt;/code&gt; для выбора модели процессора, что указывать для своего я не узнал, поэтому пропустил её.&lt;br /&gt;
Все варианты смотрите в &lt;strong&gt;arm-linux-gnueabi-gcc --target-help&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;br clear="none"&gt;&lt;br /&gt;
2) Сейчас вы должны находиться в директории с уже распакованным ядром, и там же должен быть файл &lt;strong&gt;.config&lt;/strong&gt;. Далее все пути будут относительные.&lt;br /&gt;
По команде&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="bash" style="font-family:monospace;"&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;make&lt;/span&gt; menuconfig&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;запустится конфигуратор сборки ядра. Найдите в меню &lt;code&gt;File systems  ---&gt; Network File Systems&lt;/code&gt; и &lt;code&gt;Native language support&lt;/code&gt; и кнопкой &lt;strong&gt;M&lt;/strong&gt; установите следующие опции:&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="text" style="font-family:monospace;"&gt;&amp;lt;M&amp;gt;   CIFS support (advanced network filesystem, SMBFS successor)
&amp;lt;M&amp;gt;   NLS UTF-8&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Под &lt;code&gt;CIFS support&lt;/code&gt; есть группа дополнительных опций, с которыми можно поэкспериментировать, я их включать не стал.&lt;br /&gt;
Выбор &lt;code&gt;NLS UTF-8&lt;/code&gt; добавляет модуль &lt;strong&gt;nls_utf8.ko&lt;/strong&gt;, который необходим для корректного отображения имен файлов с кириллицей на Windows-серверах.&lt;/p&gt;
&lt;p&gt;Выйдите кнопкой &lt;strong&gt;Esc&lt;/strong&gt; и сохраните &lt;strong&gt;.config&lt;/strong&gt;&lt;br /&gt;
Теперь измените в нём опцию &lt;code&gt;CONFIG_DEBUG_INFO&lt;/code&gt; на:&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="ini" style="font-family:monospace;"&gt;&lt;span style="color: #000099;"&gt;CONFIG_DEBUG_INFO&lt;/span&gt;&lt;span style="color: #000066; font-weight:bold;"&gt;=&lt;/span&gt;&lt;span style="color: #660066;"&gt;n&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;что позволяет исключить отладочную информацию и очень сократить размер файла.&lt;/p&gt;
&lt;p&gt;3) Собственно &lt;strong&gt;сборка модулей&lt;/strong&gt; запускается так:&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="bash" style="font-family:monospace;"&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;make&lt;/span&gt; &lt;span style="color: #007800;"&gt;EXTRAVERSION&lt;/span&gt;=.10-ga66971c modules&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none"&gt;&lt;br /&gt;
Строка &lt;code&gt;EXTRAVERSION=.10-ga66971c&lt;/code&gt; очень важна, только так получается полное соответствие версии ядра и собираемого модуля.&lt;br /&gt;
Опция &lt;strong&gt;modprobe -f&lt;/strong&gt;, которая позволяет это игнорировать и загрузить модуль принудительно, на андройде не работает.&lt;br /&gt;
Не забудьте исправить на свою! Тут указывается не только буквенно-цифровая часть в конце (что и называется &lt;em&gt;vermagic&lt;/em&gt;), но и последнее число основного номера.&lt;br /&gt;
По идее это можно было бы указать через переменные (см. выше), но у меня заработало только так.&lt;/p&gt;
&lt;p&gt;Иначе при загрузке модуля вы получите ошибку&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="text" style="font-family:monospace;"&gt;insmod: can't insert 'cifs.ko': invalid module format&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none"&gt;&lt;br /&gt;
Если всё собралось успешно, проверить версию можно так:&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="bash" style="font-family:monospace;"&gt;modinfo .&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;fs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;cifs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;cifs.ko
modinfo .&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;fs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;nls&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;nls_utf8.ko&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none"&gt;&lt;/p&gt;
&lt;h3&gt;Хранение и загрузка модулей&lt;/h3&gt;
&lt;p&gt;Куда положить получившиеся модули тоже важно.&lt;br /&gt;
Если у вас есть постоянный root с записью в &lt;strong&gt;/system&lt;/strong&gt;, то:&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="bash" style="font-family:monospace;"&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;su&lt;/span&gt;
&lt;span style="color: #c20cb9; font-weight: bold;"&gt;mkdir&lt;/span&gt; &lt;span style="color: #660033;"&gt;-p&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;system&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;lib&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;$&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;uname&lt;/span&gt; -r&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;
&lt;span style="color: #c20cb9; font-weight: bold;"&gt;cp&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt;.ko &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;system&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;lib&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;$&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;uname&lt;/span&gt; -r&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;
&lt;span style="color: #c20cb9; font-weight: bold;"&gt;chown&lt;/span&gt; root:root &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;system&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;lib&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;$&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;uname&lt;/span&gt; -r&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/*&lt;/span&gt;.ko
&lt;span style="color: #c20cb9; font-weight: bold;"&gt;chmod&lt;/span&gt; &lt;span style="color: #000000;"&gt;644&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;system&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;lib&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;$&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;uname&lt;/span&gt; -r&lt;span style="color: #7a0874; font-weight: bold;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/*&lt;/span&gt;.ko&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none"&gt;&lt;br /&gt;
Если доступа на запись в &lt;strong&gt;/system&lt;/strong&gt; нет, модули можно положить в &lt;strong&gt;/lib/modules/$(uname -r)&lt;/strong&gt;, но эта папка &lt;strong&gt;удалится&lt;/strong&gt; после перезагрузки телефона!&lt;br /&gt;
Только если модули лежат в названных выше местах, работает команда &lt;strong&gt;modprobe&lt;/strong&gt;!&lt;br /&gt;
Поэтому я предпочитаю хранить сами файлы *.ko на SD в &lt;strong&gt;/mnt/sdcard/cifs/modules/$(uname -r)&lt;/strong&gt;, а в &lt;strong&gt;/lib&lt;/strong&gt; сделать симлинк.&lt;/p&gt;
&lt;p&gt;Теперь можно попробовать загрузить модули (кстати, выгрузить получается только через &lt;strong&gt;modprobe&lt;/strong&gt;):&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="bash" style="font-family:monospace;"&gt;insmod nls_utf8.ko
insmod cifs.ko&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none"&gt;&lt;br /&gt;
Если ошибок не было, и модуль &lt;strong&gt;cifs.ko&lt;/strong&gt; загрузился (проверить можно командой &lt;strong&gt;lsmod&lt;/strong&gt;), то переходите к чтению подраздела &lt;strong&gt;"Монтирование"&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Но, скорее всего произойдет ошибка, и в выводе &lt;strong&gt;dmesg&lt;/strong&gt; будет примерно следующее:&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="text" style="font-family:monospace;"&gt;cifs: Unknown symbol slow_work_enqueue&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;то необходимо собрать ещё и модуль &lt;strong&gt;slow-work.ko&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;br clear="none"&gt;&lt;/p&gt;
&lt;h3&gt;Сборка slow-work.ko&lt;/h3&gt;
&lt;p&gt;Как я понял, этот модуль необходим не на всех телефонах, поэтому сначала лучше попытаться без него.&lt;/p&gt;
&lt;p&gt;Откройте файл &lt;strong&gt;fs/cifs/Makefile&lt;/strong&gt; и добавьте следующее, не забыв оставить пустую строку в конце:&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;table&gt;&lt;tr&gt;&lt;td class="line_numbers"&gt;&lt;pre&gt;15
16
&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;pre class="make" style="font-family:monospace;"&gt;obj&lt;span style="color: #004400;"&gt;-$&lt;/span&gt;&lt;span style="color: #004400;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #000088;"&gt;CONFIG_CIFS&lt;/span&gt;&lt;span style="color: #004400;"&gt;&amp;#41;&lt;/span&gt; &lt;span style="color: #004400;"&gt;+=&lt;/span&gt; cifs&lt;span style="color: #004400;"&gt;.&lt;/span&gt;o &lt;span style="color: #004400;"&gt;../../&lt;/span&gt;kernel&lt;span style="color: #004400;"&gt;/&lt;/span&gt;slow&lt;span style="color: #004400;"&gt;-&lt;/span&gt;work&lt;span style="color: #004400;"&gt;.&lt;/span&gt;o
 &lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none"&gt;&lt;/p&gt;
&lt;p&gt;Можно пересобрать только сifs.ko&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="bash" style="font-family:monospace;"&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;make&lt;/span&gt; clean
&lt;span style="color: #c20cb9; font-weight: bold;"&gt;make&lt;/span&gt; &lt;span style="color: #007800;"&gt;EXTRAVERSION&lt;/span&gt;=.10-ga66971c &lt;span style="color: #007800;"&gt;M&lt;/span&gt;=fs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;cifs&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Но теперь должен появиться файл &lt;strong&gt;kernel/slow-work.ko&lt;/strong&gt;, который надо грузить через insmod/modprobe &lt;strong&gt;ПЕРВЫМ&lt;/strong&gt;, до cifs.ko.&lt;/p&gt;
&lt;p&gt;Скопировав в телефон эти два модуля и попытавшись загрузить, я столкнулся ещё с одной ошибкой:&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="text" style="font-family:monospace;"&gt;slow_work: Unknown symbol round_jiffies (err 0)&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none"&gt;&lt;br /&gt;
Помогло закомментировать в файле &lt;strong&gt;kernel/slow-work.c&lt;/strong&gt; строки содержащие &lt;code&gt;round_jiffies&lt;/code&gt;:&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;table&gt;&lt;tr&gt;&lt;td class="line_numbers"&gt;&lt;pre&gt;669
670
&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;pre class="c" style="font-family:monospace;"&gt;	&lt;span style="color: #808080; font-style: italic;"&gt;/*mod_timer(&amp;amp;slow_work_cull_timer,
		  round_jiffies(jiffies + SLOW_WORK_CULL_TIMEOUT));*/&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;table&gt;&lt;tr&gt;&lt;td class="line_numbers"&gt;&lt;pre&gt;810
811
&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;pre class="c" style="font-family:monospace;"&gt;	&lt;span style="color: #808080; font-style: italic;"&gt;/*mod_timer(&amp;amp;slow_work_oom_timer/
		  round_jiffies(jiffies + SLOW_WORK_OOM_TIMEOUT));*/&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none"&gt;&lt;br /&gt;
После этого все модули скомпилировались и загрузились в телефоне нормально.&lt;br /&gt;
Если у вас возникли другие ошибки, то попробуйте их загуглить.&lt;/p&gt;
&lt;p&gt;&lt;br clear="none"&gt;&lt;/p&gt;
&lt;h3&gt;Монтирование&lt;/h3&gt;
&lt;p&gt;Само монтирование происходит точно так же, как во всех линуксах, вопрос в том, куда монтировать:&lt;br /&gt;
можно в &lt;strong&gt;/mnt/cifs/share&lt;/strong&gt;, но лишние директории после перезагрузки девайса могут тоже пропасть (не пробовал), поэтому я монтирую прямо на SD-карту, что, кстати, ещё и облегчает открытие шар файловыми менеджерами.&lt;/p&gt;
&lt;p&gt;Монтирование/размонтирование:&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="bash" style="font-family:monospace;"&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;mount&lt;/span&gt; &lt;span style="color: #660033;"&gt;-t&lt;/span&gt; cifs &lt;span style="color: #660033;"&gt;-o&lt;/span&gt; rw,&lt;span style="color: #007800;"&gt;iocharset&lt;/span&gt;=utf8,&lt;span style="color: #007800;"&gt;username&lt;/span&gt;=USER,&lt;span style="color: #007800;"&gt;password&lt;/span&gt;=PASS,&lt;span style="color: #007800;"&gt;file_mode&lt;/span&gt;=0777,&lt;span style="color: #007800;"&gt;dir_mode&lt;/span&gt;=0777 &lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;192.168.1.1&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;share &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;mnt&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sdcard&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;cifs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;share
&lt;span style="color: #c20cb9; font-weight: bold;"&gt;umount&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;mnt&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sdcard&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;cifs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;share &lt;span style="color: #666666; font-style: italic;"&gt;# только по точке монтирования, по имени ресурса не работает&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none"&gt;&lt;br /&gt;
Естественно существуют и более графические способы, без консоли. Но об этом, а так же о том, как немого упростить процедуру загрузки .ko — &lt;strong&gt;в следующий раз&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;br clear="none"&gt;&lt;/p&gt;
&lt;h3&gt;Модули для HTC Wildfire S (прошивка 2.13)&lt;/h3&gt;
&lt;p&gt;Собственно, результат всех трудов:&lt;/p&gt;
&lt;div class="download-block"&gt;&lt;a  title='cifs_2.6.35.10-ga66971c_Wildfire_S_by_Shumaher' href='http://blog.shumaher.net.ru/?wpdmact=process&amp;did=MS5ob3RsaW5r' style="background:url('http://blog.shumaher.net.ru/wp-content/plugins/download-manager/icon/download.png') no-repeat;padding:3px 12px 12px 28px;font:bold 10pt verdana;"&gt;cifs_2.6.35.10-ga66971c_Wildfire_S_by_Shumaher.tar.gz&lt;/a&gt;&lt;br&gt;&lt;small style='margin-left:30px;'&gt;Downloaded 4 times&lt;/small&gt;&lt;/div&gt;
&lt;p&gt;&lt;br clear="none"&gt;&lt;br /&gt;
Или тоже самое в &lt;a href="http://4pda.ru/forum/index.php?showtopic=183336&amp;#038;view=findpost&amp;#038;p=10547035" target="_blank"&gt;теме на 4PDA&lt;/a&gt; (необходима регистрация).&lt;br /&gt;
Тема посвящена приложению для монтирования шар, есть подробный мануал.&lt;/p&gt;
&lt;p&gt;Но почему-то возникают проблемы с записью на шары через ES Проводник, через Root Explorer или терминал все нормально. Помогает &lt;strong&gt;mount -o remount&lt;/strong&gt;. Вряд ли это проблемы модуля, т.к. тогда бы не работало во всех приложениях. Надо попробовать ещё раз пересобрать с другими опциями.&lt;/p&gt;
&lt;p&gt;А на сегодня всё)&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© &lt;strong&gt;Shumaher&lt;/strong&gt; for &lt;a href="http://blog.shumaher.net.ru"&gt;Shumaher’s_Blog&lt;/a&gt;, 29th December 2011 @ 4:29 | &lt;a href="http://blog.shumaher.net.ru/2011/12/29/kak-montirovat-setevye-diski-windows-v-android/"&gt;Permalink&lt;/a&gt; | &lt;a href="http://blog.shumaher.net.ru/2011/12/29/kak-montirovat-setevye-diski-windows-v-android/#comments"&gt;2 Comments&lt;/a&gt;
&lt;br /&gt;
Post tags: &lt;a href="http://blog.shumaher.net.ru/tag/android/" rel="tag"&gt;Android&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/htc/" rel="tag"&gt;HTC&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/linux/" rel="tag"&gt;Linux&lt;/a&gt;
&lt;/small&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Shumahers_Blog/~4/UVXl3QPvg00" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blog.shumaher.net.ru/2011/12/29/kak-montirovat-setevye-diski-windows-v-android/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">2</slash:comments><feedburner:origLink>http://blog.shumaher.net.ru/2011/12/29/kak-montirovat-setevye-diski-windows-v-android/</feedburner:origLink></item><item><title>Опрос: HTC Wildfire S – прошивка 2.13</title><link>http://feedproxy.google.com/~r/Shumahers_Blog/~3/pmnONUdBXcI/</link><category>Text</category><category>Android</category><category>HTC</category><category>Links</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shumaher</dc:creator><pubDate>Fri, 25 Nov 2011 00:28:35 PST</pubDate><guid isPermaLink="false">http://blog.shumaher.net.ru/?p=1262</guid><description>&lt;p&gt;Привет &lt;a href="http://blog.shumaher.net.ru/tag/android/" title="тег: Android"&gt;Android&lt;/a&gt;-юзерам!&lt;br /&gt;
А особенно обладателям &lt;a href="http://devdb.ru/htc_wildfire_s" target="_blank"&gt;HTC Wildfire S&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Вчера ВНЕЗАПНО &lt;a href="http://4pda.ru/forum/index.php?s=&amp;#038;showtopic=239982&amp;#038;view=findpost&amp;#038;p=9994789" target="_blank"&gt;появилась&lt;/a&gt; новая прошивка &lt;strong&gt;2.13&lt;/strong&gt;, а следить за полезной информацией по поводу прошивок в теме на 4PDA становится всё труднее (в основном из-за тупых повторяющихся вопросов от юзеров, которые не трудятся читать не только шапку, но и вообще весь форум), я решил создать опрос о багах в прошивке &lt;strong&gt;2.13&lt;/strong&gt; по сравнению с предыдущими 1.33 и 1.66.&lt;/p&gt;
&lt;p&gt;ССЫЛКА: &lt;a href="http://virtualexs.ru/cgi-bin/exsurveys/survey.cgi?ac=6539" target="_blank"&gt;http://virtualexs.ru/cgi-bin/exsurveys/survey.cgi?ac=6539&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;РЕЗУЛЬТАТЫ: &lt;a href="http://virtualexs.ru/cgi-bin/exsurveys/research.cgi?mode=qresults&amp;#038;ac=6539" target="_blank"&gt;http://virtualexs.ru/cgi-bin/exsurveys/research.cgi?mode=qresults&amp;#038;ac=6539&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Надеюсь, всех заинтересованных не затруднит пройти, дабы помочь мне принять решение — обновляться или нет. &lt;img src='http://blog.shumaher.net.ru/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt;  Да и ещё кому-нибудь может быть полезно.&lt;br /&gt;
Ибо мой телефон пока что без S-OFF и не root'ован, а откатиться назад в случае чего без этого нельзя.&lt;br /&gt;
&lt;br clear="none" /&gt;&lt;br /&gt;
&lt;strong&gt;P.S.&lt;/strong&gt; предложения по дополнению/изменению опроса принимаются тут, &lt;a href="http://4pda.ru/forum/index.php?showuser=1653240" target="_blank"&gt;через ЛС&lt;/a&gt; на 4PDA, или любым другим способом  (через все эти джабберы и т.п.).&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© &lt;strong&gt;Shumaher&lt;/strong&gt; for &lt;a href="http://blog.shumaher.net.ru"&gt;Shumaher’s_Blog&lt;/a&gt;, 25th November 2011 @ 12:28 | &lt;a href="http://blog.shumaher.net.ru/2011/11/25/opros-htc-wildfire-s-proshivka-2-13/"&gt;Permalink&lt;/a&gt; | &lt;a href="http://blog.shumaher.net.ru/2011/11/25/opros-htc-wildfire-s-proshivka-2-13/#comments"&gt;No Comments&lt;/a&gt;
&lt;br /&gt;
Post tags: &lt;a href="http://blog.shumaher.net.ru/tag/android/" rel="tag"&gt;Android&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/htc/" rel="tag"&gt;HTC&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/links/" rel="tag"&gt;Links&lt;/a&gt;
&lt;/small&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Shumahers_Blog/~4/pmnONUdBXcI" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blog.shumaher.net.ru/2011/11/25/opros-htc-wildfire-s-proshivka-2-13/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://blog.shumaher.net.ru/2011/11/25/opros-htc-wildfire-s-proshivka-2-13/</feedburner:origLink></item><item><title>Сражайся с роботом на Google</title><link>http://feedproxy.google.com/~r/Shumahers_Blog/~3/LzkSTOcHdw4/</link><category>Text</category><category>Google</category><category>Links</category><category>warez</category><category>игры</category><category>литература</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shumaher</dc:creator><pubDate>Wed, 23 Nov 2011 02:49:42 PST</pubDate><guid isPermaLink="false">http://blog.shumaher.net.ru/?p=1244</guid><description>&lt;p&gt;Сегодня на главной странице &lt;em&gt;корпорации добра&lt;/em&gt; появился такой логотип:&lt;/p&gt;
&lt;p style="text-align:center"&gt;&lt;a href="https://www.google.com/" target="_blank" title="Google Doodle: Лем"&gt;&lt;img src="http://blog.shumaher.net.ru/wp-content/uploads/2011/11/google-lem.png" alt="Google Doodle: Лем" width="553" height="707" class="aligncenter size-full wp-image-1246" style="border:none; margin:0 auto 0; float:none" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;br clear="all" /&gt;&lt;br /&gt;
На этот раз &lt;a href="http://ru.wikipedia.org/wiki/Google#Google_Doodle" target="_blank"&gt;doodle&lt;/a&gt; посвящён 60-тилетию со дня выхода 1 книги &lt;a href="https://www.google.com/search?q=Станислав+Лем" target="_blank"&gt;Станислава Лема&lt;/a&gt; "Астронавты" (1951).&lt;/p&gt;
&lt;p&gt;И, что бывает не так часто, дудл является интерактивным — нужно решить несколько несложных головоломок, например, победить робота.&lt;br /&gt;
Полный список этих лого можно посмотреть на странице &lt;a href="https://www.google.com/logos/" target="_blank"&gt;Google Doodles&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;К своему стыду, ни разу не читал Лема, так как можно сказать перешёл на аудиокниги, предпочитаю слушать. &lt;img src='http://blog.shumaher.net.ru/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt;&lt;br /&gt;
Особенно рекомендую "Магелланово облако" и "Непобедимый".&lt;br /&gt;
Скачать несколько аудиокниг через DC можно, например, &lt;a href="http://dcp.sovserv.ru/ebook/42504/2009/07/04/lem/" target="_blank"&gt;отсюда&lt;/a&gt;, или из любого другого места в интернетах.&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© &lt;strong&gt;Shumaher&lt;/strong&gt; for &lt;a href="http://blog.shumaher.net.ru"&gt;Shumaher’s_Blog&lt;/a&gt;, 23rd November 2011 @ 14:49 | &lt;a href="http://blog.shumaher.net.ru/2011/11/23/srazhajsja-s-robotom-na-google/"&gt;Permalink&lt;/a&gt; | &lt;a href="http://blog.shumaher.net.ru/2011/11/23/srazhajsja-s-robotom-na-google/#comments"&gt;No Comments&lt;/a&gt;
&lt;br /&gt;
Post tags: &lt;a href="http://blog.shumaher.net.ru/tag/google/" rel="tag"&gt;Google&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/links/" rel="tag"&gt;Links&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/warez/" rel="tag"&gt;warez&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/igry/" rel="tag"&gt;игры&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/literatura/" rel="tag"&gt;литература&lt;/a&gt;
&lt;/small&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Shumahers_Blog/~4/LzkSTOcHdw4" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blog.shumaher.net.ru/2011/11/23/srazhajsja-s-robotom-na-google/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://blog.shumaher.net.ru/2011/11/23/srazhajsja-s-robotom-na-google/</feedburner:origLink></item><item><title>11.11.11 11:11 — mega-GET!!</title><link>http://feedproxy.google.com/~r/Shumahers_Blog/~3/0AGmkY-8OGM/</link><category>Moods</category><category>etc</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shumaher</dc:creator><pubDate>Thu, 10 Nov 2011 23:11:12 PST</pubDate><guid isPermaLink="false">http://blog.shumaher.net.ru/?p=1238</guid><description>&lt;p style="text-align:center"&gt;&lt;img src="http://blog.shumaher.net.ru/wp-content/uploads/2011/11/11-11-11.jpg" alt="11.11.11" title="11.11.11" width="450" height="300" class="aligncenter size-full wp-image-1239" style="border:none; margin:0 auto 0; float:none" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br clear="none" /&gt;&lt;br /&gt;
Мега-&lt;a href="http://lurkmore.ru/Гет" target="_blank"&gt;GET&lt;/a&gt;, чуваки!&lt;br /&gt;
и не просто GET, а &lt;a href="http://lurkmore.ru/Таймгет" target="_blank"&gt;time-GET&lt;/a&gt;!!!&lt;br /&gt;
В следующий раз такое повторится через 100 (сто!) лет, только тогда единичек будет на одну больше.&lt;br /&gt;
вот так вот, %username% &lt;img src='http://blog.shumaher.net.ru/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;&lt;br clear="none" /&gt;&lt;br /&gt;
&lt;small&gt;(на самом деле этот пост я пишу в 2 часа ночи (а не в 11), и он будет опубликован вовремя с помощью wp-cron. надеюсь не налажаю:)&lt;/small&gt;&lt;/p&gt;
&lt;p&gt;ах да —&lt;br /&gt;
&lt;strong&gt;Настроение:&lt;/strong&gt; обычное [— я как всегда скучен]&lt;br /&gt;
хотя надо бы дату отметить что ли..&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© &lt;strong&gt;Shumaher&lt;/strong&gt; for &lt;a href="http://blog.shumaher.net.ru"&gt;Shumaher’s_Blog&lt;/a&gt;, 11th November 2011 @ 11:11 | &lt;a href="http://blog.shumaher.net.ru/2011/11/11/11-11-11-11-11-mega-get/"&gt;Permalink&lt;/a&gt; | &lt;a href="http://blog.shumaher.net.ru/2011/11/11/11-11-11-11-11-mega-get/#comments"&gt;3 Comments&lt;/a&gt;
&lt;br /&gt;
Post tags: &lt;a href="http://blog.shumaher.net.ru/tag/etc/" rel="tag"&gt;etc&lt;/a&gt;
&lt;/small&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Shumahers_Blog/~4/0AGmkY-8OGM" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blog.shumaher.net.ru/2011/11/11/11-11-11-11-11-mega-get/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">3</slash:comments><feedburner:origLink>http://blog.shumaher.net.ru/2011/11/11/11-11-11-11-11-mega-get/</feedburner:origLink></item><item><title>Angry Birds наступают</title><link>http://feedproxy.google.com/~r/Shumahers_Blog/~3/9a7IoC1hV1E/</link><category>Text</category><category>Google</category><category>игры</category><category>спёртое</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shumaher</dc:creator><pubDate>Tue, 08 Nov 2011 10:54:38 PST</pubDate><guid isPermaLink="false">http://blog.shumaher.net.ru/?p=1223</guid><description>&lt;p&gt;...чтобы разрушить ваш блог!&lt;/p&gt;
&lt;p&gt;Разработчики из Nokia [вместо того чтобы делать новые девайсы] создали bookmarklet, запустив который, каждый желающий может пострелять птичками в мерзких зеленых свиней прямо на страницах любого сайта.&lt;/p&gt;
&lt;p&gt;Bookmarklet находится на &lt;a href="http://www.nokia.com.ar/productos/promociones/potencia-tu-experiencia" target="_blank"&gt;этой странице&lt;/a&gt;.&lt;br /&gt;
Просто перетащите большую кнопку с птицей на панель закладок, и, находясь например на своем блоге, нажмите на получившеюся закладку.&lt;/p&gt;
&lt;p&gt;Результат будет примерно таким:&lt;/p&gt;
&lt;p style="text-align:center"&gt;&lt;img src="http://blog.shumaher.net.ru/wp-content/uploads/2011/11/angry-birds.png" alt="Angry Birds" title="Angry Birds" width="696" height="618" class="aligncenter size-full wp-image-1203" style="border:none; margin:0 auto 0; float:none" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br clear="none" /&gt;&lt;br /&gt;
По сравнению с обычной версией целиться надо не в самих свиней, а в элементы страницы (абзацы текста, картинки и т.п.), которые уже должны упасть на хрюшек. Запускать можно только обычных красных птиц, которые ничего не умеют &lt;img src='http://blog.shumaher.net.ru/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /&gt;&lt;br /&gt;
Это несколько сложнее.&lt;/p&gt;
&lt;p&gt;Рядом с птичками есть аналогичный букмарклет игры &lt;strong&gt;Fruit Ninja&lt;/strong&gt;. Тоже довольно забавно.&lt;/p&gt;
&lt;p&gt;Ну а если вы хотите ещё больше &lt;strong&gt;Angry Birds&lt;/strong&gt; — добро пожаловать под кат.&lt;/p&gt;
&lt;p&gt;&lt;span id="more-1223"&gt;&lt;/span&gt;&lt;br /&gt;
Потому что поиграть можно также и в &lt;a href="https://plus.google.com/games/971508122032" target="_blank"&gt;играх Google+&lt;/a&gt;:&lt;/p&gt;
&lt;p style="text-align:center"&gt;&lt;img src="http://blog.shumaher.net.ru/wp-content/uploads/2011/11/angry-birds-2.png" alt="Angry Birds в Google+" title="Angry Birds в Google+" width="620" height="489" class="aligncenter size-full wp-image-1231" style="border:none; margin:0 auto 0; float:none" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br clear="none" /&gt;&lt;br /&gt;
Необходима последняя версия Firefox или Google Chrome.&lt;br /&gt;
Можно соревноваться со своими закругленными друзьями и даже запускать птичек вместе.&lt;/p&gt;
&lt;p&gt;Версия от Nokia найдена на Lifehacker'е.&lt;br /&gt;
Удачной охоты! &lt;img src='http://blog.shumaher.net.ru/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© &lt;strong&gt;Shumaher&lt;/strong&gt; for &lt;a href="http://blog.shumaher.net.ru"&gt;Shumaher’s_Blog&lt;/a&gt;, 8th November 2011 @ 22:54 | &lt;a href="http://blog.shumaher.net.ru/2011/11/08/angry-birds-nastupajut/"&gt;Permalink&lt;/a&gt; | &lt;a href="http://blog.shumaher.net.ru/2011/11/08/angry-birds-nastupajut/#comments"&gt;No Comments&lt;/a&gt;
&lt;br /&gt;
Post tags: &lt;a href="http://blog.shumaher.net.ru/tag/google/" rel="tag"&gt;Google&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/igry/" rel="tag"&gt;игры&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/spertoe/" rel="tag"&gt;спёртое&lt;/a&gt;
&lt;/small&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Shumahers_Blog/~4/9a7IoC1hV1E" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blog.shumaher.net.ru/2011/11/08/angry-birds-nastupajut/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://blog.shumaher.net.ru/2011/11/08/angry-birds-nastupajut/</feedburner:origLink></item><item><title>Как настроить доступ к UltraVNC без пароля</title><link>http://feedproxy.google.com/~r/Shumahers_Blog/~3/j0mxc5f4rRk/</link><category>Text</category><category>Android</category><category>soft</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shumaher</dc:creator><pubDate>Sat, 29 Oct 2011 09:27:19 PDT</pubDate><guid isPermaLink="false">http://blog.shumaher.net.ru/?p=1211</guid><description>&lt;p&gt;&lt;img src="http://blog.shumaher.net.ru/wp-content/uploads/2011/10/uvnc.png" alt="UltraVNC" title="UltraVNC" width="150" height="50" class="alignleft size-full wp-image-1213" style="border:none; margin:0 7px 15px 0; float:left" /&gt;Через пару дней вроде как отмечается &lt;a href="http://ru.wikipedia.org/wiki/Хэллоуин" target="_blank"&gt;Хэллоуин&lt;/a&gt;, поэтому заранее поздравляю всех, кто празднует &lt;s&gt;эту хрень&lt;/s&gt;. &lt;img src='http://blog.shumaher.net.ru/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;p&gt;Но, само собой, дальше будет не об этом)&lt;/p&gt;
&lt;p&gt;В связи с покупкой Android-девайса &lt;a href="http://market.yandex.ru/model.xml?modelid=7023082" target="_blank"&gt;HTC Wildfire S&lt;/a&gt; и из-за отсутствия клиентов Radmin'а под него, пришлось поменять проработавший несколько лет сервер для удалённого управления на &lt;a href="http://www.uvnc.com/" target="_blank"&gt;UltraVNC&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;Некоторые преимущества UltraVNC (по сравнению с Radmin):&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Клиенты под все платформы и ОС (о клиенте под Android ниже)&lt;/li&gt;
&lt;li&gt;Шифрование подключения&lt;/li&gt;
&lt;li&gt;При подключении к Win7 Aero не отключается и мигания экрана не происходит&lt;/li&gt;
&lt;li&gt;Специальных кнопок для передачи буфера обмена с/на удалённый экран нет&lt;/li&gt;
&lt;li&gt;Установка не нужна (при необходимости можно поставить только службу)&lt;/li&gt;
&lt;li&gt;Установка специального видеодрайвера не обязательна&lt;/li&gt;
&lt;li&gt;Возможность отключить клиента с сервера&lt;/li&gt;
&lt;li&gt;И т.д.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;И хотя в андройде есть возможность сохранять пароль подключения, для соединения с другого компьютера в один клик решил настроить вход на сервер без пароля.&lt;br /&gt;
Но сожалению, конфигуратор сервера имеет странный баг, и сделать очевидным способом нельзя.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;ВНИМАНИЕ!&lt;br /&gt;
Нижеописанные действия могут вызвать (и вызовут) угрозу безопасности, если компьютер доступен из интернета напрямую.&lt;br /&gt;
Вы всё делаете на свой страх и риск, и &lt;em&gt;бла-бла-бла... &lt;img src='http://blog.shumaher.net.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /&gt; &lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;span id="more-1211"&gt;&lt;/span&gt;Нужно дописать в &lt;strong&gt;ultravnc.ini&lt;/strong&gt; следующее:&lt;/p&gt;

&lt;div class="wp_syntax"&gt;&lt;div class="code"&gt;&lt;pre class="properties" style="font-family:monospace;"&gt;&lt;span style=""&gt;&amp;#91;&lt;/span&gt;ultravnc&lt;span style=""&gt;&amp;#93;&lt;/span&gt;
&lt;span style="color: #000080; font-weight:bold;"&gt;passwd&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #008000; font-weight:bold;"&gt;NULL&lt;/span&gt;
&lt;span style="color: #000080; font-weight:bold;"&gt;passwd2&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #008000; font-weight:bold;"&gt;NULL&lt;/span&gt;
&lt;span style="color: #000080; font-weight:bold;"&gt;AuthRequired&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #008000; font-weight:bold;"&gt;0&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;br clear="none" /&gt;&lt;/p&gt;
&lt;h3&gt;Клиент под Android&lt;/h3&gt;
&lt;p&gt;&lt;a href="https://market.android.com/details?id=com.realvnc.viewer.android" target="_blank"&gt;VNC Viewer&lt;/a&gt; от RealVNC.&lt;/p&gt;
&lt;p&gt;&lt;br clear="none" /&gt;&lt;/p&gt;
&lt;h3&gt;Проблемы&lt;/h3&gt;
&lt;p&gt;Замечены проблемы при вводе текста на русском (с андройда). Но возможно это объясняется тем, что у меня прошивка с отдельной русификацией клавиатуры, а не официальная русская. Проверить это пока не могу.&lt;/p&gt;
&lt;p&gt;Также один недостаток UltraVNC-сервера всё же нашелся (как всегда): при выходе или переключении юзеров происходит кратковременный дисконнект — сервер отключается не навсегда, потом можно подключиться снова. Естественно речь идёт только при условии запуска в качестве системной службы.&lt;br /&gt;
Хотя, как пишут &lt;a href="http://forum.ultravnc.info/viewtopic.php?t=17869" target="_blank"&gt;тут&lt;/a&gt;, это происходит из-за особенностей самой Windows 7. Но при использовании Radmin'а отключения не бывает, экран только зависает на пару секунд.&lt;br /&gt;
Если удалённая ОС WinXP — всё нормально.&lt;/p&gt;
&lt;p&gt;&lt;br clear="none" /&gt;&lt;br /&gt;
Гибкость настроек и широкий выбор VNC-клиентов даже несмотря на эту небольшую проблему делают UltraVNC идеальным выбором для удалённого управления компьютером под Windows и не только — в мире Linux VNC уже давно является чуть ли ни стандартом.&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© &lt;strong&gt;Shumaher&lt;/strong&gt; for &lt;a href="http://blog.shumaher.net.ru"&gt;Shumaher’s_Blog&lt;/a&gt;, 29th October 2011 @ 20:27 | &lt;a href="http://blog.shumaher.net.ru/2011/10/29/kak-nastroit-dostup-k-ultravnc-bez-parolja/"&gt;Permalink&lt;/a&gt; | &lt;a href="http://blog.shumaher.net.ru/2011/10/29/kak-nastroit-dostup-k-ultravnc-bez-parolja/#comments"&gt;No Comments&lt;/a&gt;
&lt;br /&gt;
Post tags: &lt;a href="http://blog.shumaher.net.ru/tag/android/" rel="tag"&gt;Android&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/soft/" rel="tag"&gt;soft&lt;/a&gt;
&lt;/small&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Shumahers_Blog/~4/j0mxc5f4rRk" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blog.shumaher.net.ru/2011/10/29/kak-nastroit-dostup-k-ultravnc-bez-parolja/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://blog.shumaher.net.ru/2011/10/29/kak-nastroit-dostup-k-ultravnc-bez-parolja/</feedburner:origLink></item><item><title>Фильтрация offline-сообщений в Яндекс.Почте</title><link>http://feedproxy.google.com/~r/Shumahers_Blog/~3/yRH3P9L-0tA/</link><category>Text</category><category>IM</category><category>Jabber</category><category>Яндекс</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shumaher</dc:creator><pubDate>Fri, 30 Sep 2011 12:47:49 PDT</pubDate><guid isPermaLink="false">http://blog.shumaher.net.ru/?p=1199</guid><description>&lt;p&gt;При поступлении offline-сообщений в jabber от Яндекса, они оказываются в почте вот таким вот образом:&lt;/p&gt;
&lt;p style="text-align:center"&gt;&lt;img src="http://blog.shumaher.net.ru/wp-content/uploads/2011/09/yandex-mail.png" alt="Яндекс.Почта" title="Яндекс.Почта" width="523" height="247" class="aligncenter size-full wp-image-1203"  style="border:none; margin:0 auto 0; float:none" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br clear="none" /&gt;&lt;br /&gt;
В Gmail аналогичные письма попадают в специальную папку Чаты, а в Я.Почте они сыпятся сразу во Входящие, и более того загружаются через POP3. И лично мне не нравится в основном это.&lt;br /&gt;
Очень странно, что в настройках нет опции, вообще отключающей приход таких писем.&lt;br /&gt;
К счастью через фильтры можно очень легко от них избавиться.&lt;/p&gt;
&lt;p&gt;&lt;span id="more-1199"&gt;&lt;/span&gt;&lt;br /&gt;
Конечно, можно фильтровать просто по теме письма, но если Яндекс решит поменять эту тему, то придёться обновлять и правило. Есть способ лучше.&lt;br /&gt;
Что выгодно отличает почту Яндекса от почты Гугла — это возможность включать в фильтры &lt;em&gt;любой заголовок&lt;/em&gt; письма. Действительно любой. Потому что кроме общеизвестных &lt;strong&gt;From&lt;/strong&gt;, &lt;strong&gt;To&lt;/strong&gt;, &lt;strong&gt;Subject&lt;/strong&gt; в письмах содержится &lt;a href="http://mail.google.com/support/bin/answer.py?answer=29436&amp;#038;hl=en" target="_blank"&gt;куча других&lt;/a&gt;. &lt;small&gt;(справка специально дана на английском языке, на русский почему-то был переведён и код примеров, что неверно)&lt;/small&gt;&lt;br /&gt;
И, несмотря на посты в блогах, в Gmail это сделать нельзя.&lt;/p&gt;
&lt;p&gt;Так что для того чтобы избавиться от писем с jabber-сообщениями, достаточно создать такой &lt;a href="http://mail.yandex.ru/#setup/filters" target="_blank"&gt;фильтр&lt;/a&gt;:&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
Если заголовок «&lt;strong&gt;Received&lt;/strong&gt;» содержит «&lt;strong&gt;online.yandex.net&lt;/strong&gt;»&lt;br /&gt;
— переместить письмо в папку «Jabber»&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
&lt;small&gt;(кавычки в правилах писать не надо)&lt;/small&gt;&lt;/p&gt;
&lt;p&gt;В качестве действия я указал перемещение в папку, потому что ещё можно отключить загрузку писем по POP3 из любых папок в настройках &lt;a href="http://mail.yandex.ru/#setup/client" target="_blank"&gt;почтовых программ&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Таким нехитрым образом можно полностью избавиться от этой особенности jabber'a от Яндекса, при этом пропущенные сообщения не пропадают навсегда, а по-прежнему доступны.&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© &lt;strong&gt;Shumaher&lt;/strong&gt; for &lt;a href="http://blog.shumaher.net.ru"&gt;Shumaher’s_Blog&lt;/a&gt;, 30th September 2011 @ 23:47 | &lt;a href="http://blog.shumaher.net.ru/2011/09/30/filtracija-offline-soobschenij-v-yandex-pochte/"&gt;Permalink&lt;/a&gt; | &lt;a href="http://blog.shumaher.net.ru/2011/09/30/filtracija-offline-soobschenij-v-yandex-pochte/#comments"&gt;No Comments&lt;/a&gt;
&lt;br /&gt;
Post tags: &lt;a href="http://blog.shumaher.net.ru/tag/im/" rel="tag"&gt;IM&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/jabber/" rel="tag"&gt;Jabber&lt;/a&gt;, &lt;a href="http://blog.shumaher.net.ru/tag/yandex/" rel="tag"&gt;Яндекс&lt;/a&gt;
&lt;/small&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Shumahers_Blog/~4/yRH3P9L-0tA" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blog.shumaher.net.ru/2011/09/30/filtracija-offline-soobschenij-v-yandex-pochte/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://blog.shumaher.net.ru/2011/09/30/filtracija-offline-soobschenij-v-yandex-pochte/</feedburner:origLink></item></channel></rss>

