<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2russianfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" version="2.0">

<channel>
	<title>Блог о Solaris</title>
	
	<link>http://solarisblog.ru</link>
	<description>Oracle Solaris: #1 Enterprise OS</description>
	<lastBuildDate>Fri, 18 Feb 2011 10:00:14 +0000</lastBuildDate>
	<language>ru</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/solarisblog" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="solarisblog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">solarisblog</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.bloglines.com/sub/http://feeds.feedburner.com/solarisblog" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://lenta.yandex.ru/settings.xml?name=feed&amp;url=http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://lenta.yandex.ru/i/addfeed.gif">?????? ? ??????.?????</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.plusmo.com/add?url=http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://plusmo.com/res/graphics/fbplusmo.gif">Subscribe with Plusmo</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.thefreedictionary.com/_/hp/AddRSS.aspx?http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://img.tfd.com/hp/addToTheFreeDictionary.gif">Subscribe with The Free Dictionary</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.bitty.com/manual/?contenttype=rssfeed&amp;contentvalue=http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://www.bitty.com/img/bittychicklet_91x17.gif">Subscribe with Bitty Browser</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.live.com/?add=http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://tkfiles.storage.msn.com/x1piYkpqHC_35nIp1gLE68-wvzLZO8iXl_JMledmJQXP-XTBOLfmQv4zhj4MhcWEJh_GtoBIiAl1Mjh-ndp9k47If7hTaFno0mxW9_i3p_5qQw">Subscribe with Live.com</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://mix.excite.eu/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://image.excite.co.uk/mix/addtomix.gif">Subscribe with Excite MIX</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.webwag.com/wwgthis.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://www.webwag.com/images/wwgthis.gif">Subscribe with Webwag</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.podcastready.com/oneclick_bookmark.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://www.podcastready.com/images/podcastready_button.gif">Subscribe with Podcast Ready</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.wikio.com/subscribe?url=http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://www.wikio.com/shared/img/add2wikio.gif">Subscribe with Wikio</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.dailyrotation.com/index.php?feed=http%3A%2F%2Ffeeds.feedburner.com%2Fsolarisblog" src="http://www.dailyrotation.com/rss-dr2.gif">Subscribe with Daily Rotation</feedburner:feedFlare><item>
		<title>Сброс настроек терминала</title>
		<link>http://solarisblog.ru/commands/sbros-nastroek-terminala</link>
		<comments>http://solarisblog.ru/commands/sbros-nastroek-terminala#comments</comments>
		<pubDate>Fri, 18 Feb 2011 10:00:14 +0000</pubDate>
		<dc:creator>solarisblog.ru</dc:creator>
				<category><![CDATA[Полезные команды]]></category>
		<category><![CDATA[reset]]></category>

		<guid isPermaLink="false">http://solarisblog.ru/?p=838</guid>
		<description><![CDATA[В статье LazyLinux прочитал о простой и полезной возможности, о которой раньше не знал. В Solaris это тоже работает. Наверняка вы сталкивались с тем, что экран заполняется мусором, если попытаться просмотреть бинарный файл, например, командой: $ cat /bin/cat Если сильно не повезет, то могут сбиться настройки терминала и будут проблемы с последующим вводом. В таких [...]


Нет похожих записей.]]></description>
			<content:encoded><![CDATA[<p>В статье <a title="Lazy Linux" href="http://www.ibm.com/developerworks/linux/library/l-10sysadtips/?cmp=dw&amp;cpb=dwlin&amp;ct=dwnew&amp;cr=dwnen&amp;ccy=zz&amp;csr=010711">LazyLinux</a> прочитал о простой и полезной возможности, о которой раньше не знал. В Solaris это тоже работает.</p>
<p>Наверняка вы сталкивались с тем, что экран заполняется мусором, если попытаться просмотреть бинарный файл, например, командой:</p>
<pre>$ cat /bin/cat</pre>
<p>Если сильно не повезет, то могут сбиться настройки терминала и будут проблемы с последующим вводом.<br />
В таких случаях я закрываю терминал и запускаю новый. Но можно решить проще, всего одной командой:</p>
<pre>$ reset</pre>
<p>Только не напишите по ошибке reboot!</p>


<p>Нет похожих записей.</p><img src="http://feeds.feedburner.com/~r/solarisblog/~4/Q4i43txL_PA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solarisblog.ru/commands/sbros-nastroek-terminala/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Сертификация по Solaris</title>
		<link>http://solarisblog.ru/raznoe/sertifikaciya-po-solaris</link>
		<comments>http://solarisblog.ru/raznoe/sertifikaciya-po-solaris#comments</comments>
		<pubDate>Tue, 14 Dec 2010 05:33:30 +0000</pubDate>
		<dc:creator>solarisblog.ru</dc:creator>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[сертификация]]></category>

		<guid isPermaLink="false">http://solarisblog.ru/?p=815</guid>
		<description><![CDATA[Давно собирался написать о том, как стать сертифицированным специалистом по Solaris, но ждал, когда Oracle внесет свои изменения в программу сертификации. Изменения появились, возможно не последние. Произошел &#187;ребрендинг&#187; программы сертификации Sun, новые сертификаты соответствуют стандартным для Oracle уровням: Oracle Certified Associate, Professional и Expert. Сертификаты Solaris Итак, администратор Solaris может получить четыре сертификата, распределенные по трем уровням: Oracle [...]


Нет похожих записей.]]></description>
			<content:encoded><![CDATA[<p>Давно собирался написать о том, как стать сертифицированным специалистом по Solaris, но ждал, когда Oracle внесет свои изменения в программу сертификации. Изменения появились, возможно не последние. Произошел &raquo;ребрендинг&raquo; программы сертификации Sun, новые сертификаты соответствуют стандартным для Oracle уровням: Oracle Certified Associate, Professional и Expert.</p>
<p><span id="more-815"></span></p>
<h2>Сертификаты Solaris</h2>
<p>Итак, администратор Solaris может получить четыре сертификата, распределенные по трем уровням:</p>
<ul>
<li><a href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=327">Oracle Certified Associate, Oracle Solaris 10 Operating System</a></li>
<li><a href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=328">Oracle Certified Professional, Oracle Solaris 10 System Administrator</a></li>
<li><a href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=329">Oracle Certified Expert, Oracle Solaris 10 Network Administrator</a></li>
<li><a href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=330">Oracle Certified Expert, Oracle Solaris 10 Security Administrator</a></li>
</ul>
<p>По сути, сертификаты остались такими же, как были в программе Sun. Полученные ранее сановские сертификаты остаются действительными для тех версий Solaris, по которым они были выданы. Приятно, что я со своим SCNA for Solaris 10 попал сразу на уровень Oracle Certified Expert.</p>
<h2>Экзамены по Solaris</h2>
<p>Чтобы получить сертификат по Solaris достаточно только сдать экзамены. Требований по обязательным курсам, как для OCP DBA нет. Сами экзамены также не сильно поменялись, по сравнению с сановскими.</p>
<p>Для получения <a href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=327">Oracle Certified Associate, Oracle Solaris 10 Operating System</a> нужно сдать экзамен <a href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=41&amp;p_exam_id=1Z0_876">Oracle Solaris Certified Associate Exam (CX-310-105)</a>.</p>
<p>Для получения <a href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=328">Oracle Certified Professional, Oracle Solaris 10 System Administrator</a> нужно сдать два экзамена: <a href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=41&amp;p_exam_id=1Z0_877">Oracle Solaris 10 System Administrator Certified Professional Exam, Part I (CX-310-200)</a> и <a href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=41&amp;p_exam_id=1Z0_878">Oracle Solaris 10 System Administrator Certified Professional Exam, Part II (CX-310-202)</a>. Предварительно сдавать на OCA не требуется! Если у вас есть сертификат системного администратора по предыдущей версии Solaris, то можно сдать всего один экзамен: <a href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=41&amp;p_exam_id=1Z0_879">Oracle Solaris 10 System Administrator Certified Professional Upgrade Exam (CX-310-203)</a>.</p>
<p>Получить сертификат <a href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=329">Oracle Certified Expert, Oracle Solaris 10 Network Administrator</a> можно только после получения <a href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=328">Oracle Certified Professional, Oracle Solaris 10 System Administrator</a>, сдав экзамен <a href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=41&amp;p_exam_id=1Z0_880">Oracle Solaris 10 Network Administrator Certified Expert (CX-310-302)</a>.</p>
<p>На <a href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=330">Oracle Certified Expert, Oracle Solaris 10 Security Administrator</a> можно сдавать сразу, без предварительного получения каких-либо сертификатов. Экзамен всего один: <a href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=41&amp;p_exam_id=1Z0_881">Oracle Solaris 10 Security Administrator Certified Expert Exam(CX-310-303)</a>.</p>
<h2>Где сдавать экзамены</h2>
<p>Несмотря на то, что Oracle перешел на Pearson VUE, экзамены по Solaris (и другим технологиям Sun) сдаются в тестовых центрах <a title="Тестовые центры Prometric" href="http://www.prometric.com/Oracle/">Prometric</a>. Можно предположить, что со временем их тоже перенесут в Pearson VUE.</p>
<p>Тестовые центры как Prometric, так и Pearson VUE есть почти во всех крупных городах.</p>
<p>Я пока не сдавал, планирую получать сертификаты на Solaris 11, когда они будут доступны.</p>
<p>Если кто-нибудь сдавал экзамены уже по новой программе, напишите в комментариях о своих впечатлениях.</p>
<h2>Ресурсы</h2>
<ul>
<li><a title="Oracle Solaris Certification Program" href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=144#1">Oracle Solaris Certification Program</a></li>
<li><a title="Sun Certification FAQ" href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=373">Sun Certification FAQ</a></li>
<li><a title="Oracle University FAQ: Sun Education" href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=82#6Q12C">Oracle University FAQ: Sun Education</a></li>
</ul>


<p>Нет похожих записей.</p><img src="http://feeds.feedburner.com/~r/solarisblog/~4/TsHjHVTOAk4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solarisblog.ru/raznoe/sertifikaciya-po-solaris/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Простой мониторинг системы с помощью SAR</title>
		<link>http://solarisblog.ru/resources/prostoj-monitoring-sistemy-s-pomoshhyu-sar</link>
		<comments>http://solarisblog.ru/resources/prostoj-monitoring-sistemy-s-pomoshhyu-sar#comments</comments>
		<pubDate>Thu, 11 Nov 2010 05:03:15 +0000</pubDate>
		<dc:creator>solarisblog.ru</dc:creator>
				<category><![CDATA[Ресурсы]]></category>
		<category><![CDATA[sar]]></category>
		<category><![CDATA[Мониторинг]]></category>

		<guid isPermaLink="false">http://solarisblog.ru/?p=804</guid>
		<description><![CDATA[С удивлением обнаружил на сайте IBM developerworks интересную статью про использованию sar с примерами для Solaris: Простой мониторинг системы с помощью SAR. Не ждал от IBM хорошей статьи про Solaris, да еще переведенной на русский язык. Рекомендую почитать. Я часто использую sar для мониторинга производительности, потому что он встроен в Solaris и довольно легко настраивается, [...]


Похожие записи:<ol><li><a href='http://solarisblog.ru/commands/solaris_monitoring_with_sar' rel='bookmark' title='Permanent Link: Мониторинг производительности Solaris с помощью sar'>Мониторинг производительности Solaris с помощью sar</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>С удивлением обнаружил на сайте IBM developerworks интересную статью про использованию sar с примерами для Solaris: <a title="Мониторинг с помощью sar" href="http://www.ibm.com/developerworks/ru/library/au-unix-perfmonsar/index.html">Простой мониторинг системы с помощью SAR</a>. Не ждал от IBM хорошей статьи про Solaris, да еще переведенной на русский язык. Рекомендую почитать.</p>
<p>Я часто использую sar для<a title="Мониторинг производительности Solaris при помощи sar" href="http://solarisblog.ru/commands/solaris_monitoring_with_sar"> мониторинга производительности</a>, потому что он встроен в Solaris и довольно легко настраивается, а его возможностей как правило хватает для диагностики большинства проблем. Пример анализа вывода sar и алгоритм рассуждений хорошо описаны в статье на developerworks.</p>


<p>Похожие записи:<ol><li><a href='http://solarisblog.ru/commands/solaris_monitoring_with_sar' rel='bookmark' title='Permanent Link: Мониторинг производительности Solaris с помощью sar'>Мониторинг производительности Solaris с помощью sar</a></li>
</ol></p><img src="http://feeds.feedburner.com/~r/solarisblog/~4/ryNaxxEeBZc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solarisblog.ru/resources/prostoj-monitoring-sistemy-s-pomoshhyu-sar/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как настроить автоматический переход на зимнее/летнее время в Solaris</title>
		<link>http://solarisblog.ru/commands/kak-nastroit-avtomaticheskij-perexod-na-zimneeletnee-vremya-v-solaris</link>
		<comments>http://solarisblog.ru/commands/kak-nastroit-avtomaticheskij-perexod-na-zimneeletnee-vremya-v-solaris#comments</comments>
		<pubDate>Tue, 09 Nov 2010 06:36:12 +0000</pubDate>
		<dc:creator>solarisblog.ru</dc:creator>
				<category><![CDATA[Полезные команды]]></category>

		<guid isPermaLink="false">http://solarisblog.ru/?p=786</guid>
		<description><![CDATA[В этом году пост уже опоздал, но, возможно, в дальнейшем кому-нибудь пригодится. Solaris может автоматически переключать время на зимнее и летнее, если вы настроили  временную зону (timezone), для чего нужно выполнить следующие шаги: 1. Задаем временную зону в файле /etc/TIMEZONE в переменной TZ: TZ=Asia/Yekaterinburg Для Екатеринбурга, где я живу, временная зона Asia/Yekaterinburg (GMT+5), для Москвы [...]


Похожие записи:<ol><li><a href='http://solarisblog.ru/oracle/solaris10_resource_control_for_oracle' rel='bookmark' title='Permanent Link: Как правильно настроить <del>параметры ядра</del> управление ресурсами в Solaris 10 для установки Oracle'>Как правильно настроить <del>параметры ядра</del> управление ресурсами в Solaris 10 для установки Oracle</a></li>
<li><a href='http://solarisblog.ru/commands/zlogin-exit' rel='bookmark' title='Permanent Link: Выход из Zlogin'>Выход из Zlogin</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>В этом году пост уже опоздал, но, возможно, в дальнейшем кому-нибудь пригодится.</p>
<p>Solaris может автоматически переключать время на зимнее и летнее, если вы настроили  временную зону (timezone), для чего нужно выполнить следующие шаги:</p>
<p>1. Задаем временную зону в файле /etc/TIMEZONE в переменной TZ:</p>
<pre>TZ=Asia/Yekaterinburg</pre>
<p>Для Екатеринбурга, где я живу, временная зона Asia/Yekaterinburg (GMT+5), для Москвы &#8211; Europe/Moscow (GMT+3), а полный список зон можно посмотреть в каталоге /usr/share/lib/zoneinfo.</p>
<p><span id="more-786"></span></p>
<p>Обратите внимание, что имя файла TIMEZONE, где все буквы заглавные. На самом деле файл /etc/TIMEZONE &#8211; символическая ссылка на /etc/default/init. Файл /etc/timezone (маленькими буквами) также может присутствовать в системе, но он содержит данные для построения карт NIS, и не оказывает влияния на конфигурацию локальной системы.</p>
<p>2. Если Вы работаете на платформе x86, то необходимо выполнить команду rtc:</p>
<pre># rtc -z Asia/Yekaterinburg
# rtc -c</pre>
<p>Не забудьте заменить Asia/Yekaterinburg на вашу временную зону.</p>
<p>3. Перезагружаем компьютер для вступления изменений в силу.</p>
<p>После перезагрузки проверяем, используется ли временная зона с помощью команды date:</p>
<pre>bash-3.00# date
Tue Nov  9 10:42:23 YEKT 2010</pre>
<p>Символы &laquo;YEKT&raquo; перед годом 2010 означают, что используется временная зона Екатеринбурга (YEKaterinburg Time), зимнее время. Летнее время выглядит следующим образом:</p>
<pre>bash-3.00# date
Sun Aug 15 12:00:03 YEKST 2010</pre>
<p>YEKST сокращение от YEKaterinburg Summer Time.</p>
<p>Посмотреть время во внутреннем формате Solaris (UTC, Universal Time Coordinated, всемирное координированное время), можно с помощью команды date -u:</p>
<pre>bash-3.00# date -u
Tue Nov  9 06:31:06 GMT 2010</pre>


<p>Похожие записи:<ol><li><a href='http://solarisblog.ru/oracle/solaris10_resource_control_for_oracle' rel='bookmark' title='Permanent Link: Как правильно настроить <del>параметры ядра</del> управление ресурсами в Solaris 10 для установки Oracle'>Как правильно настроить <del>параметры ядра</del> управление ресурсами в Solaris 10 для установки Oracle</a></li>
<li><a href='http://solarisblog.ru/commands/zlogin-exit' rel='bookmark' title='Permanent Link: Выход из Zlogin'>Выход из Zlogin</a></li>
</ol></p><img src="http://feeds.feedburner.com/~r/solarisblog/~4/__-ccRrz5dI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solarisblog.ru/commands/kak-nastroit-avtomaticheskij-perexod-na-zimneeletnee-vremya-v-solaris/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Основы OpenMP в Solaris</title>
		<link>http://solarisblog.ru/hpc/osnovy-openmp-v-solaris</link>
		<comments>http://solarisblog.ru/hpc/osnovy-openmp-v-solaris#comments</comments>
		<pubDate>Tue, 02 Nov 2010 09:30:28 +0000</pubDate>
		<dc:creator>solarisblog.ru</dc:creator>
				<category><![CDATA[Параллельные вычисления]]></category>
		<category><![CDATA[hpc]]></category>
		<category><![CDATA[OpenMP]]></category>

		<guid isPermaLink="false">http://solarisblog.ru/?p=761</guid>
		<description><![CDATA[Сейчас мне приходится активно заниматься параллельными вычислениями, поэтому завожу новую рубрику. Сегодня в ней первый пост, про OpenMP в Solaris. OpenMP &#8211; это переносимый API для разработки параллельных программ на машинах с общей памятью. Хорош он тем, что сам организует параллельную работу программы, разработчик просто указывает соответствующие прагмы. На самом деле, все не так просто, [...]


Нет похожих записей.]]></description>
			<content:encoded><![CDATA[<p>Сейчас мне приходится активно заниматься параллельными вычислениями, поэтому завожу новую рубрику. Сегодня в ней первый пост, про OpenMP в Solaris.</p>
<p><a title="OpenMP" href="http://openmp.org/">OpenMP</a> &#8211; это переносимый API для разработки параллельных программ на машинах с общей памятью. Хорош он тем, что сам организует параллельную работу программы, разработчик просто указывает соответствующие прагмы. На самом деле, все не так просто, но использовать OpenMP гораздо удобнее, чем POSIX потоки.</p>
<p>OpenMP поддерживается практически всеми популярными компиляторами C/C++ и Fortran, включая gcc и Oracle Solaris Studio. Подробности смотрите <a title="Компиляторы с поддержкой OpenMP" href="http://openmp.org/wp/openmp-compilers/">здесь</a>. То есть, чтобы использовать OpenMP не надо ничего дополнительно устанавливать, нужно только указать компилятору необходимые параметры.</p>
<p><span id="more-761"></span></p>
<p>Прежде всего, нам понадобится программа, использующая OpenMP. Я взял пример с <a title="SLAC" href="http://www.slac.stanford.edu/comp/unix/farm/openmp.html">сайта Stanford Linear Accelerator Center</a>, программа hello.c:</p>
<pre>#include &lt;stdio.h&gt;
#include &lt;omp.h&gt;

int main(int argc, char *argv[]) {
  int iam = 0, np = 1;

  #pragma omp parallel default(shared) private(iam, np)
  {
    #if defined (_OPENMP)
      np = omp_get_num_threads();
      iam = omp_get_thread_num();
    #endif
    printf("Hello from thread %d out of %d\n", iam, np);
  }
}</pre>
<p>Программа очень простая, запускает несколько потоков и каждый поток печатает &laquo;Привет из потока n из m&raquo;, где n &#8211; это номер потока, а m &#8211; общее количество потоков.</p>
<p>К сожалению, gcc поддерживает OpenMP начиная с версии 4.2, в Solaris же входит версия 3.4. На <a href="http://www.sunfreeware.com/">http://www.sunfreeware.com</a> последняя версия gcc 3.4.6, которая также не поддерживает OpenMP. Поэтому я использовал Oracle Solaris Studio (платформа SPARC):</p>
<pre>$ cc -xopenmp=parallel -xO3  hello.c -o hello</pre>
<p>Запускаем:</p>
<pre>$ ./hello
Hello from thread 0 out of 8
Hello from thread 5 out of 8
Hello from thread 3 out of 8
Hello from thread 7 out of 8
Hello from thread 1 out of 8
Hello from thread 4 out of 8
Hello from thread 2 out of 8
Hello from thread 6 out of 8</pre>
<p>В этом сервере 8 процессоров, поэтому и потоков 8. Несложно заметить, что потоки выполняют вывод не по возрастанию номеров, так как порядок работы параллельных потоков не гарантируется.</p>
<p>Количество потоков OpenMP определяет автоматически, по количеству (виртуальных) процессоров. Но также можно задать количество потоков вручную, используя переменную окружения OMP_NUM_THREADS, например:</p>
<pre>$ export OMP_NUM_THREADS=4
$ ./hello
Hello from thread 0 out of 4
Hello from thread 1 out of 4
Hello from thread 3 out of 4
Hello from thread 2 out of 4</pre>
<p>Записали в переменную OMP_NUM_THREADS значение 4, OpenMP создал только 4 потока, вместо 8 по числу процессоров.</p>
<p>Как видите, писать параллельные программы с OpenMP достаточно просто. В дальнейшем буду еще писать про использование OpenMP, а также про другие технологии параллельных вычислений под Solaris.</p>


<p>Нет похожих записей.</p><img src="http://feeds.feedburner.com/~r/solarisblog/~4/carBzqsr_NU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solarisblog.ru/hpc/osnovy-openmp-v-solaris/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>A Sysadmin’s Unixersal Translator</title>
		<link>http://solarisblog.ru/resources/a-sysadmins-unixersal-translator</link>
		<comments>http://solarisblog.ru/resources/a-sysadmins-unixersal-translator#comments</comments>
		<pubDate>Thu, 28 Oct 2010 04:17:29 +0000</pubDate>
		<dc:creator>solarisblog.ru</dc:creator>
				<category><![CDATA[Ресурсы]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Solaris]]></category>

		<guid isPermaLink="false">http://solarisblog.ru/?p=750</guid>
		<description><![CDATA[Полезный на мой взгляд ресурс A Sysadmin&#8217;s Unixersal Translator. В одном месте собраны команды, которые используются для выполнения одинаковых действий в разных Unix&#8217;ах. Всего представлено 18 вариантов Unix, самые интересные AIX, HP-UX, Linux и, конечно же, Solaris. По Solaris команды достаточно актуальны, есть сведения о zfs и некоторых других фичах, появившихся только в Solaris 10. [...]


Похожие записи:<ol><li><a href='http://solarisblog.ru/apache/mysql-sun-webstack-problems' rel='bookmark' title='Permanent Link: Проблемы при установке MySQL из Sun Web Stack'>Проблемы при установке MySQL из Sun Web Stack</a></li>
<li><a href='http://solarisblog.ru/commands/10-samyx-nuzhnyx-komand-vi' rel='bookmark' title='Permanent Link: 10 самых нужных команд vi'>10 самых нужных команд vi</a></li>
<li><a href='http://solarisblog.ru/alfresco/alfresco_open_source_ecm' rel='bookmark' title='Permanent Link: Alfresco &#8211; enterprise content management с открытым исходным кодом'>Alfresco &#8211; enterprise content management с открытым исходным кодом</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Полезный на мой взгляд ресурс <a title="http://bhami.com/rosetta.html" href="http://bhami.com/rosetta.html">A Sysadmin&#8217;s Unixersal Translator</a>. В одном месте собраны команды, которые используются для выполнения одинаковых действий в разных Unix&#8217;ах. Всего представлено 18 вариантов Unix, самые интересные AIX, HP-UX, Linux и, конечно же, Solaris.</p>
<p>По Solaris команды достаточно актуальны, есть сведения о zfs и некоторых других фичах, появившихся только в Solaris 10. Из недостатков сразу бросилось в глаза, что не написано об <a href="http://solarisblog.ru/oracle/solaris10_resource_control_for_oracle">установке параметров ядра через проекты</a>.</p>
<p>Я использую этот сайт следующим образом. Кроме Solaris сейчас мне часто приходится работать с Linux, которую я пока знаю недостаточно хорошо. Иногда (даже часто <img src='http://solarisblog.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ) бывают ситуации, когда я знаю команду Solaris, нужную для выполнения текущей задачи, но не знаю команду Linux. Translator как раз и позволяет по известной команде  Solaris быстро найти соответствующую ей команду Linux, что я и делаю.</p>


<p>Похожие записи:<ol><li><a href='http://solarisblog.ru/apache/mysql-sun-webstack-problems' rel='bookmark' title='Permanent Link: Проблемы при установке MySQL из Sun Web Stack'>Проблемы при установке MySQL из Sun Web Stack</a></li>
<li><a href='http://solarisblog.ru/commands/10-samyx-nuzhnyx-komand-vi' rel='bookmark' title='Permanent Link: 10 самых нужных команд vi'>10 самых нужных команд vi</a></li>
<li><a href='http://solarisblog.ru/alfresco/alfresco_open_source_ecm' rel='bookmark' title='Permanent Link: Alfresco &#8211; enterprise content management с открытым исходным кодом'>Alfresco &#8211; enterprise content management с открытым исходным кодом</a></li>
</ol></p><img src="http://feeds.feedburner.com/~r/solarisblog/~4/J1MATYhbybs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solarisblog.ru/resources/a-sysadmins-unixersal-translator/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как определить сервис по номеру PID</title>
		<link>http://solarisblog.ru/commands/kak-opredelit-servis-po-nomeru-pid</link>
		<comments>http://solarisblog.ru/commands/kak-opredelit-servis-po-nomeru-pid#comments</comments>
		<pubDate>Tue, 19 Oct 2010 03:29:19 +0000</pubDate>
		<dc:creator>solarisblog.ru</dc:creator>
				<category><![CDATA[Полезные команды]]></category>

		<guid isPermaLink="false">http://solarisblog.ru/?p=734</guid>
		<description><![CDATA[Перевод статьи Associating a PID with a Service. Недавно у нас возник вопрос, как узнать, какой сервис SMF запустил процесс с некоторым PID? Я подумал, что лучше поделиться найденным решением. Возьмем для примера выглядящий обычным процесс java: bleonard@opensolaris:/system$ ps -fp 949 UID PID PPID C STIME TTY TIME CMD root 949 947 0 Oct 11 [...]


Похожие записи:<ol><li><a href='http://solarisblog.ru/security/solaris_secure_by_default_part2' rel='bookmark' title='Permanent Link: Безопасность по умолчанию в Solaris, часть 2'>Безопасность по умолчанию в Solaris, часть 2</a></li>
<li><a href='http://solarisblog.ru/security/solaris_secure_by_default_part3' rel='bookmark' title='Permanent Link: Безопасность по умолчанию в Solaris, часть 3'>Безопасность по умолчанию в Solaris, часть 3</a></li>
<li><a href='http://solarisblog.ru/commands/ponimaem-rbac' rel='bookmark' title='Permanent Link: Понимаем RBAC'>Понимаем RBAC</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Перевод статьи <a title="Associating a PID with a Service" href="http://blogs.sun.com/observatory/entry/associating_a_pid_with_a">Associating a PID with a Service</a>.</p>
<p>Недавно у нас возник вопрос, как узнать, какой сервис SMF запустил процесс с некоторым PID? Я подумал, что лучше поделиться найденным решением.</p>
<p>Возьмем для примера выглядящий обычным процесс java:</p>
<pre>bleonard@opensolaris:/system$ ps -fp 949
     UID   PID  PPID   C    STIME TTY         TIME CMD
    root   949   947   0   Oct 11 ?           3:46 /usr/jdk/jdk1.6.0_13/bin/java -Xms4M -Xmx128M -Dcom.sun.management.jmxremote -D</pre>
<p><span id="more-734"></span></p>
<p>Я хочу проследить, какой сервис SMF запустил этот процесс, и начинаю с определения contract ID процесса:</p>
<pre>bleonard@opensolaris:/system$ ps -o ctid -p 949
 CTID
   59</pre>
<p>Затем я могу использовать команду ctstat, чтобы связать contract ID и SMF:</p>
<pre>bleonard@opensolaris:/system$ ctstat -vi 59
CTID    ZONEID  TYPE    STATE   HOLDER  EVENTS  QTIME   NTIME
59      0       process owned   7       0       -       -
	cookie:                0x20
	informative event set: none
	critical event set:    core signal hwerr empty
	fatal event set:       none
	parameter set:         inherit regent
	member processes:      947 949
	inherited contracts:   none
	<strong>service fmri:          svc:/application/management/common-agent-container-1:default</strong>
	service fmri ctid:     59
	creator:               svc.startd
	aux:                   start</pre>
<p>И, чтобы замкнуть круг:</p>
<pre>bleonard@opensolaris:/system$ svcs -lp  common-agent-container-1
fmri         svc:/application/management/common-agent-container-1:default
name         Cacao, a common Java container for JDMK/JMX based management solution
enabled      true
state        online
next_state   none
state_time   Mon Oct 11 12:54:59 2010
logfile      /var/svc/log/application-management-common-agent-container-1:default.log
restarter    svc:/system/svc/restarter:default
contract_id  59
dependency   require_all/none svc:/system/filesystem/local (online)
dependency   require_all/none svc:/network/initial (online)
process      947 /usr/lib/cacao/lib/tools/launch -w /var/run/cacao/instances/default/run -L 1638
<strong>process      949 /usr/jdk/jdk1.6.0_13/bin/java -Xms4M -Xmx128M -Dcom.sun.management.jmxremote -D</strong></pre>
<p>Хорошее небольшое руководство по контрактам можно найти на <a href="http://learningsolaris.com/lab-the-contract-subsystem/" target="_blank">Contract Subsystem Lab</a>.</p>


<p>Похожие записи:<ol><li><a href='http://solarisblog.ru/security/solaris_secure_by_default_part2' rel='bookmark' title='Permanent Link: Безопасность по умолчанию в Solaris, часть 2'>Безопасность по умолчанию в Solaris, часть 2</a></li>
<li><a href='http://solarisblog.ru/security/solaris_secure_by_default_part3' rel='bookmark' title='Permanent Link: Безопасность по умолчанию в Solaris, часть 3'>Безопасность по умолчанию в Solaris, часть 3</a></li>
<li><a href='http://solarisblog.ru/commands/ponimaem-rbac' rel='bookmark' title='Permanent Link: Понимаем RBAC'>Понимаем RBAC</a></li>
</ol></p><img src="http://feeds.feedburner.com/~r/solarisblog/~4/YZBtvOqUqBw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solarisblog.ru/commands/kak-opredelit-servis-po-nomeru-pid/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>10 команд vi, позволяющих произвести впечатление на друзей</title>
		<link>http://solarisblog.ru/commands/10-komand-vi-pozvolyayushhie-proizvesti-vpechatlenie-na-druzej</link>
		<comments>http://solarisblog.ru/commands/10-komand-vi-pozvolyayushhie-proizvesti-vpechatlenie-na-druzej#comments</comments>
		<pubDate>Wed, 13 Oct 2010 06:05:53 +0000</pubDate>
		<dc:creator>solarisblog.ru</dc:creator>
				<category><![CDATA[Полезные команды]]></category>
		<category><![CDATA[vi]]></category>

		<guid isPermaLink="false">http://solarisblog.ru/?p=623</guid>
		<description><![CDATA[Пост про 10 самых нужных команд vi оказался очень популярным и легко выбился на первое место самых читаемых постов, опережая по количеству прочтений ближайших соседей минимум в два раза. Поэтому сегодня тоже будет пост про vi, но в этот раз про малоизвестные, но часто очень полезные команды. Перевод статьи &#171;vi tips and tricks: Ten cool [...]


Похожие записи:<ol><li><a href='http://solarisblog.ru/commands/10-samyx-nuzhnyx-komand-vi' rel='bookmark' title='Permanent Link: 10 самых нужных команд vi'>10 самых нужных команд vi</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Пост про <a title="10 самых нужных команд vi" href="http://solarisblog.ru/commands/10-samyx-nuzhnyx-komand-vi">10 самых нужных команд vi</a> оказался очень популярным и легко выбился на первое место самых читаемых постов, опережая по количеству прочтений ближайших соседей минимум в два раза. Поэтому сегодня тоже будет пост про vi, но в этот раз про малоизвестные, но часто очень полезные команды. Перевод статьи <a title="vi tips and tricks" href="http://www.ibm.com/developerworks/aix/library/au-vitips.html">&laquo;vi tips and tricks: Ten cool commands sure to impress your friends&raquo;</a>, автор Martin Wicks. Буквальный перевод названия: &laquo;Советы и хитрости vi: 10 крутых команд которые обязательно впечатлят ваших друзей&raquo;.</p>
<p>Осваивая возможности редактора vi, большинство людей (как новичков, так и опытных пользователей) стараются выделить базовый набор команд, позволяющий им решать задачи, выполняемые чаще всего: навигация или сохранение файла; вставка, изменение, удаление или поиск данных; выход без сохранения изменений.</p>
<p>Однако редактор vi очень мощный инструмент, обладающий богатыми возможностям и функциональностью. Даже после нескольких лет использования вы можете открывать новые функции, о существовании которых и не подозревали. Команды, описанные в данной статье, среди тех малоизвестных, которые позволят вам работать умнее, ускоряя известные и используемые вами методы работы, или позволяющие вам сделать с помощью vi то, о возможности чего вы не подозревали.</p>
<p><span id="more-623"></span>Прежде чем начать, давайте восстановим в памяти два режима работы vi: команд и вставки. Режим команд позволяет пользователю запускать команды для изменения текста, выполнять навигацию в файле и управлять сессией vi. В режиме вставки все, что вы напечатаете, вставляется в файл в текущей сессии vi. Когда вы запускаете vi, вы начинаете работать в режиме команд. Перейдя в режим вставки, вы можете вернутся обратно в режим команд, нажав клавишу Escape. Нажатие клавиши Escape в режиме команд оставит вас в режиме команд. Все команды, описанные в этой статье, должны запускаться в режиме команд.</p>
<h2>Включение и выключение нумерации строк</h2>
<p>Редактор vi имеет набор опций, которые определяют, как будет выглядеть сессия редактирования. Для изменения любых настроек сессии vi используется команда :set. Чтобы увидеть список всех доступных опций, используйте команду :set all.</p>
<p>Одна из опций, которую можно установить &#8211; number, она включает или выключает нумерацию строк (см. Листинг 1).</p>
<p><strong>Листинг 1. До включения нумерации строк</strong></p>
<pre>#
# Internet host table
#
::1     localhost
127.0.0.1       localhost       loghost
192.168.0.6     centos5
192.168.0.10    appserv
192.168.0.11    webserv
192.168.0.12    test
192.168.0.5     solaris10       # Added by DHCP
~
~
~
:set number</pre>
<p>Эта команда говорит vi, что надо печатать номер перед каждой строкой файла, который вы редактируете. После перевода vi в командный режим, вы можете написать :set number и нажать Enter, чтобы включить нумерацию строк (см. Листинг 2).</p>
<p><strong>Листинг 2. Нумерация строк включена</strong></p>
<pre>     1  #
     2  # Internet host table
     3  #
     4  ::1     localhost
     5  127.0.0.1       localhost       loghost
     6  192.168.0.6     centos5
     7  192.168.0.10    appserv
     8  192.168.0.11    webserv
     9  192.168.0.12    test
    10  192.168.0.5     solaris10       # Added by DHCP
~
~
~
:set number</pre>
<p>Отключить нумерацию строк можно с помощью команды :set nonumber. Вы также можете использовать сокращенные версии этой команды и :set number, а именно :set nu и :set nonu.</p>
<p>Видеть номера строк практически полезно, когда вам нужно быстро сосчитать количество срок, которые необходимо обработать функцией vi. Это особенно удобно, когда строк много и они могут занимать несколько экранов, или вы знаете диапазон срок, которые нужно обработать, но хотите определить номера начальной и конечной строки, чтобы указать их в команде vi.</p>
<p>Если вы хотите, чтобы номера строк показывались каждый раз при запуске vi, включите строку set number в файл .exrc в вашем домашнем каталоге.</p>
<h2>Авто-отступы</h2>
<p>При написании кода на некотором языке программирования одной из важнейших составляющих стиля является использование отступов, которые делают код более читабельным. Вы можете настроить vi так, чтобы он автоматически вставлял отступы для выравнивания в соответствии со стилем языка. Для включения и отключения авто-отступов используется опция autoindent (см. Листинг 3).</p>
<p><strong>Листинг 3. Включение авто-отступов</strong></p>
<pre>#!/bin/ksh
#
#
for file in /etc/*
do
        if [[ -f ${file}  ]] ; then
                 echo "${file} is a file"

~
~
~
~
~
:set autoindent</pre>
<p>С этого момента, если вы используете в начале строки отступы табуляцией или пробелами, в следующие строки автоматически будет вставлен такой же отступ. В командном режиме vi напишите :set autoindent и нажмите клавишу Enter для включения авто-отступов.</p>
<p>Уровень отступов задается с помощью опции shiftwidth. Например, чтобы установить отступ в 4 пробела, используйте :set shiftwidth=4 (см. Листинг 4).</p>
<p><strong>Листинг 4. Устанавливаем уровень отступов</strong></p>
<pre>#!/bin/ksh
#
#
for file in /etc/*
do
    if [[ -f ${file}  ]] ; then
        echo "${file} is a file"
    elif [[ -d ${file} ]] ; then
        echo "${file} is a directory"
    fi
done
~
~
:set shiftwidth=4</pre>
<p>В режиме команд вы можете использовать команду &gt;&gt;, чтобы добавить уровень отступа в текущей строке, или &lt;&lt;, чтобы удалить уровень. Чтобы добавить или удалить уровень отступа для нескольких строк, напишите их количество перед командой. Например, если в Листинге 4 курсор находится в строке 6, добавить уровень отступа для 5 строк можно командой 5&gt;&gt;. Результат показан на Листинге 5.</p>
<p><strong>Листинг 5. Отступ для блока строк</strong></p>
<pre>#!/bin/ksh
#
#
for file in /etc/*
do
        if [[ -f ${file}  ]] ; then
            echo "${file} is a file"
        elif [[ -d ${file} ]] ; then
            echo "${file} is a directory"
        fi
done
~
~</pre>
<p>Выключить авто-отступ можно с помощью команды :set noautoindent. Также доступны сокращенные версии команд &#8211; :set ai и :set noai. Также можно включить авто-отступы и задать уровень отступа одной командой &#8211; :set ai sw=4.<br />
Если вы хотите, чтобы авто-отступы включались автоматически с заданным уровнем при каждом запуске vi, включите команду set ai sw=4 в файл .exrc в вашем домашнем каталоге.</p>
<h2>Игнорирование регистра символов при поиске</h2>
<p>Как вы знаете, поиск в Unix регистрозависимый. Однако, если вы хотите, чтобы vi игнорировал регистр при поиске, то можете использовать команду :set ignorecase. Включить регистрозависимость можно командой :set noignorecase. Также вы можете использовать сокращенные версии команд (:set ic and :set noic).</p>
<p>Если вы хотите, чтобы vi всегда игнорировал регистр символов при поиске, включите команду set ignorecase в файл .exrc в вашем домашнем каталоге.</p>
<h2>Составной поиск</h2>
<p>Вы можете искать строки в vi с помощью команды /, указывая шаблон поиска в виде строки или регулярного выражения. Например, чтобы найти слово echo в файле, перейдите в режим команд, введите /echo и нажмите Enter. Это команда найдет первое слово в строке 3 в файле, показанном на Листинге 6.</p>
<p><strong>Листинг 6. Составной поиск</strong></p>
<pre>     1  #!/bin/ksh
     2  #
     3  echo "Starting"
     4  file=${1}
     5
     6  echo ${file}
     7
     8  if [[ ${file} = 1 ]] ; then
     9          ((file=${file}+1))
    10          echo "Adding one gives " \
    11                  ${file}
    12  fi
    13  echo "Ending"
    14  exit
~
~</pre>
<p>Вы можете использовать простое регулярное выражение, чтобы указать, что ищете строку, содержащую одно слово, следующее за другим. Например, чтобы найти первую строку, содержащую строку echo, за которой после нуля или нескольких символов идет строка file, вы используете команду /echo.*file. В файле на Листинге 6, команда найдет первое слово в строке 6.</p>
<p>Однако, эта команда сработает только, если оба шаблона находятся в одной строке. Если вы хотите искать не зависимо от того, в одной строке или нет находятся шаблоны, то можете использовать составной поиск, указывая обе команды поиска через точку с запятой (;). Например, чтобы найти первую строку echo, следующую за строкой {file}+1, воспользуйтесь командой /{file}+1/;/echo/. В файле на Листинге 6 эта команда найдет первое слово в строке 10.</p>
<p>Составной поиск особенно полезен, когда вы ищите в коде команду, которая следует за другой, например, когда вызывается функция после задания значения некоторой переменной.</p>
<h2>Повторное использование шаблонов</h2>
<p>Когда вы ищите шаблон в файле для замены, вы можете дать команду vi запоминать совпадающие шаблоны в буфере, который затем может быть повторно использован при замене с указанием номера буфера. Вы делаете это, заключая шаблон в \ и \, что говорит vi записать шаблон в нумерованный буфер (от 1 до 9). Затем вы можете ссылаться на этот буфер при замене, используя его номер от \1 до \9.</p>
<p>Например, чтобы найти в файле на Листинге 7 строки, начинающиеся со слова Martin, и для каждого вхождения добавить префикс Mr и суффикс Wicks, войдите в режим команд, введите команду :%s/^\(Martin\)/Mr \1 Wicks/g и нажмите Enter.</p>
<p><strong>Листинг 7. Повторное использование шаблонов (до замены)</strong></p>
<pre>Martin is an IT consultant. Martin likes
snowboarding and mountain biking. Martin has
worked on UNIX systems for over 15 years. Martin also
worked for many years before that on mainframes.
Martin lives in London.
~
~
~
~
:%s/^\(Martin\)/Mr \1 Wicks/g</pre>
<p>Команда состоит из следующих частей:</p>
<ul>
<li>:%s &#8211; говорит vi, что надо проводить замену</li>
<li>/ &#8211; разделитель шаблонов</li>
<li>^\(Martin\) &#8211; поиск строк, начинающихся с Martin и запись в буфер с номером 1.</li>
<li>/ &#8211; разделитель шаблонов</li>
<li>Mr \1 Wicks &#8211; замена найденной строки на строку, начинающуюся с Mr, затем идет содержимое буфера с номером 1, а затем Wicks.</li>
<li>/ &#8211; разделитель шаблонов</li>
<li>g &#8211; глобальная замена (замена каждой строки, соответствующей шаблону)</li>
</ul>
<p>Использовать ссылки на буфер можно как в шаблоне строки поиска, так и в шаблоне замены.</p>
<p>Результаты замены показаны на Листинге 8.</p>
<p><strong>Листинг 8. Повторное использование шаблонов (после замены)</strong></p>
<pre>Mr Martin Wicks is an IT consultant. Martin likes
snowboarding and mountain biking. Martin has
worked on UNIX systems for over 15 years. Martin also
worked for many years before that on mainframes.
Mr Martin Wicks lives in London.
~
~
~
~
:%s/^\(Martin\)/Mr \1 Wicks/g</pre>
<h2>Закладки</h2>
<p>Вы можете указать vi поставить закладку в файле, нажав в нужном месте клавишу M и за ней другую буквенную клавишу, которая будет служить ссылкой на закладку. Таким образом, у вас есть 26 закладок с названиями от a до z. Для перехода к закладке нажмите обратный апостроф (`) и символ ссылки на закладку.</p>
<p>Например, после нажатия клавиш MA (<em>Прим. переводчика. </em>Нажимать нужно в нижнем регистре, т.е. ma), vi запишет текущую позицию курсора в закладку с именем a. Если вы захотите вернутся к этой позиции позже во время редактирования, просто нажмите `A (<em>Прим. переводчика. </em>И снова нужен нижний регистр, т.е. `a). Чтобы перейти от текущей закладки к предыдущей, используйте двойной обратный апостроф (&laquo;).</p>
<h2>Найти, заменить, найти следующий, повторить</h2>
<p>Одна из самых полезных особенностей Поиска/Замены в редакторе vi &#8211; возможность найти строку, соответствующую шаблону, изменить ее, а затем повторить поиск для следующих совпадающих строк, с повторением изменений при необходимости, очень похоже на функцию Найти далее/Заменить в Microsoft Word.</p>
<p>Наверняка вы уже знаете, что можете искать шаблон строки в vi перейдя в режим команд, набрав <em>/шаблон</em> (где <em>шаблон</em> &#8211; строка или регулярное выражение) и затем нажав Enter. Эта команда найдет первую строку, соответствующую шаблону. С найденным текстом вы можете выполнить любые операции. Например, нажать клавиши C и W, а за ними текст, который заменит слово в найденной строке.</p>
<p>Чтобы быстро найти следующую строку, соответствующую шаблону, нажмите клавишу N (<em>Прим. переводчика</em>. N &#8211; поиск назад, n &#8211; поиск вперед). Когда найдено следующее совпадение, вы при необходимости можете использовать клавишу точка (.), чтобы повторить выполненные ранее изменения во вновь найденной строке, например функцию замены слова (cw) из предыдущего примера. Затем вы можете повторять поиск (n) и опциональную замену (.) используя эти клавиши, также как вы используете команды Найти Далее и Заменить в Microsoft Word.</p>
<h2>Изменение регистра</h2>
<p>Вы можете изменить регистр алфавитного символа в позиции курсора в vi, нажав клавишу тильда (~). Эта команда изменяет нижний регистра на верхний и наоборот. Если удерживать клавишу тильда нажатой, то курсор будет перемещаться по строке, меняя регистр всех встречающихся алфавитных символов. Вы можете набрать число перед тильдой, чтобы указать, у скольких символов нужно изменить регистр.</p>
<h2>Использование фильтров</h2>
<p>Наверняка вы знаете, что можете запускать команды интерпретатора в vi, набрав<em> :!cmd</em> (где <em>cmd </em>- команда UNIX, которую вы хотите выполнить) и нажав Enter. Например, команда <em>:!pwd</em> покажет текущий каталог, в котором выполняется редактирование.</p>
<p>Однако, вы также можете отправить секцию вашего файла на стандартный ввод выбранной вами команде UNIX, а изменения будут внесены в эту же секцию в буфере vi. Например, если вы хотите отсортировать весь файл, приведенный на Листинге 9, оставаясь в vi, вам надо набрать <em>:1,$!sort</em>, чтобы дать vi инструкции направить строки с 1 до конца файла ($) на ввод команды sort, и заменить указанную секцию выводом этой команды, после чего нажать Enter.</p>
<p><strong>Листинг 9. Сортировка файла внутри vi (до сортировки)</strong></p>
<pre>5
4
3
2
7
6
5
4
8
9
6
3
1
3
4
~
~
:1,$!sort</pre>
<p>На Листинге 10 показаны результаты сортировки.</p>
<p><strong>Листинг 10. Сортировка файла внутри vi (после сортировки)</strong></p>
<pre>1
2
3
3
3
4
4
4
5
5
6
6
7
8
9
~
~
:1,$!sort</pre>
<p>В качестве альтернативы вы можете указать количество строк, которые нужно обработать, начинаю с текущей позиции курсора. Чтобы сделать это, введите число строк, которые нужно обработать, двойной знак восклицания (!!) и команду UNIX.</p>
<p>Например, если курсор находится в строке 4 файла на Листинге 9, вы можете набрать:</p>
<pre>4!!awk '{print "New text",$0}'</pre>
<p>и нажать Enter чтобы добавить в начало строк с 4 по 7 включительно текст &laquo;New text&raquo;, как показано на Листинге 11.</p>
<p><strong>Листинг 11. Добавление текста в начало блока строк</strong></p>
<pre>5
4
3
New text 2
New text 7
New text 6
New text 5
4
8
9
6
3
1
3
4
~
~
!awk '{print "New text",$0}'</pre>
<p>Вы можете соединять команды UNIX вместе, чтобы создавать мощные фильтры в сессии vi, используя разделитель каналов (|) . Например, чтобы заменить содержимое файла в буфере редактирования текущей сессии vi на значения первых полей строк, отделенных пробелами, отсортированными в порядке возрастания и переведенными в верхний регистр, вы можете использовать команду:</p>
<pre>:1,$!awk '{print $1}' | sort | tr [:lower:] [:upper:]</pre>
<h2>Запись секции файла</h2>
<p>Вы можете записать секцию файла, который сейчас редактируете, набрав<em> :начало,конецw файл</em>, где <em>начало </em>- номер первой строки, которую вы хотите записать, <em>конец </em>- номер последней строки, которую нужно записать, <em>w</em> говорит о том, что вы хотите записать в другой файл, а <em>файл </em>- имя файла, в который вы хотите записать секцию. Вы можете использовать символ <em>$</em>, чтобы указать, что хотите записать файл до конца, и двойной символ &gt;&gt; после w, чтобы указать, что хотите добавить в файл, а не переписать его. Например, на Листинге 12 показано, как строки с номерами с 6 по 9 включительно добавляются в файл с именем <em>/tmp/newfile</em>.</p>
<p><strong>Листинг 12. Запись секции в файл, добавление вместо перезаписи.</strong></p>
<pre>     1  #
     2  # Internet host table
     3  #
     4  ::1     localhost
     5  127.0.0.1       localhost       loghost
     6  192.168.0.6     centos5
     7  192.168.0.10    appserv
     8  192.168.0.11    webserv
     9  192.168.0.12    test
    10  192.168.0.5     solaris10       # Added by DHCP
~
~
~
:6,9w &gt;&gt; /tmp/newfile</pre>
<h2>Выводы</h2>
<p>Редактор vi очень мощный инструмент, и я надеюсь что приемы приемы, описанные в этой статье, позволят вам повысить эффективность редактирования файлов. Помните, у vi всегда останутся возможности, которые не попались к вам на глаза. Счастливого редактирования!</p>


<p>Похожие записи:<ol><li><a href='http://solarisblog.ru/commands/10-samyx-nuzhnyx-komand-vi' rel='bookmark' title='Permanent Link: 10 самых нужных команд vi'>10 самых нужных команд vi</a></li>
</ol></p><img src="http://feeds.feedburner.com/~r/solarisblog/~4/70K6BjBc6_8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solarisblog.ru/commands/10-komand-vi-pozvolyayushhie-proizvesti-vpechatlenie-na-druzej/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>pfexec – удобная утилита Solaris</title>
		<link>http://solarisblog.ru/commands/pfexec-udobnaya-utilita-solaris</link>
		<comments>http://solarisblog.ru/commands/pfexec-udobnaya-utilita-solaris#comments</comments>
		<pubDate>Tue, 14 Sep 2010 05:55:43 +0000</pubDate>
		<dc:creator>solarisblog.ru</dc:creator>
				<category><![CDATA[Безопасность]]></category>
		<category><![CDATA[Полезные команды]]></category>
		<category><![CDATA[pfexec]]></category>
		<category><![CDATA[rbac]]></category>

		<guid isPermaLink="false">http://solarisblog.ru/?p=578</guid>
		<description><![CDATA[Перевод статьи &#171;Introducing pfexec, a Convenient Utility in the OpenSolaris OS&#187; Технология Role Base Access Control (RBAC) включает профили &#8211; набор административных возможностей, которые могут быть назначены пользователю или роли. Профили могут включать полномочия (authorizations), команды с атрибутами безопасности, и другие профили &#8211; удобный путь для группировки атрибутов безопасности. Используя RBAC, вы, как системный администратор, сначала [...]


Похожие записи:<ol><li><a href='http://solarisblog.ru/commands/ponimaem-rbac' rel='bookmark' title='Permanent Link: Понимаем RBAC'>Понимаем RBAC</a></li>
<li><a href='http://solarisblog.ru/security/konvertiruem-polzovatelya-root-v-rol' rel='bookmark' title='Permanent Link: Конвертируем пользователя root в роль'>Конвертируем пользователя root в роль</a></li>
<li><a href='http://solarisblog.ru/commands/solaris_secure_by_default_part1' rel='bookmark' title='Permanent Link: Безопасность по умолчанию в Solaris, часть 1'>Безопасность по умолчанию в Solaris, часть 1</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Перевод статьи <a title="pfexec" href="http://developers.sun.com/developer/technicalArticles/opensolaris/pfexec.html">&laquo;Introducing pfexec, a Convenient Utility in the OpenSolaris OS&raquo;</a></p>
<p>Технология Role Base Access Control (<a title="Понимаем RBAC" href="http://solarisblog.ru/commands/ponimaem-rbac">RBAC</a>) включает профили &#8211; набор административных возможностей, которые могут быть назначены пользователю или роли. Профили могут включать полномочия (authorizations), команды с атрибутами безопасности, и другие профили &#8211; удобный путь для группировки атрибутов безопасности.</p>
<p>Используя RBAC, вы, как системный администратор, сначала создаете профиль, а затем назначаете его ролям. Эти две задачи выходят за рамки данной статьи. Наконец, вы даете пользователю возможность активировать роль.</p>
<p>Также вы можете назначит профиль напрямую пользователю, этот метод описан ниже в статье. После этого пользователь может выполнять задачи, определенные в назначенном ему профиле, даже запускать команды от root, без необходимости входить в систему как суперпользователь. Все, что нужно &#8211; это написать перед командой pfexec. Работа pfexec очень похожа на работу sudo в Linux.</p>
<p><span id="more-578"></span></p>
<p>В статье описывается, как с помощью профилей делегировать задачи системного администрирования и давать привилегии root обычным пользователям. Предполагается, что вы знакомы с концепцией RBAC в Solaris и основными используемыми командами (<em>Прим. переводчика. </em>Если не знакомы, то можете прочитать в статье <a title="Понимаем RBAC" href="http://solarisblog.ru/commands/ponimaem-rbac">&laquo;Понимаем RBAC&raquo;</a>).</p>
<p>pfexec появилась в Solaris 8, входит в Solaris 9, Solaris 10 и OpenSolaris.</p>
<h2>Делегирование задач системного администрирования</h2>
<p>Предположим, что пользователь testuser должен часто делать каталоги разделяемыми и не разделяемыми по NFS (share и unshare). Привилегии обычного пользователя не позволяет ему это сделать:</p>
<pre>$ /usr/sbin/share /export/home/testuser
Could not share: /export/home/testuser: no permission</pre>
<p>Однако, вы можете назначить пользователю testuser профиль с необходимыми правами. Сделайте следующее:</p>
<p>1. Как root создайте пользователя и назначьте ему пароль:</p>
<pre>bash-3.00# useradd -m -d /export/home/testuser testuser
64 blocks
bash-3.00# passwd testuser
New Password:
Re-enter new Password:
passwd: password successfully changed for testuser
bash-3.00#</pre>
<p>2. Выйдите из системы и входите снова с именем testuser</p>
<p>3. Ищите подходящий профиль в файле exec_attr. Профиль должен содержать команды share. Ниже показано, как это можно сделать и найденный профиль: File System Management.</p>
<pre>bash-3.00$ grep "share" /etc/security/exec_attr
File System Management:suser:cmd:::/usr/sbin/dfshares:euid=0
File System Management:suser:cmd:::/usr/sbin/share:uid=0;gid=root
File System Management:suser:cmd:::/usr/sbin/shareall:uid=0;gid=root
File System Management:suser:cmd:::/usr/sbin/unshare:uid=0;gid=root
File System Management:suser:cmd:::/usr/sbin/unshareall:uid=0;gid=root
[...]</pre>
<p>4. Становитесь root&#8217;ом и назначайте профиль File System Management пользователю testuser.</p>
<pre>bash-3.00$ su - root
Password:
Sun Microsystems Inc.   SunOS 5.10      Generic January 2005
# usermod -P'File System Management' testuser</pre>
<p>Вуаля! testuser теперь может &laquo;расшаривать&raquo; каталоги, используя pfexec перед командой share, без необходимости становиться суперпользователем.</p>
<pre>bash-3.00$ pfexec /usr/sbin/share /export/home/testuser/
bash-3.00$ /usr/sbin/share
-               /export/home/testuser   rw   ""</pre>
<h2>Назначаем права root обычным пользователям</h2>
<p><strong>Внимание! </strong>Будьте осторожны, когда раздаете права root обычным пользователям с помощью pfexec. Убедитесь, что человеку можно доверять, что он (или она) грамотный администратор и способен держать в секрете свой пароль так, как будто это пароль root.</p>
<p>Профиль Primary Administrator в Solaris дает все права, традиционно связанные с root. Пользователь, которому назначен этот профиль, может запускать команды от имени root, без необходимости входить в систему как root. Смотрите соответствующую профилю запись в файле exec_attr:</p>
<pre>bash-3.00#  cat /etc/security/exec_attr | grep "Primary"
Primary Administrator:suser:cmd:::*:uid=0;gid=0</pre>
<p>Это означает, что все команды, запущенные с использованием данного профиля с помощью pfexec, будут выполнятся с uid=0 и gid=0, то есть с привилегиями root.</p>
<p>Назначение пользователю прав root с помощью профиля Primary Administrator имеет следующие преимущества:</p>
<ol>
<li>Не нужно передавать пароль root пользователям.</li>
<li>Чтобы забрать права root у пользователя, просто заберите у него профиль Primary Administrator, пароль root менять не надо.</li>
<li>Пользователи с профилем Primary Administrator могут запустить командный интерпретатор от имени root, после чего им не обязательно писать pfexec перед каждой командой.</li>
</ol>
<p>Рассмотрим пример:</p>
<p>1. От имени root назначьте пользователю testuser профиль Primary Administrator.</p>
<pre>bash-3.00# usermod -P'Primary Administrator' testuser</pre>
<p>2. Для проверки войдите пользователем testuser и выполните команду id -a дважды: без pfexec и с pfexec:</p>
<pre>bash-3.00$ id -a
uid=102(testuser) gid=1(other) groups=1(other)
bash-3.00$ pfexec id -a
uid=0(root) gid=0(root) groups=1(other)</pre>
<p>Без pfexec значения uid и guid равны testuser и other соответственно, то есть пользователь не root. С pfexec uid и gid равны 0, как у root.</p>
<p>Чтобы не печатать pfexec постоянно, пользователь может запустить bash от имени root:</p>
<pre>bash-3.00$ pfexec bash
bash-3.00# id
uid=0(root) gid=0(root)</pre>
<p>3. Чтобы удалить профиль, от имени root запустите команду:</p>
<pre>bash-3.00# usermod -P '' testuser</pre>
<p>После этого, uid и gid возвращаются к нормальным значениям пользователя, как видно из вывода команды id -a, запущенной с помощью pfexec. Без назначенного профиля, pfexec не предоставляет никаких дополнительных привилегий пользователю.</p>
<pre>bash-3.00$ pfexec id -a
uid=102(testuser) gid=1(other) groups=1(other)</pre>
<h2>Выводы</h2>
<p>Итак, pfexec &#8211; это Solaris версия используемой в Linux sudo. Назначение и отзыв привилегий root с помощью профиля Primary Administrator просто и быстро. Проводить мониторинг использования pfexec можно с помощью <a title="Аудит в Solaris" href="http://solarisblog.ru/security/audit">аудита Solaris</a>.</p>
<p><em>Прим. переводчика. </em>Хотя англоязычная статья посвящена OpenSolaris, все, что написано применимо к обычной Solaris, начиная с версии 8. Чтобы не сужать область применения, в переводе я везде писал Solaris вместо OpenSolaris. В процессе перевода я проверил выполнение всех команд на Solaris 10, они работают именно так, как описано в статье.</p>


<p>Похожие записи:<ol><li><a href='http://solarisblog.ru/commands/ponimaem-rbac' rel='bookmark' title='Permanent Link: Понимаем RBAC'>Понимаем RBAC</a></li>
<li><a href='http://solarisblog.ru/security/konvertiruem-polzovatelya-root-v-rol' rel='bookmark' title='Permanent Link: Конвертируем пользователя root в роль'>Конвертируем пользователя root в роль</a></li>
<li><a href='http://solarisblog.ru/commands/solaris_secure_by_default_part1' rel='bookmark' title='Permanent Link: Безопасность по умолчанию в Solaris, часть 1'>Безопасность по умолчанию в Solaris, часть 1</a></li>
</ol></p><img src="http://feeds.feedburner.com/~r/solarisblog/~4/MDiU-HRlkWA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solarisblog.ru/commands/pfexec-udobnaya-utilita-solaris/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Редко задаваемые вопросы о ядре Solaris</title>
		<link>http://solarisblog.ru/raznoe/redko-zadavaemye-voprosy-o-yadre-solaris</link>
		<comments>http://solarisblog.ru/raznoe/redko-zadavaemye-voprosy-o-yadre-solaris#comments</comments>
		<pubDate>Tue, 07 Sep 2010 03:56:53 +0000</pubDate>
		<dc:creator>solarisblog.ru</dc:creator>
				<category><![CDATA[Разное]]></category>

		<guid isPermaLink="false">http://solarisblog.ru/?p=565</guid>
		<description><![CDATA[Перевод некоторых вопросов из раздела &#171;Kernel&#187; документа Solaris Infrequently Asked and Obscure Questions, которые показались мне наиболее интересными. Куда записывать изменения в настройках параметров ядра? a. /etc/system Что такое разделяемая память (shared memory)? а. Это именно разделяемая память &#8211; механизм межпроцессного взаимодействия (Interprocess Communication, IPC), используемый несколькими процессами для доступа к общим сегментам памяти. Как [...]


Похожие записи:<ol><li><a href='http://solarisblog.ru/commands/solaris-64-32-bit' rel='bookmark' title='Permanent Link: Solaris 64 bit или 32 bit'>Solaris 64 bit или 32 bit</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Перевод некоторых вопросов из раздела &laquo;Kernel&raquo; документа <a title="Solaris Infrequently Asked and Obscure Questions" href="http://www.columbia.edu/~rtt2101/iaoq/">Solaris Infrequently Asked and Obscure Questions</a>, которые показались мне наиболее интересными.</p>
<ol>
<li>Куда записывать изменения в настройках параметров ядра?<br />
a. /etc/system</li>
<li>Что такое разделяемая память (shared memory)?<br />
а. Это именно разделяемая память &#8211; механизм межпроцессного взаимодействия (Interprocess Communication, IPC), используемый несколькими процессами для доступа к общим сегментам памяти.</li>
<li>Как узнать ограничения настроек параметров разделяемой памяти?<br />
а. Смотрите файл /usr/include/sys/shm.h</li>
<li>Что такое семафор?<br />
а. Целое неотрицательное число, значение которого увеличивается или уменьшается в зависимости от доступности ресурса.</li>
<li>Как узнать ограничения настроек семафоров?<br />
а. Смотрите файл /usr/include/sys/sem.h</li>
<li>Что такое дверь (door)?<br />
а. Это файловый дескриптор для межпроцессного взаимодействия между клиентским и серверным потоками (threads).<br />
б. Тип файла двери (door) &#8211; D&#8212;&#8212;&#8212;</li>
<li>Какой размер страницы памяти по-умолчанию?<br />
а. х86 &#8211; 4096 байт<br />
б. sun4u &#8211; 8192 байта<br />
в. sun4c/sun4m/sun4d &#8211; 4096 байт</li>
<li>Какой текущий размер страницы памяти?<br />
а. /usr/bin/pagesize</li>
<li>Какие типы исполняемых файлов поддерживает мое ядро?<br />
а. /usr/bin/isainfo -v</li>
<li>Какие типы модулей поддерживает мое ядро?<br />
а. /usr/bin/isainfo -kv</li>
</ol>


<p>Похожие записи:<ol><li><a href='http://solarisblog.ru/commands/solaris-64-32-bit' rel='bookmark' title='Permanent Link: Solaris 64 bit или 32 bit'>Solaris 64 bit или 32 bit</a></li>
</ol></p><img src="http://feeds.feedburner.com/~r/solarisblog/~4/ilVI8WO5M44" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solarisblog.ru/raznoe/redko-zadavaemye-voprosy-o-yadre-solaris/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

