<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10russianfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;AkMGRXc5cSp7ImA9WxNUFko.&quot;"><id>tag:blogger.com,1999:blog-30744165</id><updated>2009-11-08T14:07:04.929+03:00</updated><title>Записки дебианщика</title><subtitle type="html">В этом блоге публикуются заметки и решения, найденные в процессе работы, освоения и жизни в дистрибутиве Debian GNU/Linux.&lt;a href="http://mydebianblog.mofuse.mobi/?sm=1"&gt;&lt;sup&gt;[мобильная версия]&lt;/sup&gt;&lt;/a&gt;</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://mydebianblog.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://mydebianblog.blogspot.com/" /><link rel="hub" href="http://pubsubhubbub.appspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default?start-index=11&amp;max-results=10&amp;redirect=false&amp;orderby=published&amp;v=2" /><author><name>virens</name><uri>http://www.blogger.com/profile/12420257446841864325</uri><email>mydebianblog@gmail.com</email></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>247</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>10</openSearch:itemsPerPage><link rel="self" href="http://feeds.feedburner.com/debianletters" type="application/atom+xml" /><feedburner:emailServiceId>debianletters</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2Fdebianletters" 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.bloglines.com/sub/http://feeds.feedburner.com/debianletters" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Fdebianletters" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://lenta.yandex.ru/settings.xml?name=feed&amp;url=http%3A%2F%2Ffeeds.feedburner.com%2Fdebianletters" src="http://lenta.yandex.ru/i/addfeed.gif">?????? ? ??????.?????</feedburner:feedFlare><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry gd:etag="W/&quot;C0UAQXk7eSp7ImA9WxNUEUw.&quot;"><id>tag:blogger.com,1999:blog-30744165.post-7041665296935525085</id><published>2009-11-02T00:34:00.000+03:00</published><updated>2009-11-02T00:34:00.701+03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-02T00:34:00.701+03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="навигация" /><title>Маршруты и треки с помощью GPS-навигаторов Garmin</title><content type="html">Отслеживание перемещений по GPS (tracking) это довольно интересная и полезная возможность современных навигаторов. Например, вы пошли в поход или просто в парк, и долго блуждали, пока искали правильный путь - со включённым отслеживанием вы потом сможете дома посмотреть, как можно было бы срезать путь. Или, что тоже важно, по этим данным можно найти обратную дорогу.&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;Собственно, на навигаторе всё довольно просто: в зависимости от модели, трекинг включается одной-двумя кнопками (в Garmin GPSmap 60CSX - главное меню - Track - ON). После этого на экране должны оставаться точки, которые обозначают ваш путь по местности. Эти данные в абсолютных координатах хранятся в самом навигаторе, и скачать их оттуда можно в Linux довольно просто.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);"&gt;Скачиваем треки в гармине под Linux&lt;/span&gt;&lt;br /&gt;Для этого нам понадобится консольная утилита &lt;span style="font-weight: bold;"&gt;gpsbabel&lt;/span&gt;. Её исходники нужно скачать с &lt;a href="http://www.gpsbabel.org/downloaded.html"&gt;официального сайта&lt;/a&gt; (или посмотреть в репозиториях своего любимого дистрибутива) и собрать. Далее в нашем распоряжении появляется собственно gpsbabel, с помощью которого треки и скачиваем. Вот как это происходит (утянуто у тов. &lt;a href="http://sovety.blogspot.com/"&gt;jetxee&lt;/a&gt; из &lt;a href="http://sovety.blogspot.com/2008/06/garmin-gpsmap-60cx-linux.html"&gt;этого поста&lt;/a&gt;):&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;Можно загрузить трек и точки маршрута с устройства при помощи программы &lt;/span&gt;&lt;code style="font-style: italic;"&gt;gpsbabel&lt;/code&gt;&lt;span style="font-style: italic;"&gt;, из командной строки. Если устройство подключено к &lt;/span&gt;&lt;code style="font-style: italic;"&gt;/dev/ttyUSB0&lt;/code&gt;&lt;span style="font-style: italic;"&gt;, а нужен трек с точками в формате GPX, то получить его можно так:&lt;/span&gt;&lt;blockquote style="font-style: italic;"&gt;&lt;code&gt;$ gpsbabel -t -w -i garmin -f /dev/ttyUSB0 -o gpx -F мойтрек.gpx&lt;/code&gt;&lt;/blockquote&gt;&lt;span style="font-style: italic;"&gt;Другой способ получить эту информацию — скопировать с устройства GPX-файл в режиме USB Mass Storage, а потом уже его конверировать-преобразовывать… Этот файл с названием вида ГГГГММДД.gpx появляется на карточке памяти только если включена соответствующая функция в приборе. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);"&gt;Ну и зачем это всё надо!?&lt;/span&gt;&lt;br /&gt;Ответ на этот вопрос я хочу дать в виде примера. Вот, например, был я не так давно в замечательном парке Покровское-Глебово. Парк этот замечателен в первую очередь тем, что его вовсе не так просто найти, как это может показаться на первый взгляд, а найдя - ориентироваться в нём. Для меня это превратилось в увлекательное путешествие и освежение в памяти навыков спортивного ориентирования на местности, чем я увлекался в горячую пионерскую юность...&lt;br /&gt;&lt;br /&gt;Итак, по результатам моих хождений &lt;strike&gt;по мукам&lt;/strike&gt;по парку, появился файл с расширением GPX, который я скачал с помощью &lt;span style="font-weight: bold;"&gt;gpsbabel&lt;/span&gt; (см. немного выше). И что с ним, спрашивается, делать? А вот что. Скачиваем замечательную программу JOSM, которая позволяет редактировать карты &lt;a class="ext-link" href="http://www.openstreetmap.org/"&gt;OpenStreetMap&lt;/a&gt; (OSM). Как легко догадаться, программа на Java, и просит эту саму джаву не древнее версии 1.5. Выглядит сама программа примерно так:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_hM8AMxgJLzw/StsSDkzIk_I/AAAAAAAABM8/w4p_ye_Sdpk/s1600-h/JOSM1.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_hM8AMxgJLzw/StsSDkzIk_I/AAAAAAAABM8/w4p_ye_Sdpk/s320/JOSM1.jpg" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_hM8AMxgJLzw/StsSDkzIk_I/AAAAAAAABM8/w4p_ye_Sdpk/s320/JOSM1.jpg" alt="" id="BLOGGER_PHOTO_ID_5393924831333356530" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;После этого можем скачать карту с OpenStreetMap и загрузить её в JOSM для просмотра. Интерфейс на Java, так что набираемся терпения и ждём, пока отрисуется. Далее можно открыть скачанный трек в формате GPX и он должен стать новым слоем (над картой). Тонкая серая извилистая линия, помеченная на скриншоте красными стрелками, это и есть мой путь по парку.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_hM8AMxgJLzw/StsSNk6ihJI/AAAAAAAABNE/KRPEacOeppM/s1600-h/JOSM2.jpg"&gt;&lt;img src="http://2.bp.blogspot.com/_hM8AMxgJLzw/StsSNk6ihJI/AAAAAAAABNE/KRPEacOeppM/s320/JOSM2.jpg" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_hM8AMxgJLzw/StsSNk6ihJI/AAAAAAAABNE/KRPEacOeppM/s320/JOSM2.jpg" alt="" id="BLOGGER_PHOTO_ID_5393925003163108498" border="0" /&gt;&lt;/a&gt;Собственно, из него я потом узнал, как пройти более коротким путём и что в парке мне не удалось с первого захода посмотреть. Довольно удобно так же использовать трекинг для редактирования OpenStreetMap, особенно если вы хорошо знаете район - с помощью треков можно вносить в карты улицы и дома. Но об этом как-нибудь в следующий раз...&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/30744165-7041665296935525085?l=mydebianblog.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=-jVkpbXGouY:tOr8X7Hiyb8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=-jVkpbXGouY:tOr8X7Hiyb8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=-jVkpbXGouY:tOr8X7Hiyb8:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?i=-jVkpbXGouY:tOr8X7Hiyb8:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/debianletters/~4/-jVkpbXGouY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://mydebianblog.blogspot.com/feeds/7041665296935525085/comments/default" title="Комментарии к сообщению" /><link rel="replies" type="text/html" href="http://mydebianblog.blogspot.com/2009/11/gps-garmin.html#comment-form" title="Комментарии: 4" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/7041665296935525085?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/7041665296935525085?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/debianletters/~3/-jVkpbXGouY/gps-garmin.html" title="Маршруты и треки с помощью GPS-навигаторов Garmin" /><author><name>virens</name><uri>http://www.blogger.com/profile/12420257446841864325</uri><email>mydebianblog@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="09310948239609827054" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_hM8AMxgJLzw/StsSDkzIk_I/AAAAAAAABM8/w4p_ye_Sdpk/s72-c/JOSM1.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://mydebianblog.blogspot.com/2009/11/gps-garmin.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEMAQX8_fyp7ImA9WxNWGUw.&quot;"><id>tag:blogger.com,1999:blog-30744165.post-7915714106179555310</id><published>2009-10-19T04:34:00.001+04:00</published><updated>2009-10-19T04:34:00.147+04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-19T04:34:00.147+04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="навигация" /><title>Garmin 60CSx: технические особенности устройства и карты для Garmin</title><content type="html">В этом посте мне хотелось собрать раскиданные там и сям разные технические особенности GPS-навигатора Garmin 60CSx. Кроме того, несколько замечаний о картах для Garmin 60CSx. Собственно, о них далее.&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);"&gt;Где скачать карты для Garmin?&lt;/span&gt; Собственно, на торрентах или пойти и честно воспользоваться картами OpenStreetMaps.&lt;br /&gt;Уже готовые карты OSM по городам есть &lt;a href="http://gpsmapsearch.com/osm/mp/"&gt;здесь&lt;/a&gt;. Или можно отправиться на сайт &lt;a href="http://www.openstreetmap.org/"&gt;OpenStreetMaps&lt;/a&gt;, зарегистрироваться там и скачать карту нужной области честно и бесплатно.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;Для этого заходим на &lt;a href="http://www.openstreetmap.org/"&gt;http://www.openstreetmap.org/&lt;/a&gt; и регистрируемся. Далее выделяем область карты, которую хотим экспортировать (для последующей закачки в навигатор), жмём  на Экспорт и просим карту в OSM формате - через некоторое время получаем файлик map.osm. Теперь скачиваем &lt;span style="font-weight: bold;"&gt;mkmap&lt;/span&gt; &lt;a href="http://www.mkgmap.org.uk/snapshots/"&gt;отсюда&lt;/a&gt;, как завещал ув.тов. jetxee в своей бессмертной &lt;a href="http://sovety.blogspot.com/2009/02/openstreetmap-gps-garmin.html"&gt;статье&lt;/a&gt;, оно на джаве и требует сановскую джаву версии старше 1.5. С её помощью компилируем в полученный OSM-файл в img формат. Получившийся файл &lt;a href="http://mydebianblog.blogspot.com/2009/08/gps-garmin-gpsmap-60csx.html"&gt;заливаем в гармин с помощью sendmap&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Однако с картами OpenStreetMap есть одна проблема: не дают скачать сразу большую карту (я с жадности запросил у сервера векторную карту всей Москвы с областью). Если нужны большие карты, например, всей РФ, можно податься на &lt;a href="http://downloads.cloudmade.com/asia/russian_federation#breadcrumbs"&gt;Cloudmade.com&lt;/a&gt; и скачать оттуда. Этот сайт содержит уже скачанные карты местностей в формате OSM (которые мы потом перегоняем в img для Гармина) и собственно файл IMG, который можно закачать в навигатор.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);"&gt;Закачивание карт в Garmin 60CSx&lt;/span&gt;&lt;br /&gt;По сообщениям разных осведомлённых &lt;a href="http://garmincolorado.wikispaces.com/Colorado+vs+60csx?responseToken=0d2043c26672e892377d6aa5d871a52fb"&gt;орлов&lt;/a&gt;, во внутренней памяти (internal) может находиться до 3 карт, тогда как на флешке (microSD) - только одна. Хотя, как совершенно справедливо попенял многоуважаемый комментатор &lt;a href="http://diaword.vox.com/" rel="nofollow"&gt;diaword&lt;/a&gt;,  на самом деле, никто не мешает скачать несколько карт и потом собрать из них одну. Это &lt;a href="http://wiki.openstreetmap.org/wiki/OSM_Map_On_Garmin"&gt;можно сделать&lt;/a&gt; с помощью утилиты &lt;a href="http://wiki.openstreetmap.org/wiki/Mkgmap"&gt;Mkgmap&lt;/a&gt;, а её ключик &lt;span style="font-style: italic;"&gt;--gmapsupp&lt;/span&gt; позволяет собрать результирующую карту из нескольких отдельных и потом залить в навигатор. Файл gmapsupp.img является архивом из нескольких карт *.img, причем их можно как упаковывать, так и обратно распаковывать с помощью &lt;span style="font-style: italic;"&gt;sendmap&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;А такой финт, как закачка четырёх файлов карт сразу:&lt;br /&gt;&lt;blockquote&gt;Gmapbmap.img -- базовая карта&lt;br /&gt;Gmapsupp.img -- ваша карта&lt;br /&gt;Gmapsup2.img -- другая карта&lt;br /&gt;Gmapprom.img -- другая карта&lt;br /&gt;&lt;/blockquote&gt;на Garmin 60CSx не проходит, к сожалению.&lt;br /&gt;&lt;br /&gt;Размер одной карты (img-файл) не может превышать 2Gb, хотя карта может состоять из кусков, число этих кусков не может быть больше 2025.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);"&gt;Комментарий насчёт экрана Garmin 60CSx&lt;/span&gt;&lt;br /&gt;В Сети есть много критики по поводу низкого разрешения (160х240 пикселей) трансфлективного экрана у 60CSx. Критика понятна, так как есть другие навигаторы с более высоким разрешением. Но друзья, мы же помним, зачем гарминовцы эту модель выпускали? Правильно, для туристов, рыбоволовов, любителей активного отдыха и прочих экстремалов. Там важно не любоваться на карты, а быстро понять, где ты находишься.&lt;br /&gt;&lt;br /&gt;Чтобы дать понять всю прелесть экрана 60CSx в походных условиях, вот фотография face-to-face: мой телефон Motorola 1200AE и 60CSx. На мобильнике подсветка включена на полную катушку, а на Гармине она не включена вообще.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_hM8AMxgJLzw/Str_rYUeQsI/AAAAAAAABM0/TQ5GnT6iMGY/s1600-h/garminvsmotorola.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_hM8AMxgJLzw/Str_rYUeQsI/AAAAAAAABM0/TQ5GnT6iMGY/s320/garminvsmotorola.jpg" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_hM8AMxgJLzw/Str_rYUeQsI/AAAAAAAABM0/TQ5GnT6iMGY/s320/garminvsmotorola.jpg" alt="" id="BLOGGER_PHOTO_ID_5393904624457368258" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;И кто из них продержится дольше - думаю, понятно.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);"&gt;Память и подключение&lt;/span&gt;&lt;br /&gt;Подключение происходит через miniUSB кабель как в режиме MassStorage, так и по специльному протоколу. И тот, и другой вариант &lt;a href="http://mydebianblog.blogspot.com/2009/08/gps-garmin-gpsmap-60csx.html"&gt;поддерживаются&lt;/a&gt; в Linux.&lt;br /&gt;В комплекте идёт карта microSD на 64Mb, максимальная поддерживаемая ёмкость карты 4GB micro SDHC.&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);"&gt;&lt;br /&gt;Батареи&lt;/span&gt;&lt;br /&gt;Удобнее использовать комплект аккумуляторов: от двух NiMH аккумуляторов ёмкости 2700mA*h устройство будет работать 16-20 часов.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/30744165-7915714106179555310?l=mydebianblog.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=QTPwNca0g94:Ulaw90Ba958:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=QTPwNca0g94:Ulaw90Ba958:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=QTPwNca0g94:Ulaw90Ba958:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?i=QTPwNca0g94:Ulaw90Ba958:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/debianletters/~4/QTPwNca0g94" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://mydebianblog.blogspot.com/feeds/7915714106179555310/comments/default" title="Комментарии к сообщению" /><link rel="replies" type="text/html" href="http://mydebianblog.blogspot.com/2009/10/garmin-60csx-garmin.html#comment-form" title="Комментарии: 6" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/7915714106179555310?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/7915714106179555310?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/debianletters/~3/QTPwNca0g94/garmin-60csx-garmin.html" title="Garmin 60CSx: технические особенности устройства и карты для Garmin" /><author><name>virens</name><uri>http://www.blogger.com/profile/12420257446841864325</uri><email>mydebianblog@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="09310948239609827054" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_hM8AMxgJLzw/Str_rYUeQsI/AAAAAAAABM0/TQ5GnT6iMGY/s72-c/garminvsmotorola.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">6</thr:total><feedburner:origLink>http://mydebianblog.blogspot.com/2009/10/garmin-60csx-garmin.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ck8CQX0_fyp7ImA9WxNXGE4.&quot;"><id>tag:blogger.com,1999:blog-30744165.post-3507235981992873824</id><published>2009-10-05T00:55:00.001+04:00</published><updated>2009-10-06T16:07:40.347+04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-06T16:07:40.347+04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="научное" /><title>QtOctave - графическая оболочка для Octave</title><content type="html">Хотя MATLAB и правит миром численных математических расчётов, в этом деле ему зреет очень хорошая альтернатива - GNU/Octave. И хотя у Октавы много проблем, таких как слабая документация и в основном консольный режим работы, есть и хорошие новости: проект QtOctave, ставящий своей целью сделать графическую среду разработки для Octave, весьма неплох. О нём и будет этот небольшой пост.&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;&lt;big&gt;&lt;span style="color: rgb(153, 102, 51);"&gt;&lt;b&gt;Установка&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/big&gt;Для того, чтобы поставить QtOctave, вам потребуется скачать бинарник с сайта авторов и установить пакет &lt;span style="font-weight: bold;"&gt;octave&lt;/span&gt; в вашем дистрибутиве. Собранный и готовый бинарник прямо с сайта &lt;a href="http://forja.rediris.es/frs/download.php/856/qtoctave_binaries_Linux_i386-0.8.1_svn166.binaries.tar.bz2"&gt;qtoctave_binaries_Linux_i386-0.8.1_svn166.binaries.tar.bz2&lt;/a&gt; . Далее устанавливаем QtOctave по инструкции, то есть делаем sudo ./install.sh&lt;br /&gt;Установка пройдёт быстро и легко.&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);"&gt;&lt;big&gt;&lt;b&gt;&lt;br /&gt;Работа&lt;/b&gt;&lt;/big&gt;&lt;/span&gt;&lt;br /&gt;Собственно, открываем графическую консольку и пишем: qtoctave. Перед вами развернётся графическая благодать, в которой замигает разноцветными огнями вся неимоверная мощь Octave. Разворачиваем одно из окон и открываем там свой скрипт на MATLAB\Octave. Выглядит это так:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_hM8AMxgJLzw/Slt2l_GC0XI/AAAAAAAABJc/FvFFoya0sBE/s1600-h/qtoctave1.jpg"&gt;&lt;img src="http://3.bp.blogspot.com/_hM8AMxgJLzw/Slt2l_GC0XI/AAAAAAAABJc/FvFFoya0sBE/s320/qtoctave1.jpg" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://3.bp.blogspot.com/_hM8AMxgJLzw/Slt2l_GC0XI/AAAAAAAABJc/FvFFoya0sBE/s320/qtoctave1.jpg" alt="" id="BLOGGER_PHOTO_ID_5358006576651358578" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;По умолчанию можно просматривать переменные, список последних команд и файлов. В общем-то, для работы особенно больше ничего и не нужно. Развернув окно внутренней консоли в QtOctave, можно работать непосредственно с командной строкой Октавы и при этом видеть список активных переменных.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_hM8AMxgJLzw/Slt28rMKLBI/AAAAAAAABJk/e2iVvvY7lgo/s1600-h/qtoctave2.jpg"&gt;&lt;img src="http://2.bp.blogspot.com/_hM8AMxgJLzw/Slt28rMKLBI/AAAAAAAABJk/e2iVvvY7lgo/s320/qtoctave2.jpg" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_hM8AMxgJLzw/Slt28rMKLBI/AAAAAAAABJk/e2iVvvY7lgo/s320/qtoctave2.jpg" alt="" id="BLOGGER_PHOTO_ID_5358006966445288466" border="0" /&gt;&lt;/a&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;Сразу из замеченных недостатков: в графической консоли внутри QtOctave нельзя использовать подсказку по клавише TAB, при этом оно переходит в режим правки. Так же хотелось бы попенять на то, что QtOctave &lt;/span&gt;&lt;span class="fullpost"&gt;не сохраняет расположение окон. &lt;/span&gt;&lt;span class="fullpost"&gt;Но это в общем не так бросается в глаза: при некотором навыке работы с Октавой или Матлабом работать вы будете не с консолью, а с редактором, &lt;a href="http://mydebianblog.blogspot.com/2009/07/matlab-linux.html"&gt;как уже описывалось ранее&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Так же в комплекте идёт справка в формате HTML, причём весьма добротная. Конечно, до матлабовской ещё очень и очень далеко, но уже что-то. И главное, что это в комплекте, то есть batteries included.&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_hM8AMxgJLzw/Slt32t10A0I/AAAAAAAABJs/UKkHfHKSkJg/s1600-h/qtoctave3.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_hM8AMxgJLzw/Slt32t10A0I/AAAAAAAABJs/UKkHfHKSkJg/s320/qtoctave3.jpg" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_hM8AMxgJLzw/Slt32t10A0I/AAAAAAAABJs/UKkHfHKSkJg/s320/qtoctave3.jpg" alt="" id="BLOGGER_PHOTO_ID_5358007963589280578" border="0" /&gt;&lt;/a&gt;&lt;span class="fullpost"&gt;То есть можно не только работать в Octave, но ещё и получать справку по командам, хотя и весьма базовую.&lt;br /&gt;&lt;br /&gt;&lt;big&gt;&lt;span style="color: rgb(153, 102, 51);"&gt;&lt;b&gt;&lt;br /&gt;Заключение&lt;/b&gt;&lt;/span&gt;&lt;/big&gt;&lt;br /&gt;В целом впечатление QtOctave производит очень благоприятное. Хотя Octave можно пользоваться таким же способом, как и MATLAB, &lt;a target="_blank" href="http://mydebianblog.blogspot.com/2009/07/matlab-linux.html"&gt;о чём уже писалось&lt;/a&gt;, просмотр переменных и история команд в графическом виде это очень полезные возможности QtOctave. Хочется пожелать успехов проекту и дальнейшего развития.&lt;br /&gt;&lt;br /&gt;Так же можно посмотреть в сторону&lt;/span&gt; Python и SciPy. Как советуют &lt;a href="http://www.blogger.com/profile/00441172787160329883"&gt;товарищи питонисты&lt;/a&gt;, для этого есть следующие инструменты:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.pythonxy.com/foreword.php" rel="nofollow"&gt;Python(x,y)&lt;/a&gt; готовый дистрибутив питона для научных нужд (batteries included).&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.google.com/p/spyderlib/" rel="nofollow"&gt;SPYDER&lt;/a&gt; (графическая оболочка, входит также в Python(x,y) в дополнение к Eclipse)&lt;/li&gt;&lt;/ul&gt;Так же можно посмотреть в сторону IPython.&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/30744165-3507235981992873824?l=mydebianblog.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=6rMCavBqJiU:NpR-oEQcRA0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=6rMCavBqJiU:NpR-oEQcRA0:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=6rMCavBqJiU:NpR-oEQcRA0:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?i=6rMCavBqJiU:NpR-oEQcRA0:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/debianletters/~4/6rMCavBqJiU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://mydebianblog.blogspot.com/feeds/3507235981992873824/comments/default" title="Комментарии к сообщению" /><link rel="replies" type="text/html" href="http://mydebianblog.blogspot.com/2009/10/qtoctave-octave.html#comment-form" title="Комментарии: 7" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/3507235981992873824?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/3507235981992873824?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/debianletters/~3/6rMCavBqJiU/qtoctave-octave.html" title="QtOctave - графическая оболочка для Octave" /><author><name>virens</name><uri>http://www.blogger.com/profile/12420257446841864325</uri><email>mydebianblog@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="09310948239609827054" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_hM8AMxgJLzw/Slt2l_GC0XI/AAAAAAAABJc/FvFFoya0sBE/s72-c/qtoctave1.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">7</thr:total><feedburner:origLink>http://mydebianblog.blogspot.com/2009/10/qtoctave-octave.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkEAQX07fyp7ImA9WxNQFEU.&quot;"><id>tag:blogger.com,1999:blog-30744165.post-4729006107079261031</id><published>2009-09-21T01:04:00.000+04:00</published><updated>2009-09-21T01:04:00.307+04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-09-21T01:04:00.307+04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="текст" /><category scheme="http://www.blogger.com/atom/ns#" term="обработка" /><category scheme="http://www.blogger.com/atom/ns#" term="научное" /><title>Научная поисковая система на вашем Linux-десктопе</title><content type="html">Некоторое время назад я писал о &lt;span style="font-weight: bold;"&gt;SWISH&lt;/span&gt;++, и вот теперь мне хотелось бы обобщить написанное в более краткой форме. Проблема поиска нужной статьи, если не помнишь точно где она находится в каталогах, действительно серьёзная.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);"&gt;1. Поиск дубликатов&lt;/span&gt;&lt;br /&gt;Итак, когда я накачал нужных мне статей из Интернета, я прежде всего смотрю, есть ли они у меня в коллекции с помощью &lt;span style="font-weight: bold;"&gt;fdupes&lt;/span&gt;. Эта программа ищет дубликаты файлов:&lt;br /&gt;&lt;blockquote&gt;$ fdupes -rd .&lt;br /&gt;&lt;/blockquote&gt;&lt;span class="fullpost"&gt;Точка в конце говорит о том, что искать дубликаты &lt;span style="font-weight: bold;"&gt;fdupes&lt;/span&gt; будет, начиная с текущего каталога, поэтому можно в каталоге со статьями сделать подкаталог 1/  и набросать туда скачанные статьи.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Fdupes&lt;/span&gt; сравнивает файлы как побайтово, так и с помощью подсчёта md5-суммы, работает невероятно быстро, сортировка производится в полуавтоматическом режиме: программа выводит в консоли дублирующиеся файлы и спрашивает, какой из них оставить. Об этом уже говорилось &lt;a href="http://mydebianblog.blogspot.com/2006/10/blog-post_16.html"&gt;в статье о подходах&lt;/a&gt; к сортировке PDF-файлов.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);"&gt;2. Индексация текста в PDF-файлах&lt;/span&gt;&lt;br /&gt;Сначала из &lt;/span&gt;&lt;span class="fullpost"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;документов pdf вытаскиваем текст, &lt;/span&gt;для чего просим утилиту &lt;span style="font-weight: bold;"&gt;find&lt;/span&gt; найти все файлы PDF и для каждого найденного выполнить &lt;span style="font-weight: bold;"&gt;pdftotext&lt;/span&gt; без выдачи предупреждений и без вставки символов разрыва страницы:&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt;find -name '*.pdf' -exec pdftotext -nopgbrk -q {} \; &lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;Надо отметить, что &lt;span style="font-weight: bold;"&gt;pdftotext&lt;/span&gt; хорошо работает только для английского языка, на котором, в общем, все статьи и написаны.&lt;br /&gt;&lt;br /&gt;Теперь индексируем все текстовые файлы - в этом нам поможет собрат SWISH++ по имени  &lt;span style="font-weight: bold;"&gt;index++&lt;/span&gt; для индексации текстовых файлов:&lt;br /&gt;&lt;blockquote style="font-style: italic;"&gt;index++ -e "text:*.txt" .&lt;br /&gt;&lt;/blockquote&gt;Точка в конце означает, что поиск ведётся с текущего каталога. Подробнее об индексации и автоматизации этого процесса сказано &lt;a href="http://mydebianblog.blogspot.com/2006/10/pdf.html"&gt;здесь&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="fullpost"&gt;В результате в текущем каталоге появится файл &lt;span style="font-style: italic;"&gt;swish++.index&lt;/span&gt; где, собственно, лежит информация об индексировани файлов. Теперь всё готово для поиска.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);"&gt;3. Ищем в архиве статей нужное&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;Для поиска &lt;a href="http://mydebianblog.blogspot.com/2006/10/pdf-swish.html"&gt;используем&lt;/a&gt; &lt;span class="fullpost"&gt;&lt;span style="font-weight: bold;"&gt;search++&lt;/span&gt; которая найдёт по нашему запросу в индексированной базе  &lt;span style="font-style: italic;"&gt;swish++.index&lt;/span&gt; файлы. Вот пример поиска статьи по математической морфологии, в которых нет упоминания про медицину:&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt;$ search++ morphology and erosion and dilation not medicine&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;Мгновение спустя вижу результат &lt;span style="color: rgb(153, 153, 153);"&gt;(вывод сокращён)&lt;/span&gt;:&lt;br /&gt;&lt;blockquote&gt;&lt;small&gt;# results: 125&lt;/small&gt;&lt;br /&gt;&lt;small&gt; 99 ./Krylov2.txt 3771 Krylov2.txt&lt;/small&gt;&lt;br /&gt;&lt;small&gt; 49 ./13300407.txt 3103 13300407.txt&lt;/small&gt;&lt;br /&gt;&lt;small&gt; 46 ./morph1.slides.printing.6.txt 4369 morph1.slides.printing.6.txt&lt;/small&gt;&lt;br /&gt;&lt;small&gt; 37 ./lecture_morphology_sara.txt 6746 lecture_morphology_sara.txt&lt;/small&gt;&lt;br /&gt;&lt;small&gt; 30 ./SIGGRAPH2002_Sketch-Mitchell.txt 5308 SIGGRAPH2002_Sketch-Mitchell.txt&lt;/small&gt;&lt;br /&gt;&lt;small&gt; 26 ./MorphologicalImageProcessing.txt 7642 MorphologicalImageProcessing.txt&lt;/small&gt;&lt;br /&gt;&lt;small&gt; 25 ./phdsymp2002_ledda.txt 8298 phdsymp2002_ledda.txt&lt;/small&gt;&lt;br /&gt;&lt;small&gt; 23 ./lab2_manual.txt 9313 lab2_manual.txt&lt;/small&gt;&lt;br /&gt;&lt;small&gt; 23 ./Project 1.txt 9946 Project 1.txt&lt;/small&gt;&lt;br /&gt;&lt;small&gt; 22 ./morphology.txt 11212 morphology.txt&lt;/small&gt;&lt;br /&gt;&lt;small&gt; 22 ./edg/morphology.txt 11212 morphology.txt&lt;/small&gt;&lt;br /&gt;&lt;small&gt; 22 ./slides-6-geometry.txt 11717 slides-6-geometry.txt&lt;/small&gt;&lt;br /&gt;&lt;small&gt; 22 ./V1BFOGG8.txt 10797 V1BFOGG8.txt&lt;/small&gt;&lt;br /&gt;&lt;small&gt; 18 ./71650638.txt 13978 71650638.txt&lt;/small&gt;&lt;br /&gt;&lt;/blockquote&gt; Первая колонка - релевантность, вторая - расположение файла относительно текущей директории, третья - размер файла, четвёртая - имя. Просто и понятно.&lt;br /&gt;&lt;br /&gt;Теперь в консольке набираю kdpf &lt;/span&gt;&lt;span class="fullpost"&gt;&lt;small&gt;./Krylov2.pdf&lt;/small&gt;&lt;/span&gt; и смотрю нужную мне статью. И всё.&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);"&gt;Ссылки&lt;/span&gt;&lt;br /&gt;Собственно, документации о SWISH++ очень мало, так что в основном я решил собрать свои предыдущие записи в один пост:&lt;br /&gt;- &lt;a href="http://mydebianblog.blogspot.com/2006/10/blog-post_16.html"&gt;поиск и удаление дубликатов файлов с помощью fdupes&lt;/a&gt;;&lt;br /&gt;- &lt;a href="http://mydebianblog.blogspot.com/2006/10/pdf.html"&gt;выделение текста из PDF-файлов и их индексация&lt;/a&gt;;&lt;br /&gt;- &lt;a href="http://mydebianblog.blogspot.com/2006/10/pdf-swish.html"&gt;поиск в индексированных файлах с помощью SWISH++&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/30744165-4729006107079261031?l=mydebianblog.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=pmla2zY5j3k:JnfWcAcSkek:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=pmla2zY5j3k:JnfWcAcSkek:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=pmla2zY5j3k:JnfWcAcSkek:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?i=pmla2zY5j3k:JnfWcAcSkek:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/debianletters/~4/pmla2zY5j3k" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://mydebianblog.blogspot.com/feeds/4729006107079261031/comments/default" title="Комментарии к сообщению" /><link rel="replies" type="text/html" href="http://mydebianblog.blogspot.com/2009/09/linux.html#comment-form" title="Комментарии: 9" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/4729006107079261031?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/4729006107079261031?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/debianletters/~3/pmla2zY5j3k/linux.html" title="Научная поисковая система на вашем Linux-десктопе" /><author><name>virens</name><uri>http://www.blogger.com/profile/12420257446841864325</uri><email>mydebianblog@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="09310948239609827054" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">9</thr:total><feedburner:origLink>http://mydebianblog.blogspot.com/2009/09/linux.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DU8FQX48eSp7ImA9WxNRFU0.&quot;"><id>tag:blogger.com,1999:blog-30744165.post-8658134889669331382</id><published>2009-09-09T17:54:00.004+04:00</published><updated>2009-09-09T18:50:10.071+04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-09-09T18:50:10.071+04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="обработка" /><category scheme="http://www.blogger.com/atom/ns#" term="изображение" /><title>Чтение MAT-файлов MATLAB в nip2</title><content type="html">То, о чём так долго говорили красные, белые, зелёные, и даже голубые - свершилось. Теперь замечательный графический анализатор nip2 полностью поддерживает чтение MAT-файлов, в которых MATLAB записывает данные рабочего окружения с двойной точностью (double precision). И хотя в основной ветке этой возможности ещё нет, в SVN-репозитории оно уже появилось благодаря скромным усилиям автора этих строк и John Cupitt - одного из авторов nip2 и библиотеки VIPS.&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;На всякий случай:&lt;/span&gt; nip2 это &lt;a href="http://mydebianblog.blogspot.com/2007/09/nip2.html"&gt;графический &lt;span style="font-style: italic;"&gt;анализатор&lt;/span&gt; изображений&lt;/a&gt; (это не привычный gimp или photoshop), который создавался специально &lt;a href="http://mydebianblog.blogspot.com/2006/11/nip2.html"&gt;для работы с огромными файлами&lt;/a&gt; и научных применений. Но он может быть полезен и простым пользователям: с его помощью легко открывать, просматривать, кадрировать огромные файлы. Или, например, склеить две фотографии в одну - как склеивают панорамы.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);font-size:130%;" &gt;Для чего нужно открывать MAT-файлы в nip2&lt;/span&gt;&lt;br /&gt;Упреждая возможные вопросы "а зачем нам проприетарный mat когда есть csv" отвечу: запись в открытый формат CSV в матлабе происходит несколько нетривиальным образом и можно записать только одну переменную. Более того, если забыть указать несколько важных параметров, можно сильно потерять в точности сохраняемых данных. И главное, что уже много результатов научных экспериментов сохранено в MAT-формате.&lt;br /&gt;&lt;br /&gt;Периодически возникает необходимость быстро просмотреть эти данные (это изображения) в каком-нибудь просмотрщике без необходимости загружать MATLAB. Таковых просмотрщиков я не знаю - открыть MAT-файл может только GNU/Octave с помощью библиотеки matio. Так что эта возможность очень нужна и востребована.&lt;br /&gt;&lt;span style="color: rgb(204, 153, 51);font-size:130%;" &gt;&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);"&gt;Установка nip2 и VIPS&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Хотя об установке nip2 я &lt;a href="http://mydebianblog.blogspot.com/2008/04/nip2.html"&gt;уже писал&lt;/a&gt;, тем не менее, повторюсь. Сначала нужно  &lt;span class="fullpost"&gt;скачать &lt;a href="http://www.vips.ecs.soton.ac.uk/supported/"&gt;отсюда&lt;/a&gt; из support-зоны самый свежак. Сначала собираем VIPS и устанавливаем пакет, потом собираем nip2 и тоже устанавливаем. Последние версии (vips7.18.XX) со старыми версиями Питона могут не собраться, так что для этого при сборке пользуем ключ --without-python и собираем&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Для себя и своих студентов я собрал пакеты под Debian Etch и архитектуру i386 &lt;span style="color: rgb(153, 153, 153);"&gt;(да-да, я в конкретном бронепоезде)&lt;/span&gt;:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://narod.ru/disk/12968013000/nip2_7.18.2-1_i386.deb.html"&gt;nip2-7.18.2-alpha&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://narod.ru/disk/12968209000/vips_7.18.2-1_i386.deb.html"&gt;vips-7.18.2-alpha&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;После этого добавляем программу в меню вашего оконного менеджера или запускаем прямо из графической консоли командой &lt;span style="font-weight: bold; font-style: italic;"&gt;nip2.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(204, 153, 51);font-size:130%;" &gt;&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);"&gt;Просмотр MAT-файлов MATLAB в nip2&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Здесь всё довольно просто: в диалоге открытия явно указываем, что хотим просмотреть &lt;span style="font-style: italic;"&gt;MATLAB's mat-files&lt;/span&gt;  и далее открываем такой файл. Пример на скриншоте - легендарная Лена&lt;br /&gt;(&lt;a href="http://mydebianblog.blogspot.com/2007/02/blog-post_12.html"&gt;а кто такая Лена?&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_hM8AMxgJLzw/Sqe6upeSlMI/AAAAAAAABMM/Gxbbg4_dTpk/s1600-h/nip2mat-lena.jpg"&gt;&lt;img src="http://2.bp.blogspot.com/_hM8AMxgJLzw/Sqe6upeSlMI/AAAAAAAABMM/Gxbbg4_dTpk/s320/nip2mat-lena.jpg" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_hM8AMxgJLzw/Sqe6upeSlMI/AAAAAAAABMM/Gxbbg4_dTpk/s320/nip2mat-lena.jpg" alt="" id="BLOGGER_PHOTO_ID_5379473590486996162" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;А теперь примерчик посложнее - загружаем изображение усреднённых темновых шумов цифровой камеры и берём от них Фурье-преобразование (на том же скриншоте открыта в левом нижнем углу неудачная фотография от скоростной съёмки):&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_hM8AMxgJLzw/Sqe92L6-orI/AAAAAAAABMU/ywlGaxgK7lk/s1600-h/nip2mat-lena2.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_hM8AMxgJLzw/Sqe92L6-orI/AAAAAAAABMU/ywlGaxgK7lk/s320/nip2mat-lena2.jpg" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_hM8AMxgJLzw/Sqe92L6-orI/AAAAAAAABMU/ywlGaxgK7lk/s320/nip2mat-lena2.jpg" alt="" id="BLOGGER_PHOTO_ID_5379477018528096946" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Так что наши данные теперь можно просмотреть без томительного ожидания, пока MATLAB откроет эти файлы. Кстати о данных в форматах CSV и MAT...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);font-size:130%;" &gt;&lt;span style="font-weight: bold;"&gt;Данные в CSV и MAT-форматах: особенности записи MATLAB и просмотр nip2&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;Эту заметку я хотел сделать отдельным постом, но решил выложить здесь же. Появился тут вопрос: как сохраняет MATLAB данные с плавающей точкой в разных форматах. Для этого мы провели маленькое расследование...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(153, 102, 51);font-size:100%;" &gt;&lt;b&gt;Подготовка&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Ответ состоит из нескольких частей. Да, Матлаб может сохранять данные в своём формате mat, и его может прочесть та же Octave (теперь и nip2 с использованием библиотеки matio). Для проверки сгенерируем матрицу&lt;br /&gt;&lt;br /&gt;&gt;&gt; a = magic(5)&lt;br /&gt;&lt;br /&gt;a =&lt;br /&gt;&lt;br /&gt; 17    24     1     8    15&lt;br /&gt; 23     5     7    14    16&lt;br /&gt;  4     6    13    20    22&lt;br /&gt; 10    12    19    21     3&lt;br /&gt; 11    18    25     2     9&lt;br /&gt;&lt;br /&gt;&gt;&gt; b =a./3&lt;br /&gt;&lt;br /&gt;b =&lt;br /&gt;&lt;br /&gt; 5.6667    8.0000    0.3333    2.6667    5.0000&lt;br /&gt; 7.6667    1.6667    2.3333    4.6667    5.3333&lt;br /&gt; 1.3333    2.0000    4.3333    6.6667    7.3333&lt;br /&gt; 3.3333    4.0000    6.3333    7.0000    1.0000&lt;br /&gt; 3.6667    6.0000    8.3333    0.6667    3.0000&lt;br /&gt;&lt;br /&gt;&gt;&gt; b(2,2)=1.09878432753084573248523475&lt;br /&gt;&gt;&gt; b(2,3)=2^20&lt;br /&gt;&lt;br /&gt;Видим только первые четыре числа после запятой - это потому, что по умолчанию MATLAB отображает числа в коротком формате. Изменить этот формат можно командой &lt;b&gt;format type.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Чтобы сделать задачу более наглядной, в матрицу записали два числа: одно с разными числами после запятой, а второе - очень большое (2^20). Теперь сохраняем в MAT-файл и CSV командами:&lt;br /&gt;&lt;blockquote&gt; save('magic5x5doubleafterformatlong.mat', 'b'); &lt;span style="color: rgb(153, 153, 153);"&gt;&lt;i&gt;%% это сохраняется MAT-файл&lt;br /&gt;&lt;/i&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;csvwrite('magic5x5double-afterformatlong.csv',b); &lt;/span&gt;&lt;i&gt;%% это сохраняется CSV-файл&lt;br /&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;/blockquote&gt;Теперь открываем их и сравниваем с исходниками...&lt;br /&gt;&lt;big&gt;&lt;b&gt;&lt;span style="color: rgb(153, 102, 51);"&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;Данные в MAT-файле.&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/big&gt;В MAT-файлах всё чисто: он сохраняет так же, как и открывает.&lt;br /&gt;&lt;blockquote&gt;&gt;&gt; load('magic5x5doubleafterformatlong.mat')&lt;br /&gt;&gt;&gt; b&lt;br /&gt;b =&lt;br /&gt;1.0e+06 *&lt;br /&gt;Columns 1 through 4&lt;br /&gt;0.00000566666667   0.00000800000000   0.00000033333333   0.00000266666667&lt;br /&gt;0.00000766666667   0.00000109878433   1.04857600000000   0.00000466666667&lt;br /&gt;0.00000133333333   0.00000200000000   0.00000433333333   0.00000666666667&lt;br /&gt;0.00000333333333   0.00000400000000   0.00000633333333   0.00000700000000&lt;br /&gt;0.00000366666667   0.00000600000000   0.00000833333333   0.00000066666667&lt;br /&gt;Column 5&lt;br /&gt;0.00000500000000&lt;br /&gt;0.00000533333333&lt;br /&gt;0.00000733333333&lt;br /&gt;0.00000100000000&lt;br /&gt;0.00000300000000&lt;br /&gt;&gt;&gt; b(2,2)&lt;br /&gt;ans =&lt;br /&gt;1.09878432753085&lt;br /&gt;&gt;&gt; b(2,3)&lt;br /&gt;ans =&lt;br /&gt;  1048576&lt;br /&gt;&lt;/blockquote&gt;&lt;big&gt;&lt;b&gt;&lt;span style="color: rgb(153, 102, 51);"&gt;&lt;br /&gt;Данные в CSV-файле.&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/big&gt;А вот тут начинаются приключения. MATLAB записывает в CSV формат данные с точностью, такой же, как при отображении. То есть, например, при отображении используется вывод только первых 4 чисел после запятой - следовательно, сохранены они в CSV будут так же.&lt;br /&gt;&lt;br /&gt;&gt;&gt; b(2,2)&lt;br /&gt;&lt;br /&gt;ans =&lt;br /&gt;&lt;br /&gt; 1.0988&lt;br /&gt;&lt;br /&gt;С большими числами тоже самое: они сохраняются в экспоненциальной форме с точностью, установленной для отображения (по умолчанию 4 знака). Это так же видно в CSV-файле (записывает с той точностью, с которой отображает). У одной и той же матрицы, сохранённой в CSV и MAT сходный размер.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&gt;&gt; b(2,3)=2^20&lt;br /&gt;&lt;br /&gt;b =&lt;br /&gt;&lt;br /&gt;1.0e+06 *&lt;br /&gt;&lt;br /&gt; 0.0000    0.0000    0.0000    0.0000    0.0000&lt;br /&gt; 0.0000    0.0000    1.0486    0.0000    0.0000&lt;br /&gt; 0.0000    0.0000    0.0000    0.0000    0.0000&lt;br /&gt; 0.0000    0.0000    0.0000    0.0000    0.0000&lt;br /&gt; 0.0000    0.0000    0.0000    0.0000    0.0000&lt;br /&gt;&lt;br /&gt;&gt;&gt; b(2,3)&lt;br /&gt;&lt;br /&gt;ans =&lt;br /&gt;&lt;br /&gt;  1048600&lt;br /&gt;&lt;br /&gt;&gt;&gt; 2^20&lt;br /&gt;&lt;br /&gt;ans =&lt;br /&gt;&lt;br /&gt;  1048576&lt;br /&gt;&lt;br /&gt;Именно так оно и происходит по умолчанию: MATLAB просто округляет числа при записи в CSV до четырёх значащих чисел. Для того, чтобы запись происходила с нужной нам точностью в CSV, следует использовать команду dlmwrite и явно указывать точность. Например так:&lt;br /&gt;&lt;br /&gt;&gt;&gt; dlmwrite('magic5x5double1-dlmwrite-precision12f.csv', b, 'precision', '%12.12f')&lt;br /&gt;&lt;br /&gt;Это записывает матрицу в CSV формат с переменной &lt;b&gt;b&lt;/b&gt; и обеспечивает точность 12 значащих чисел. Так что стоит аккуратнее обходиться с командами записи: csvwrite вам запишет, конечно, переменную, но с малой точностью. Это может стать источником трудноуловимых проблем.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);font-size:100%;" &gt;&lt;b&gt;Отображение данных в MAT и CSV форматах в nip2&lt;/b&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;Теперь, возвращаясь к теме поста, в последних версиях (nip2 и vips &gt; 7.18.2) замечательного графического анализатора nip2  можно просматривать не только данные в CSV, но и в MAT-файлах. Это очень и очень удобная возможность: например, усреднённое изображение в MAT-файле можно проанализировать и посмотреть без необходимости загружать лишний раз MATLAB. Особенно это актуально, если изображение в MAT-файле больших размеров. Точность просмотра CSV и MAT-данных составляет 5 значащих цифр.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/30744165-8658134889669331382?l=mydebianblog.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=HknX0l2JNyo:0kLxNbif9AU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=HknX0l2JNyo:0kLxNbif9AU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=HknX0l2JNyo:0kLxNbif9AU:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?i=HknX0l2JNyo:0kLxNbif9AU:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/debianletters/~4/HknX0l2JNyo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://mydebianblog.blogspot.com/feeds/8658134889669331382/comments/default" title="Комментарии к сообщению" /><link rel="replies" type="text/html" href="http://mydebianblog.blogspot.com/2009/09/mat-matlab-nip2.html#comment-form" title="Комментарии: 3" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/8658134889669331382?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/8658134889669331382?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/debianletters/~3/HknX0l2JNyo/mat-matlab-nip2.html" title="Чтение MAT-файлов MATLAB в nip2" /><author><name>virens</name><uri>http://www.blogger.com/profile/12420257446841864325</uri><email>mydebianblog@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="09310948239609827054" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_hM8AMxgJLzw/Sqe6upeSlMI/AAAAAAAABMM/Gxbbg4_dTpk/s72-c/nip2mat-lena.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://mydebianblog.blogspot.com/2009/09/mat-matlab-nip2.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUMAQXwyfSp7ImA9WxNREks.&quot;"><id>tag:blogger.com,1999:blog-30744165.post-7224094771697840771</id><published>2009-09-07T00:04:00.000+04:00</published><updated>2009-09-07T00:04:00.295+04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-09-07T00:04:00.295+04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="мультимедиа" /><title>MOCP - Music On Console player, или Играй, гармонь!</title><content type="html">Время от времени нужно выходить в консоль и гасить иксы - для изменения иксовых же настроек или обновлений, связанных с иксовыми пакетами. И сидеть в это время в тишине совсем не хочется. Конечно, можно запустить&lt;a href="http://mydebianblog.blogspot.com/2007/04/xmms.html"&gt; XMMS&lt;/a&gt; на ноутбуке и проигрывать музыку оттуда, но есть решение лучше: MOCP.  Запустил MOCP в консольке, скрыл - и музыка заиграла. Вышел из иксов что-то поправить в консоли -  а гармонь-то поёт :-)&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="right"&gt;&lt;span style="color: rgb(153, 153, 153);"&gt;Если б гармошка умела&lt;br /&gt;всё говорить, не тая...&lt;br /&gt;&lt;small&gt;&lt;i&gt;(с) Песня, из которой слов не выкинуть&lt;/i&gt;&lt;/small&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Об этом замечательном плеере уже писал Андрей aka vonderer &lt;a href="http://vonderer.blogspot.com/2006/10/music-on-console-xmms.html"&gt;здесь&lt;/a&gt;. Из той песни тоже слов не выкинуть, но я немного подробнее остановлюсь на управлении плеером. Как любое хорошее приложение, оно управляется горячими клавишами, и основные клавиатурные  сокращения такие:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;ENTER – переключиться в директорию и\или начать воспроизведение песни&lt;/li&gt;&lt;li&gt;o – проиграть URL (например, интернет-радиостанции)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;p или пробел – пауза&lt;/li&gt;&lt;li&gt;s – стоп&lt;/li&gt;&lt;li&gt;l – переключиться между одно- и двухпанельным режимом&lt;br /&gt;&lt;/li&gt;&lt;li&gt;a – добавить текущий файл в список воспроизведения&lt;/li&gt;&lt;li&gt;A – добавить текущую директорию в список воспроизведения&lt;/li&gt;&lt;li&gt;C – очистить список воспроизведения&lt;/li&gt;&lt;li&gt;q – отключить консольный интерфейс (сервер MOC будет продолжать воспроизведение, к нему можно подключиться снова, набрав &lt;b&gt;mocp&lt;/b&gt;)&lt;/li&gt;&lt;li&gt;Q – отключение MOC-сервера (прекращение воспроизведения)&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;Так же можно воспользоваться более широкими возможностями по управлению плеером с помощью следующих клавиатурных сокращений:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;n      -- проиграть следующую песню из списка&lt;/li&gt;&lt;li&gt;  b      -- проиграть предыдущую песню из списка&lt;/li&gt;&lt;li&gt;S      -- воспроизведение в произвольном порядке&lt;/li&gt;&lt;li&gt;  R      -- повторяет выбранную песню циклически&lt;br /&gt;&lt;/li&gt;&lt;li&gt;u      -- перемещает элемент списка воспроизведения вверх&lt;br /&gt;&lt;/li&gt;&lt;li&gt;  j      -- перемещает элемент списка воспроизведения вниз&lt;/li&gt;&lt;li&gt;g или /      -- ищет заданную строку в именах фалов песен&lt;br /&gt;&lt;/li&gt;&lt;li&gt;r      -- перечитать директорию заново&lt;br /&gt;&lt;/li&gt;&lt;li&gt;f      -- переключить режим отображения с имён файлов на теги&lt;/li&gt;&lt;li&gt;  TAB    -- переключение между списком воспроизведения и файлами песен&lt;br /&gt;&lt;/li&gt;&lt;li&gt;H      -- показывает скрытые файлы&lt;/li&gt;&lt;li&gt;  Ctrl-t -- показать или убрать длительность песни в списке&lt;br /&gt;&lt;/li&gt;&lt;li&gt;  Ctrl-f -- показать или убрать формат песни&lt;br /&gt;&lt;/li&gt;&lt;li&gt;U      -- переместиться на уровень выше в директории&lt;/li&gt;&lt;li&gt;  a      -- добавить файл к списку воспроизведения&lt;br /&gt;&lt;/li&gt;&lt;li&gt;  A      -- добавить каталог к списку воспроизведения&lt;/li&gt;&lt;li&gt;  C      -- очистить список воспроизведения&lt;/li&gt;&lt;li&gt;  V      -- сохранить список воспроизведения&lt;/li&gt;&lt;li&gt;  d      -- удалить отмеченные песни из списка воспроизведения&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Наконец, управление громкостью&lt;br /&gt;&lt;ul&gt;&lt;li&gt;  &lt; -- уменьшить громкость на  1%&lt;/li&gt;&lt;li&gt;  ,      --  уменьшить громкость на  5%&lt;/li&gt;&lt;li&gt;   &gt;—  увеличить громкость на  1%&lt;/li&gt;&lt;li&gt;  .      — увеличить громкость на 5%&lt;/li&gt;&lt;/ul&gt;Если вы запамятовали какую-нибудь команду, то получить справку по клавиатурным сокращениям можно клавишей "?"&lt;br /&gt;&lt;br /&gt;Язык осин и берёз MOCP по умолчанию отображает славяно-греко-латинской мешаниной, что легко &lt;a href="http://vonderer.blogspot.com/2006/10/music-on-console-xmms.html"&gt;поправить&lt;/a&gt;.  Для этого копируем пример конфига отсюда:&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;blockquote&gt;$ cp /usr/share/doc/moc/examples/config.example.gz ~/.moc/&lt;br /&gt;$ cd ~/.moc&lt;br /&gt;# chown $USER config.example.gz&lt;br /&gt;&lt;/blockquote&gt;Где $USER - имя пользователя в системе. После этого разархивируем конфиг:&lt;br /&gt;&lt;blockquote&gt;$ gunzip config.example.gz&lt;br /&gt;$ mv config.example config&lt;br /&gt;&lt;/blockquote&gt;И правим его своим любимым текстовым редактором. Чтобы заставить MOCP дружить с кириллицей в ID3v1-заголовках, необходимо найти строку:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;#ID3v1TagsEncoding = WINDOWS-1250&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;и превратить ее в&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span class="fullpost"&gt;ID3v1TagsEncoding = WINDOWS-1251&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;И всё, играй, гармонь!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/30744165-7224094771697840771?l=mydebianblog.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=up-45C_70KE:EPWkNz3jHeo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=up-45C_70KE:EPWkNz3jHeo:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=up-45C_70KE:EPWkNz3jHeo:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?i=up-45C_70KE:EPWkNz3jHeo:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/debianletters/~4/up-45C_70KE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://mydebianblog.blogspot.com/feeds/7224094771697840771/comments/default" title="Комментарии к сообщению" /><link rel="replies" type="text/html" href="http://mydebianblog.blogspot.com/2009/07/mocp-music-on-console-player.html#comment-form" title="Комментарии: 18" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/7224094771697840771?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/7224094771697840771?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/debianletters/~3/up-45C_70KE/mocp-music-on-console-player.html" title="MOCP - Music On Console player, или Играй, гармонь!" /><author><name>virens</name><uri>http://www.blogger.com/profile/12420257446841864325</uri><email>mydebianblog@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="09310948239609827054" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">18</thr:total><feedburner:origLink>http://mydebianblog.blogspot.com/2009/07/mocp-music-on-console-player.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkEGQX86eip7ImA9WxNSFks.&quot;"><id>tag:blogger.com,1999:blog-30744165.post-4433343008701852973</id><published>2009-08-31T00:37:00.000+04:00</published><updated>2009-08-31T00:37:00.112+04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-31T00:37:00.112+04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="разное" /><title>Как обналичить чек Google Adsense в Москве</title><content type="html">Некоторое время назад на блоге появилась контекстная реклама Google AdSense, чтобы несколько поддержать моё материальное благосостояние. И вот я получил свой долгожданный чек на целых сто восемнадцать долларов. Казалось бы - что такого, всего лишь обналичить чек? Но вот тут-то история и начинается...&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;Пусть этот пост немного не в тему блога, просто мало ли кому пригодится (или я снова буду обналичивать чек от AdSense). Итак, мы имеем чек Google AdSense, который выпустил Citibank в США. Такие чеки выглядят так:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_hM8AMxgJLzw/Sltz0GMa_sI/AAAAAAAABJU/GEYlYz-FVOQ/s1600-h/GoogleAdSenseVirensEdited.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_hM8AMxgJLzw/Sltz0GMa_sI/AAAAAAAABJU/GEYlYz-FVOQ/s320/GoogleAdSenseVirensEdited.jpg" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 309px; height: 320px;" src="http://4.bp.blogspot.com/_hM8AMxgJLzw/Sltz0GMa_sI/AAAAAAAABJU/GEYlYz-FVOQ/s320/GoogleAdSenseVirensEdited.jpg" alt="" id="BLOGGER_PHOTO_ID_5358003520540442306" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Всего делов - обналичить чек. Для этого мы обзваниваем окрестные банки и говорим, как &lt;a href="http://lecactus.ru/2008/05/14/2149/"&gt;совершенно правильно советуют старшие товарищи&lt;/a&gt;, &lt;span style="color: rgb(0, 0, 0);"&gt;что нужно &lt;strong&gt;СДАТЬ ИМЕННОЙ ЧЕК НА ИНКАССО&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;Услуга это не массовая, и скорее всего придётся ехать в центральное (головное) отделение банка. Операция проводится довольно долго (у меня заняло около 40 минут вместе с открытием счёта), так что запасаемся терпением. Ниже - итоги моих странствий со счастливым концом :-)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="text-decoration: underline;"&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;p style="font-weight: bold; color: rgb(153, 102, 51);"&gt;&lt;span style="font-size:130%;"&gt;Краткий обзор пунктов приёма именных чеков Google AdSense на инкассо в Москве&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Сразу заявляю: я звонил в те банки, которые либо близко от меня территориально, либо где у меня уже открыты счета. Все данные актуальны на &lt;span style="font-weight: bold;"&gt;Июль 2009 года&lt;/span&gt;. Так как всё течёт и меняется, лучше перед походом не полениться и позвонить в банк.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Итак, чеки Google AdSense соглашается брать:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold; color: rgb(51, 204, 0);"&gt;РБР, Русский банк развития (ФК Открытие):&lt;/span&gt; комиссия 1% от суммы (минимум 5$) + 900 руб (!) на почтовые расходы + комиссии сторонних банков. Время - не более 1 месяца. Только в головном отделении. Требуется открытие счёта.&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(102, 51, 0); font-weight: bold;"&gt;Банк Москвы:&lt;/span&gt; комиссия 350 рублей, вроде (?) счёт открывать не обязательно, сроков назвать не могут.&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(0, 153, 0); font-weight: bold;"&gt;Юниаструм банк:&lt;/span&gt; комиссия 500 рублей (= 21$), открытие счёта, головное отделение. Время 1-2 месяца.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;В Райффайзен Банк, Альфа-банк и БинБанк можно не звонить и не тратить время - чеков не берут.&lt;br /&gt;&lt;/p&gt;&lt;p style="font-style: italic;"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="font-style: italic;"&gt;Теперь личные впечатления.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Несмотря на то, что в РБР у меня открыт счёт, комиссия у них просто грабительская: 1% от суммы и 900 рублей на почту + комиссия сторонних банков. Я, конечно, понимаю здоровое желание банков подзаработать, но всё имеет свои пределы.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Банк Москвы так же порадовал: по телефону бодро пообещали, что обналичить могут в любом офисе, но я, зная цену таким обещаниям, поехал в головное отделение. Дальше начинался цирк с конями: в головном офисе обналичка чеков только до 18:00 (хотя отделение работает до 20:00) и срока обналички назвать не могут (!). Такой восхитительный бардак, впрочем, неудивителен, судя по &lt;a href="http://www.banki.ru/services/responses/bank/?id=3425"&gt;отзывам клиентов о самом банке&lt;/a&gt;.&lt;br /&gt;&lt;/p&gt;Решив, что нервы дороже, поехал в Юниаструм банк. Путь &lt;a href="http://www.uniastrum.ru/ru/branches/moscow.php?ID=415"&gt;неблизкий&lt;/a&gt;, но он того стоил. Персонал очень вежливый и приветливый, клиентов немного, на всю операцию (открытие счёта, приём чека на инкассо, оплата комиссии) ушло около 40 минут. В итоге: открыт валютный счёт, но без карты (комиссия не берётся, как и деньги за обслуживание), через 45 дней деньги можно забрать по паспорту в любом отделении Юниаструмбанка.&lt;br /&gt;&lt;br /&gt;Не так давно (конец августа 2009) я зашёл в местный доп.офис Юниаструма и, после некоторых объяснений, забрал свои кровные 110$ американских рублей. Правда, с меня взяли комиссию в 1.5% "за безналичный перевод" - это составило около полутора долларов. На всё ушло около 40 дней, как и было обещано банкирами.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/30744165-4433343008701852973?l=mydebianblog.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=LH07jt5boqA:3LAZNt0UVc0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=LH07jt5boqA:3LAZNt0UVc0:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=LH07jt5boqA:3LAZNt0UVc0:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?i=LH07jt5boqA:3LAZNt0UVc0:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/debianletters/~4/LH07jt5boqA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://mydebianblog.blogspot.com/feeds/4433343008701852973/comments/default" title="Комментарии к сообщению" /><link rel="replies" type="text/html" href="http://mydebianblog.blogspot.com/2009/08/google-adsense.html#comment-form" title="Комментарии: 9" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/4433343008701852973?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/4433343008701852973?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/debianletters/~3/LH07jt5boqA/google-adsense.html" title="Как обналичить чек Google Adsense в Москве" /><author><name>virens</name><uri>http://www.blogger.com/profile/12420257446841864325</uri><email>mydebianblog@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="09310948239609827054" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_hM8AMxgJLzw/Sltz0GMa_sI/AAAAAAAABJU/GEYlYz-FVOQ/s72-c/GoogleAdSenseVirensEdited.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">9</thr:total><feedburner:origLink>http://mydebianblog.blogspot.com/2009/08/google-adsense.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkMGRHw9eCp7ImA9WxNTFUQ.&quot;"><id>tag:blogger.com,1999:blog-30744165.post-7225891886538455134</id><published>2009-08-17T00:11:00.001+04:00</published><updated>2009-08-18T14:13:45.260+04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-18T14:13:45.260+04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="навигация" /><title>Закачка карт в GPS навигатор Garmin GPSMap 60CSx</title><content type="html">Не так давно решил разориться на GPS-навигатор, так как по многим местам приходится мотаться и ходить по отечественным картам уже нет никакой возможности. Вспомнив о том, как ув.тов. &lt;a href="http://sovety.blogspot.com/"&gt;jetxee&lt;/a&gt; &lt;a href="http://sovety.blogspot.com/2008/06/garmin-gpsmap-60cx-linux.html"&gt;нахваливал&lt;/a&gt; Garmin GPSMap 60CSx, решил его прикупить. Естественно, сразу встал вопрос о том, как закачивать в него карты.&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;Выглядит он как достаточно крупных габаритов мобильник (середины 90-х, если кто помнит). Покупал на ebay, так как платить две цены здесь желания особого нет. Отсюда есть одна особенность: навигатор с английским меню, так что русские карты должны быть в транслитерации.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.apitcomp.ru/catalog/GPSReceiver/36009.jpg"&gt;&lt;img src="http://www.apitcomp.ru/catalog/GPSReceiver/36009.jpg" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 300px; height: 317px;" src="http://www.apitcomp.ru/catalog/GPSReceiver/36009.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Итак, вариантов закачки карт в GPS-навигатор, собственно, два: через эмуляцию /dev/ttyUSB0 по закрытому протоколу Garmin и по Mass Storage.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);font-size:130%;" &gt;Закачка карт в GPS-навигатор по протоколу Garmin&lt;/span&gt; &lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;Этот  вариант оказался самым жизнеспособным. Если ваше ядро собрано с поддержкой garmin_gps, то после подключения навигатора к USB штепселю ядро нам должно написать в логах dmesg так:&lt;br /&gt;&lt;blockquote&gt;usb 4-1: new full speed USB device using uhci_hcd and address 3&lt;br /&gt;usb 4-1: configuration #1 chosen from 1 choice&lt;br /&gt;drivers/usb/serial/usb-serial.c: USB Serial support registered for Garmin GPS usb/tty&lt;br /&gt;garmin_gps 4-1:1.0: Garmin GPS usb/tty converter detected&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;usb 4-1: Garmin GPS usb/tty converter now attached to ttyUSB0&lt;/span&gt;&lt;br /&gt;usbcore: registered new interface driver garmin_gps&lt;br /&gt;drivers/usb/serial/garmin_gps.c: garmin gps driver v0.28&lt;br /&gt;&lt;/blockquote&gt;Выделенная строчка нам говорит о том, что у нас появился новый порт имени  /dev/ttyUSB0 куда мы будем закачивать наши карты.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);font-size:130%;" &gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;Где взять карты для GPS-навигаторов Garmin?&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt; Это философский вопрос, и в одном посте на него не ответить. Но для начала можно воспользоваться открытыми картами &lt;a href="http://www.openstreetmap.org/"&gt;OpenStreetMaps&lt;/a&gt; (после регистрации имеем возможность экспортировать нужные вам куски карт в XML формат).&lt;br /&gt;&lt;br /&gt;Уже собранные карты для Garmin, на всякий случай, есть &lt;a href="http://gpsmapsearch.com/osm/mp/#"&gt;здесь&lt;/a&gt;. После распаковки будет много файлов, нам нужен только 008XXX.img&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);font-size:100%;" &gt;&lt;span style="font-weight: bold;"&gt;Программы для закачки карт в GPS-навигаторы для Linux&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Софта под Linux для закачки gps-карт в навигатор немного. Из опробованного мной могу сказать про &lt;a href="http://www.cgpsmapper.com/buy.htm"&gt;sendmap&lt;/a&gt;. Скажу сразу: версия sendmap17Lstatic, которая &lt;span style="font-style: italic;"&gt;Stable version of sendmap with RS support only&lt;/span&gt;, не работает у меня никак. При попытке отправить в навигатор карту ругается:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt;./sendmap17Lstatic /dev/ttyUSB0 -s57600 moscowregion.img&lt;/span&gt;&lt;br /&gt;GPS SendMap &amp;amp; GetMap version 17, Kozicki@gps.chrisb.org&lt;br /&gt;&lt;br /&gt;Checking input files&lt;br /&gt;Preparing...&lt;br /&gt;Failure to communicate with GPS or no maps can be upload into GPS&lt;br /&gt;&lt;/blockquote&gt;Зато работает новая версия, которая на сайте обозначена как Free sendMap20 rev 4.2 BETA for Linux with experimental USB support. С её-то помощью и удалось закачать карту, сделанную для московской области:&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt; &lt;/span&gt;&lt;span style="font-style: italic;"&gt;./sendmap20 -t/dev/ttyUSB0 -s9600 moscowregion.img&lt;/span&gt;&lt;br /&gt;Detected          : GPSMap60CSX Software Version 3.60&lt;br /&gt;Available memory  : 120 MB&lt;br /&gt;Max number of maps: 2025&lt;br /&gt;Final map size    : 486 kB&lt;br /&gt;Maps uploaded!&lt;/blockquote&gt;После этого карта появляется в списке карт навигатора (на всякий случай - у Garmin в устойстве карта может быть только одна, загрузка новой стирает предыдущую).&lt;br /&gt;&lt;br /&gt;Параметры можно менять, например, изменить скорость закачки (-s115200) и присвоить карте другое отображаемое имя (-mMOSCOW )&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt;./sendmap20 -t/dev/ttyUSB0 -mMOSCOW -s115200 63240001.img&lt;/span&gt; &lt;/blockquote&gt;После этого навигатор карту видит и может с ней работать. Правда, на той карте географическая привязка была какая-то странная...&lt;blockquote style="color: rgb(153, 153, 153);"&gt;Для Windows программы для закачки карт в GPS-навигатор называются MapSource и &lt;a href="http://geopainting.com/"&gt;GPSMapEdit&lt;/a&gt;.&lt;/blockquote&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);font-size:130%;" &gt;&lt;br /&gt;Закачка карт в GPS-навигатор через Mass Storage&lt;/span&gt; &lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;Если выбрать в меню навигатора этот вариант, он станет большой флешкой и вы сможете на него закачивать карты:&lt;br /&gt;&lt;blockquote&gt;usb 4-1: new full speed USB device using uhci_hcd and address 4&lt;br /&gt;usb 4-1: configuration #1 chosen from 1 choice&lt;br /&gt;scsi0 : SCSI emulation for USB Mass Storage devices&lt;br /&gt;usb-storage: device found at 4&lt;br /&gt;usb-storage: waiting for device to settle before scanning&lt;br /&gt;scsi 0:0:0:0: Direct-Access     Garmin   60x microSD      1.00 PQ: 0 ANSI: 5&lt;br /&gt;sd 0:0:0:0: [sda] 246016 512-byte hardware sectors (126 MB)&lt;br /&gt;sd 0:0:0:0: [sda] Write Protect is off&lt;br /&gt;sd 0:0:0:0: [sda] Mode Sense: 23 00 00 00&lt;br /&gt;sd 0:0:0:0: [sda] Assuming drive cache: write through&lt;br /&gt;sd 0:0:0:0: [sda] 246016 512-byte hardware sectors (126 MB)&lt;br /&gt;sd 0:0:0:0: [sda] Write Protect is off&lt;br /&gt;sd 0:0:0:0: [sda] Mode Sense: 23 00 00 00&lt;br /&gt;sd 0:0:0:0: [sda] Assuming drive cache: write through&lt;br /&gt;sda: sda1&lt;br /&gt;sd 0:0:0:0: [sda] Attached SCSI removable disk&lt;br /&gt;sd 0:0:0:0: Attached scsi generic sg0 type 0&lt;br /&gt;usb-storage: device scan complete&lt;br /&gt;&lt;/blockquote&gt;По идее, монтируем /dev/sda1 и наступает нам счастье. После этого, по идее, нужно создать каталог &lt;span style="font-weight: bold;"&gt;garmin&lt;/span&gt; и закачать туда вашу карту с названием &lt;span style="font-weight: bold;"&gt;gmapsupp.img&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Но здесь есть нюанс: если вы это делаете в первый раз, закачать карты можно, но навигатор карт не видит. Это связано, как я понял, с регистром символов: каталог должен называться &lt;span style="font-weight: bold;"&gt;Garmin&lt;/span&gt; - так, как его создаёт программа  &lt;span style="font-weight: bold;"&gt;sendmap&lt;/span&gt; при первой заливке карт.&lt;br /&gt;&lt;br /&gt;И ещё. Как выяснилось на &lt;a href="http://www.ipmart-forum.com/archive/index.php/t-228012.html"&gt;форумах&lt;/a&gt;, закачать на флешку несколько карт и выбирать из них в Garmin 60 CSx не получится. С флешки видно только одну карту.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/30744165-7225891886538455134?l=mydebianblog.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=3nnG-8evAcA:d-aMqw_MudU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=3nnG-8evAcA:d-aMqw_MudU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=3nnG-8evAcA:d-aMqw_MudU:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?i=3nnG-8evAcA:d-aMqw_MudU:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/debianletters/~4/3nnG-8evAcA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://mydebianblog.blogspot.com/feeds/7225891886538455134/comments/default" title="Комментарии к сообщению" /><link rel="replies" type="text/html" href="http://mydebianblog.blogspot.com/2009/08/gps-garmin-gpsmap-60csx.html#comment-form" title="Комментарии: 11" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/7225891886538455134?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/7225891886538455134?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/debianletters/~3/3nnG-8evAcA/gps-garmin-gpsmap-60csx.html" title="Закачка карт в GPS навигатор Garmin GPSMap 60CSx" /><author><name>virens</name><uri>http://www.blogger.com/profile/12420257446841864325</uri><email>mydebianblog@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="09310948239609827054" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">11</thr:total><feedburner:origLink>http://mydebianblog.blogspot.com/2009/08/gps-garmin-gpsmap-60csx.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkYNRHo5cCp7ImA9WxNTFUQ.&quot;"><id>tag:blogger.com,1999:blog-30744165.post-3154400073709025257</id><published>2009-08-10T00:13:00.005+04:00</published><updated>2009-08-18T14:09:55.428+04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-18T14:09:55.428+04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="системное" /><category scheme="http://www.blogger.com/atom/ns#" term="железо" /><category scheme="http://www.blogger.com/atom/ns#" term="настройка" /><title>Подключение внешнего монитора к ноутбуку с помощью xrandr в Linux</title><content type="html">На каждом уважающем себя ноутбуке или нетбуке есть разъём для подключения внешнего монитора - для презентаций с проектора вещь необходимая. В &lt;span style="font-weight: bold;"&gt;Linux&lt;/span&gt; подключение внешнего монитора к ноутбуку с приходом &lt;span style="font-weight: bold;"&gt;Xrandr&lt;/span&gt; 1.2 и выше проблем не составляет, но на всякий случай выложу небольшое описание с примерами использования &lt;span style="font-weight: bold;"&gt;xrandr&lt;/span&gt; для работы с внешним монитором на ноутбуке.&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);font-size:130%;" &gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Подключаем внешний монитор к ноутбуку с помощью xrandr&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Не так давно я прикупил замечательный нетбук &lt;a href="http://mydebianblog.blogspot.com/2009/06/toshiba-netbook-nb-100.html"&gt;Toshiba NB-100&lt;/a&gt;, и сразу же потребовалось провести с него презентацию. Всё довольно просто - подключаем внешний монитор или проектор и пишем  в консольке:&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt;xrandr&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;На это нам &lt;span style="font-weight: bold;"&gt;xrandr&lt;/span&gt; ответит примерно так (цветовая раскраска - моя):&lt;br /&gt;&lt;blockquote&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;Screen 0: minimum 320 x 200, current 1024 x 768, maximum 1280 x 1280&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;VGA connected 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   1280x800       60.0&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   1280x768       60.0&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0); font-weight: bold;"&gt;1024x768       60.0*&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   800x600        60.3&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   640x480        59.9&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;LVDS connected 1024x600+0+0 (normal left inverted right x axis y axis) 0mm x 0mm&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;1024x600       60.0*+&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;   800x600        85.1     72.2     75.0     60.3     56.2&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;   640x480        85.0     72.8     75.0     59.9&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;   720x400        85.0&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;   640x400        85.1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;   640x350        85.1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;TV disconnected (normal left inverted right x axis y axis)&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;Так, что всё это значит? А значит это вот что:&lt;br /&gt;&lt;ul style="color: rgb(0, 153, 0);"&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;VGA&lt;/span&gt; - наш внешний монитор или проектор, 1024х768- это разрешение, установленное на устройстве сейчас, 60.0 - частота кадров.&lt;/li&gt;&lt;li style="color: rgb(0, 0, 153);"&gt;&lt;span style="font-weight: bold;"&gt;LVDS&lt;/span&gt; - собственно экран ноутбука, на котором сейчас стоит разрешение 1024х600 (так как он широкоформатный), 60.0 - частота кадров.&lt;/li&gt;&lt;li style="color: rgb(153, 0, 0);"&gt;&lt;span class="fullpost"&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;TV disconnected - ТВ-выход отключён (так как его попросту в этом нетбуке нет).&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="color: rgb(153, 102, 51);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;И сейчас лёгким и непринуждённым движением мы быстренько поставим на проекторе то разрешение, которое нам нужно.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);"&gt;&lt;br /&gt;&lt;br /&gt;Режим Clone mode&lt;/span&gt;&lt;br /&gt;Это значит, что на внешнем мониторе \ проекторе будет отображено ТО ЖЕ САМОЕ, что и на экране ноутбука. Чтобы сделать Clone mode на новый монитор делаем так:&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt;xrandr --output VGA --mode 1024x768 --output LVDS --mode 1024x600&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;Если разрешение внешнего монитора 800х600, то нужно поправить команду так:&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt;xrandr --output VGA --mode 800x600 --pos 800x0  --output LVDS --mode 1024x600 --pos 0x&lt;/span&gt;0&lt;br /&gt;&lt;/blockquote&gt;Это всё позволит отдублировать изображение с экрана ноутбука на внешний монитор или проектор. А как быть, если нужно показывать два разных изображения?&lt;br /&gt;&lt;br /&gt;Здесь имеет место быть маленькое лирическое отступление. Если &lt;span style="font-weight: bold;"&gt;xrandr&lt;/span&gt; отказывается выставлять высокое разрешение на внешнем мониторе, это может быть связано с объёмом видеопамяти. Для того, чтобы решить проблему, нужно иксам указать на использование "большого виртуального экрана". Делается это правкой файла &lt;span style="font-style: italic;"&gt;/etc/X11/xorg.conf&lt;/span&gt; где в секции Section "Screen" добавляем:&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);"&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="color: rgb(153, 153, 153);"&gt;Section "Screen"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);"&gt;        Identifier      "Default Screen"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);"&gt;        Device          "Generic Video Card"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);"&gt;        Monitor         "Generic Monitor"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(204, 0, 0);"&gt;        SubSection "Display"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(204, 0, 0);"&gt;                Virtual 2048 1024&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(204, 0, 0);"&gt;        EndSubSection&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);"&gt;EndSection&lt;/span&gt;&lt;/blockquote&gt;&lt;span style="color: rgb(153, 153, 153);"&gt;&lt;/span&gt;Здесь указывается разрешение общего виртуального экрана в формате ШИРИНАхВЫСОТА (в данном случае 2048 на 1024). Именно такой вычтя из этого физическое разрешение вашего монитора, вы получите максимальное разрешение внешнего монитора ноутбука, которое можно установить с помощью &lt;span style="font-weight: bold;"&gt;xrandr&lt;/span&gt;.&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);"&gt;&lt;br /&gt;Режим &lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);"&gt;Dual Monitor mode&lt;/span&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;При таком режиме вывод на проектор будет отличаться от вывода на монитор ноутбука: то есть вы сможете перетаскивать окна на внешний монитор, а на ноутбучном мониторе их не будет. Это очень удобно, &lt;a href="http://mydebianblog.blogspot.com/2009/04/dual-head-linux-asus-m5200ae.html"&gt;когда вам нужно показать вывод, скажем, латеховского документа и не пугать благородных донов видом латеховского кода&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Сделать это можно с помощью правки xorg.conf, как уже &lt;a href="http://mydebianblog.blogspot.com/2009/04/dual-head-linux-asus-m5200ae.html"&gt;говорилось&lt;/a&gt;, или с помощью &lt;span style="font-weight: bold;"&gt;xrandr&lt;/span&gt;. Чтобы сделать DualHead на внешний монитор с разрешением 1024х768 пишем&lt;br /&gt;&lt;blockquote style="font-style: italic;"&gt;xrandr --output LVDS --mode 1024x600 --pos 0x0 --output VGA --mode 1024x768 --right-of LVDS --pos 1024x0&lt;/blockquote&gt; В этом случае ведущим будет внешний монитор (это определяется параметром --pos). То есть где 0 тот и главный монитор (на нём будут менюшки открываться). А вот так:&lt;br /&gt;&lt;blockquote style="font-style: italic;"&gt;xrandr --output VGA --mode 1024x768 --pos 1024x0  --output LVDS --mode 1024x600 --pos 0x0&lt;/blockquote&gt;Ведущей будет панель ноутбука.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);font-size:130%;" &gt;&lt;span style="font-weight: bold;"&gt;Горшочек не вари&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;Чтобы отключить всю эту светомузыку с внешним монитором, нужно дать команду:&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt;xrandr --output VGA --off&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;после чего всё вернётся на место, внешний штепсель будет выключен и проектор отключится от вашего ноутбука.&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(153, 102, 51);"&gt;Bonus Track: повернуть экран с помощью Xrandr&lt;/span&gt;&lt;br /&gt;Чтобы не плодить лишних постов, напишу сюда, как повернуть изображение на ноутбуке (в частности, удобно на нетбуке, когда хочешь почитать книжку). Для поворота изображения против часовой стрелки пишем:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;xrandr -o left&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Чтобы повернуть по часовой стрелке изображение на мониторе пишем:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;xrandr -o right&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Чтобы вернуть всё на место, достаточно дать команду:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;        xrandr -o normal&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;И всё вернётся на свои места.&lt;/blockquote&gt;&lt;/span&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);font-size:130%;" &gt;&lt;span style="font-weight: bold;"&gt;Графические утилиты для xrandr&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;Для того, чтобы иметь возможность всё делать через графические утилиты и не утруждать свою память разными командами, есть утилита grandr. Выглядит она не просто, а очень просто:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_hM8AMxgJLzw/SoBOQhGRVcI/AAAAAAAABLE/E4zDmXbZt4A/s1600-h/xrandr1.jpg"&gt;&lt;img src="http://2.bp.blogspot.com/_hM8AMxgJLzw/SoBOQhGRVcI/AAAAAAAABLE/E4zDmXbZt4A/s320/xrandr1.jpg" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_hM8AMxgJLzw/SoBOQhGRVcI/AAAAAAAABLE/E4zDmXbZt4A/s320/xrandr1.jpg" alt="" id="BLOGGER_PHOTO_ID_5368376801495176642" border="0" /&gt;&lt;/a&gt;Собственно, она является простой обёрткой для консольной утилиты &lt;span style="font-weight: bold;"&gt;xrandr&lt;/span&gt; и позволяет управлять подключением внешних мониторов (вращение, размещение и прочее) без необходимости что-то набирать в консоли. Аналогичная оболочка для &lt;span style="font-weight: bold;"&gt;xrandr&lt;/span&gt; в KDE называется &lt;span style="font-weight: bold;"&gt;krandr&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);"&gt;&lt;br /&gt;Ссылки&lt;/span&gt;&lt;br /&gt;Весьма полезно будет ознакомиться с трудами &lt;a href="http://wiki.archlinux.org/index.php/Xorg#Display_Size.2FDPI"&gt;арчеводов&lt;/a&gt;, &lt;a href="http://linsovet.com/x11-xrandr-swich-to-external-monitor"&gt;линсоветчиков&lt;/a&gt; и &lt;a href="http://www.thinkwiki.org/wiki/Xorg_RandR_1.2"&gt;общими идеями&lt;/a&gt; по &lt;span style="font-weight: bold;"&gt;xrandr&lt;/span&gt;.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/30744165-3154400073709025257?l=mydebianblog.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=IiRnclnqWBY:3UGT3YrOP2w:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=IiRnclnqWBY:3UGT3YrOP2w:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=IiRnclnqWBY:3UGT3YrOP2w:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?i=IiRnclnqWBY:3UGT3YrOP2w:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/debianletters/~4/IiRnclnqWBY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://mydebianblog.blogspot.com/feeds/3154400073709025257/comments/default" title="Комментарии к сообщению" /><link rel="replies" type="text/html" href="http://mydebianblog.blogspot.com/2009/08/xrandr-linux.html#comment-form" title="Комментарии: 13" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/3154400073709025257?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/3154400073709025257?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/debianletters/~3/IiRnclnqWBY/xrandr-linux.html" title="Подключение внешнего монитора к ноутбуку с помощью xrandr в Linux" /><author><name>virens</name><uri>http://www.blogger.com/profile/12420257446841864325</uri><email>mydebianblog@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="09310948239609827054" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_hM8AMxgJLzw/SoBOQhGRVcI/AAAAAAAABLE/E4zDmXbZt4A/s72-c/xrandr1.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">13</thr:total><feedburner:origLink>http://mydebianblog.blogspot.com/2009/08/xrandr-linux.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkACSH07eyp7ImA9WxJaGE4.&quot;"><id>tag:blogger.com,1999:blog-30744165.post-7147298002920263594</id><published>2009-07-27T03:10:00.003+04:00</published><updated>2009-08-09T19:12:49.303+04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-09T19:12:49.303+04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="разное" /><title>Живой Linux своими руками, Эпизод 3: Тюнинг системы</title><content type="html">После того, как &lt;a href="http://mydebianblog.blogspot.com/2007/09/1-livecd.html"&gt;первый живой дистрибутив&lt;/a&gt; создан, &lt;a href="http://mydebianblog.blogspot.com/2007/11/2.html"&gt;записан на диск&lt;/a&gt; и от этого получено море положительных эмоций, нужно идти дальше. Некоторое время спустя выясняется, что где-то что-то не допилено, не хватает каких-то возможностей, не всегда стартуют иксы или в них забыли вписать кириллицу. Этот пост я писал по заметкам, которые оставлял в процессе доведения своего живого пингвина до ума.&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;big&gt;&lt;b&gt;&lt;span style="color: rgb(153, 102, 51);"&gt;Экономим место&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/big&gt;Лучше начинать с &lt;a href="http://mydebianblog.blogspot.com/2006/08/in-true-debian-way.html"&gt;базовой установки&lt;/a&gt; своего дистрибутива и, в зависимости от задач, сносить одни пакеты и ставить другие. Тут главное не увлекаться и знать, что место на диске ограничено, хотя сжатие у squashfs с патчем lzma весьма сильное.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);"&gt;Что можно удалить из базового дистрибутива&lt;br /&gt;&lt;/span&gt;Пример с дистрибутивным ядром показателен - его снос высвобождает целых 60Мб. Но есть куча других мелких и не очень утилит, которые не нужны в таком объёме, особенно в бездонной директории &lt;i&gt;/usr&lt;/i&gt;. Итак:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;снос дистрибутивного ядра и замена "живым"&lt;/li&gt;&lt;li&gt;aptitude purge python2.4&lt;/li&gt;&lt;li&gt;удаление утилит тестирования типа reportbug, installation-report и прочих&lt;/li&gt;&lt;li&gt;вырубка всяких альтернативных утилит типа dc, nano, tcsh, portmap&lt;/li&gt;&lt;li&gt;прополка от python-selinux, policycoreutils и прочих параноидальных прибамбасов&lt;/li&gt;&lt;li&gt;долой info, bind9, whois, finger, telnet....&lt;/li&gt;&lt;li&gt;убирать документацию разработчиков из /usr/share/doc и словарей из /usr/share/dict - это не столько сокращает объём сколько уменьшает количество файлов (где-то на 10 тысяч)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;локали (/usr/share/i18n/locales), мануалы (/usr/share/man) и шрифты оставить только нужные и на тех языках, о которых вы слышали. Локали можно убрать с помощью localepurge.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;В общем, следует пройтись с топором по директориям, особенно сильно им размахивая в /usr, где добра больше всего. Всё это поможет сэкономить место для чего-нибудь действительно полезного. Например, для иксов :-)&lt;br /&gt;&lt;blockquote&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;У меня в итоге получилось, что базовый ISO-образ вместе с иксами, MC и IceWM занимает чуть больше 100Мб. В ходе тестирования в эмуляторе выяснилось, что загружается сие чудо в системах с более чем 64Мб ОЗУ. На ноутбуке загрузилось примерно за минуту, нашло все устройства и даже примонтировало автоматом все диски.&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);"&gt;Что стоит установить в базовую систему&lt;br /&gt;&lt;/span&gt;Всё сказанное ниже будет сильно зависеть от того, что вы хотите сделать из системы. Но я думаю, совсем не лишним и не обременительным будет установить:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;облегчённые утилиты для интернет: wget и elinks&lt;/li&gt;&lt;li&gt;утилиты тестирования оборудования: dmidecode, lshw, hdparm, memtest86+, bonnie++&lt;/li&gt;&lt;li&gt;samba для общения с оффтопичной системой&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Это сформирует базовую систему, которую лучше всего скопировать куда-нибудь и сжать в архив. При необходимости её легко дополнять и обвешивать программами под текущие нужды - а дальше можно печь живые диски, как горячие пирожки, при помощи live-скриптов.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;big&gt;&lt;b&gt;&lt;span style="color: rgb(153, 102, 51);"&gt;Настройки, о которых легко забыть&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/big&gt; Их не так много, но их отсутствие приводит к досадным разочарованиям. Поэтому ниже - небольшой список того, что следует сделать в системе перед запаковыванием её в ISO-образ и на флешку.&lt;span style="color: rgb(153, 102, 51);"&gt;&lt;br /&gt;&lt;br /&gt;Автоматический логин&lt;br /&gt;&lt;/span&gt;Чтобы каждый раз не писать пароль, лучше всего настроить автоматический вход в систему. Если диск спасательный, то можно сделать так: удалить пакет xdm и поставить mingetty - так обеспечивается вход в систему пользователя без пароля и запуск иксов, когда они нужны.&lt;br /&gt;Итак:&lt;br /&gt;&lt;blockquote&gt;&lt;i&gt;aptitude remove xdm&lt;br /&gt;aptitude install mingetty&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;После этого заходим в /etc/inittab меняем строку вида&lt;br /&gt;&lt;blockquote&gt;1:2345:respawn:/sbin/getty 38400 tty1&lt;br /&gt;на&lt;br /&gt;1:2345:respawn:/sbin/mingetty --autologin &lt;b&gt;имяпользователя&lt;/b&gt; tty1&lt;/blockquote&gt;Заменяя имяпользователя на логин реального юзера, имеем беспарольный вход в систему &lt;span style="color: rgb(153, 153, 153);"&gt;(взято &lt;a href="http://ubuntu-faq.blogspot.com/2007/03/ubuntu-flash-minimal.html"&gt;отсюда&lt;/a&gt;)&lt;/span&gt;. Потом, если потребуются иксы, пишем startx и наслаждаемся.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 102, 51);"&gt;&lt;br /&gt;Настройка иксов&lt;/span&gt;&lt;br /&gt;Если вы хотите, чтобы иксы (если они есть, конечно) запускались всегда и везде, нужно прописать драйвер vesa:&lt;br /&gt;&lt;blockquote&gt;&lt;span style="color: rgb(153, 153, 153);"&gt;&lt;small&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Section "Device"&lt;br /&gt;Identifier      "Cirrus Logic GD 5446"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;b&gt;Driver          "vesa"&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;        BusID           "PCI:0:2:0"&lt;br /&gt;EndSection&lt;/span&gt;&lt;/small&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;И не забыть про кириллицу&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Section "InputDevice"&lt;br /&gt;Identifier      "Generic Keyboard"&lt;br /&gt;Driver          "kbd"&lt;br /&gt;Option          "CoreKeyboard"&lt;br /&gt;Option          "XkbRules"      "xorg"&lt;br /&gt;Option          "XkbModel"      "pc104"&lt;br /&gt;&lt;b&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Option          "XkbLayout"     "us,ru(winkeys)"&lt;br /&gt;Option          "XkbOptions"    "grp:alt_shift_toggle"&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;EndSection&lt;/span&gt;&lt;/blockquote&gt;Если вы эстет, то можно ещё долго изгаляться со шрифтами и прочими рюшечками. Мне и обычных шрифтов хватает - лишь бы там были русские буквы и читалось без особого напряга.&lt;br /&gt;&lt;br /&gt;Так же не стоит забывать про разрешение экрана - указывайте все при конфигурации иксов:&lt;blockquote&gt;&lt;i&gt;dpkg-reconfigure xserver-xorg&lt;/i&gt;&lt;/blockquote&gt;Повыключайте разного рода ускоряющие драйверы типа glx и dri, если вы создаёте спасательный диск. В общем, тюнинг системы - дело увлекательное...&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/30744165-7147298002920263594?l=mydebianblog.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=SkYjvOvq5FI:VlgUH0wjLAk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=SkYjvOvq5FI:VlgUH0wjLAk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/debianletters?a=SkYjvOvq5FI:VlgUH0wjLAk:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/debianletters?i=SkYjvOvq5FI:VlgUH0wjLAk:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/debianletters/~4/SkYjvOvq5FI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://mydebianblog.blogspot.com/feeds/7147298002920263594/comments/default" title="Комментарии к сообщению" /><link rel="replies" type="text/html" href="http://mydebianblog.blogspot.com/2009/07/linux-3.html#comment-form" title="Комментарии: 9" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/7147298002920263594?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/30744165/posts/default/7147298002920263594?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/debianletters/~3/SkYjvOvq5FI/linux-3.html" title="Живой Linux своими руками, Эпизод 3: Тюнинг системы" /><author><name>virens</name><uri>http://www.blogger.com/profile/12420257446841864325</uri><email>mydebianblog@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="09310948239609827054" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">9</thr:total><feedburner:origLink>http://mydebianblog.blogspot.com/2009/07/linux-3.html</feedburner:origLink></entry></feed>
