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

<channel>
	<title>Купить сервер в Киеве. Cерверы и рабочие станции в Украине &#187; Статьи</title>
	<atom:link href="https://server-kiev.com/category/articles/feed/" rel="self" type="application/rss+xml" />
	<link>https://server-kiev.com</link>
	<description>Продажа мощных серверов по низким ценам. Серверы Dell, HP, Supermicro. Мощные рабочие станции из США. В наличии новые и б/у за наличку и по безналу.</description>
	<lastBuildDate>Wed, 09 Feb 2022 05:27:51 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=4.1.1</generator>
	<item>
		<title>Решение проблем с установкой Windows 10 (8.1, 8, 7) с USB флешки (Программе установки не удалось создать новый или найти существующий системный раздел)</title>
		<link>https://server-kiev.com/2015/10/ustanovka-windows-10-usb-programme-ustanovki-ne-udalos-sozdat-novyj-ili-najti-sushestvuyushij-sistemnyj-razdel/</link>
		<comments>https://server-kiev.com/2015/10/ustanovka-windows-10-usb-programme-ustanovki-ne-udalos-sozdat-novyj-ili-najti-sushestvuyushij-sistemnyj-razdel/#comments</comments>
		<pubDate>Mon, 12 Oct 2015 16:49:14 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[Windows]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[windows 10]]></category>
		<category><![CDATA[windows 10 setup troubleshooting]]></category>
		<category><![CDATA[проблемы с установкой windows]]></category>
		<category><![CDATA[Программе установки не удалось создать новый или найти существующий системный раздел]]></category>
		<category><![CDATA[установка windows]]></category>
		<category><![CDATA[установщик не может найти раздел]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=638</guid>
		<description><![CDATA[Суть данного решения вот в чем: скопировать установочные файлы с флешки на диск который планировали использовать как место для установки (например диск C:), сделать его загрузочным, вытащить флешку и загрузиться с него, с последующей установкой винды с винта на тот же винт (с диска C: на диск С:). Решение проблемы: Грузим инсталятор с флехи Практический <a href="https://server-kiev.com/2015/10/ustanovka-windows-10-usb-programme-ustanovki-ne-udalos-sozdat-novyj-ili-najti-sushestvuyushij-sistemnyj-razdel/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p><strong><a href="http://server-kiev.com/wp-content/uploads/2015/10/windows-10-win8-neudalos-sozdat-ili-nayti-razdel.jpg"><img class="aligncenter size-full wp-image-639" src="http://server-kiev.com/wp-content/uploads/2015/10/windows-10-win8-neudalos-sozdat-ili-nayti-razdel.jpg" alt="Программе установки не удалось создать новый или найти существующий системный раздел" width="500" height="350" /></a>Суть данного решения</strong> вот в чем: скопировать установочные файлы с флешки на диск который планировали использовать как место для установки (например диск C:), сделать его загрузочным, вытащить флешку и загрузиться с него, с последующей установкой винды с винта на тот же винт (с диска C: на диск С:).<span id="more-638"></span></p>
<h3>Решение проблемы:</h3>
<ol>
<li>Грузим инсталятор с флехи</li>
<li>Практический в любой момент жмем <b>shift+f10</b>, попадаем в командную строку</li>
<li>Запускаем <b>diskpart.exe</b> (что писать в командной строке дальше пишу жирным)</li>
<li>В этой программе выполняем следующие действия:
<ol>
<li><b>select disk=0</b>. Подразумевается, что диск 0 это то, куда Вы ставите винду и там нет ничего полезного. Иначе 10 раз подумайте и почитайте справку по утилите diskpart.</li>
<li><b>create partition primary size=xxx</b>, где ххх это не залить раздел картинками с голыми тётями, а размер будущего диска С, куда Вы будете ставить ОС.</li>
<li><b>select partition=1</b></li>
<li><b>active</b> (сделали раздел активным)</li>
<li><b>format fs=ntfs quick</b> (быстрое форматирование в NTFS)</li>
<li><b>assign</b>. Сделали на винте диск, подключили его и готовы с ним дальше работать</li>
<li><b>exit</b>, вышли из программы diskpart.</li>
</ol>
</li>
<li>Идем на флешку (привод), где у нас дистрибутив винды. В моем случае это “<b>cd d:</b>“.</li>
<li>Копируем все, что там есть, на наш краснознаменный диск С:. <b>xcopy d: c: /e /h /k</b></li>
<li>Идем в подкаталог boot дистрибутива винды. <b>cd boot</b></li>
<li>Используем утилиту bootsect для создания загрузочного кода на диске С, так: <b>bootsect /nt60 c:</b>. <em>Что мы сделали? Мы сделали… мнэ… инсталяционный жесткий диск с Windows</em>.</li>
<li>Вытаскивает флешку и ребутим комп. Ставим винду. С диска С: на диск С:. Потом дистрибутивные файлы можно будет потереть.</li>
<li>После установки уберем лишний пункт с меню загрузки (Windows Setup)
<ol>
<li>Запускаем <strong>cmd.exe</strong> от имени администратора</li>
<li>Смотрим список пунктов меню загрузки <strong>bcdedit</strong></li>
<li>Находим Windows Setup и копируем его <em>identifier</em></li>
<li>Запускаем <strong>bcdedit /delete {identifier}</strong></li>
</ol>
</li>
</ol>
<p>Готово. Приятного использования!</p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2015/10/ustanovka-windows-10-usb-programme-ustanovki-ne-udalos-sozdat-novyj-ili-najti-sushestvuyushij-sistemnyj-razdel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Журналы (logs) в MySQL</title>
		<link>https://server-kiev.com/2015/04/mysql-logs/</link>
		<comments>https://server-kiev.com/2015/04/mysql-logs/#comments</comments>
		<pubDate>Wed, 15 Apr 2015 15:24:59 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[Статьи]]></category>
		<category><![CDATA[binary log]]></category>
		<category><![CDATA[error log]]></category>
		<category><![CDATA[log]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[query log]]></category>
		<category><![CDATA[slow query log]]></category>
		<category><![CDATA[лог всех запросов mysql]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=374</guid>
		<description><![CDATA[В MySQL на данный момент существуют 4 вида журнала (лога) и при достаточно серьёзной работе с базами на MySQL необходимо за ними следить. Например, бинарный лог у нас за сутки набирает около гигабайта, а размер жёсткого диска на сервере ограничен и за ними надо следить. Однако следить следует не только за бинарным логом, так как <a href="https://server-kiev.com/2015/04/mysql-logs/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-375" src="http://server-kiev.com/wp-content/uploads/2015/04/Mysql.png" alt="Mysql" width="977" height="505" />В MySQL на данный момент существуют 4 вида журнала (лога) и при достаточно серьёзной работе с базами на MySQL необходимо за ними следить. Например, бинарный лог у нас за сутки набирает около гигабайта, а размер жёсткого диска на сервере ограничен и за ними надо следить. Однако следить следует не только за бинарным логом, так как логи (журналы) в MySQL могут принести немалую пользу.</p>
<p>Итак, какие логи ведёт MySQL?<br />
Это:<br />
1. бинарный лог (binary log)<br />
2. лог ошибок (error log)<br />
3. лог медленный запросов (slow query log)<br />
4. лог запросов (general query log)<br />
5. лог репликаций (relay log)</p>
<p>Каждый из них по-своему полезен.</p>
<p><strong>Бинарный лог</strong></p>
<p>В первую очередь полезен с точки зрения репликаций. Можно его бэкапить, можно использовать для восстановления данных на более точное время при использовании бэкапов. Лог содержит все команды изменений базы данных, выборки (select, show) не сохраняет, для таблиц, поддерживающих транзакции (BDB, InnoDB) запись в лог выполняется только после выполнения команды COMMIT. Для лога можно указывать список баз данных, которые надо логировать и список баз данных, которые не надо логировать. В более ранних версиях вместо бинарного лога использовался лог обновлений. Использование бинарного лога снижает производительность базы данных, однако его польза настолько велика, что крайне не рекомендуется его отключать. Рекомендуется защищать бинарный лог паролем, так как он может данные также о паролях пользователей. При достижении максимально разрешённого размера (1 гиг по умолчанию) создаётся следующий файл. Каждый новый файл имеет порядковый номер после имени.</p>
<p>Содержание бинарного лога можно посмотреть с помощью утилиты mysqlbinlog.</p>
<p>Основные настройки в my.cnf</p>
<p>Местоположение лога:<br />
log_bin = /var/log/mysql/mysql-bin.log</p>
<p>Максимальный размер, минимум 4096 байт, по умолчанию 1073741824 байт (1 гигабайт):<br />
max_binlog_size= 500M</p>
<p>Сколько дней хранится:<br />
expire_logs_days = 3</p>
<p>Наиболее часто использующиеся команды</p>
<p>Повторение действий после операции восстановления:<br />
shell&gt; mysqlbinlog log_file | mysql -h server_name</p>
<p>Удаление логов до определённого файла:<br />
PURGE BINARY LOGS TO &#8216;mysql-bin.000&#8242;;</p>
<p>Удаление логов до определённой даты:<br />
PURGE BINARY LOGS BEFORE &#8216;YYYY-MM-DD hh:mm:ss';</p>
<p><strong>Лог ошибок</strong></p>
<p>Особенно полезен в случаях сбоев. Лог содержит информацию об остановках, запусках сервера, а также сообщения о критических ошибках. Может содержать сообщения с предупреждениями (warnings).</p>
<p>Основные настройки в my.cnf</p>
<p>Местоположение лога:<br />
log_error = /var/log/mysql/mysql.err</p>
<p>Флаг, указывающий стоит ли записывать в лог в том числе предупреждения (записываются, если значение больше нуля):<br />
log_warnings = 1</p>
<p>Наиболее часто использующиеся команды</p>
<p>Переход к новому файл лога:<br />
shell&gt; mysqladmin flush-logs</p>
<p>Копирование старой части лога (необходимо, так как в случае повторного выполнения fluch он будет удалён):<br />
shell&gt; mv host_name.err-old backup-directory</p>
<p><strong>Лог медленных запросов</strong></p>
<p>Если есть подозрение, что приложение работает медленно из-за неэффективных запросов к базе, то в первую очередь следует проверить лог медленных запросов. В случае оптимизации запросов этот лог поможет выяснить, что необходимо оптимизировать в первую очередь.</p>
<p>Основные настройки в my.cnf</p>
<p>Местоположение лога:<br />
log_slow_queries = /var/log/mysql/mysql_slow.log</p>
<p>Со скольки секунд выполнения запрос считается медленным, минимальное значений — 1 секунда, по умолчанию 10 секунд:<br />
long_query_time = 10</p>
<p>Если надо логировать запросы, которые не используют индексы, надо добавить строку:<br />
log-queries-not-using-indexes</p>
<p>Если надо вести лог медленных команд, таких как OPTIMIZE TABLE, ANALYZE TABLE и ALTER TABLE:<br />
log-slow-admin-statements</p>
<p><strong>Лог всех запросов</strong></p>
<p>Лог содержит информацию о подключениях и отключениях клиентов, а также все SQL запросы, которые были получены. Фактически, это временный лог. Обычно лог удаляется автоматически сразу после выполнения всех команд (т.е. как только он стал ненужным). Лог ведётся в соответствии с очередность поступления запросов. Этот лог содержит все запросы к базе данных (независимо от приложений и пользователей). Так что если есть желание (или необходимость) проанализировать, какие необходимы индексы, какие запросы могли бы оптимизированы, то этот лог как раз может помочь в таких целях. Лог полезен не только для случаев, когда необходимо знать, какие запросы выполняются с базой данных, но и в случаях, когда ясно, что возникла ошибка с базой данных, но неизвестно, какой запрос был отправлен к базе данных (например, в случае генерации динамического SQL-а). Рекомендуется защищать лог запросов паролем, так как он может данные также о паролях пользователей.</p>
<p>Основные настройки в my.cnf</p>
<p>Местоположение лога:<br />
log = /var/log/mysql/mysql.log</p>
<p>Наиболее часто использующиеся команды</p>
<p>В отличии от других логов, перезагрузка сервера и команда fluch не инициирует создание нового лога. Но это можно сделать вручную:<br />
shell&gt; mv host_name.log host_name-old.log<br />
shell&gt; mysqladmin flush-logs<br />
shell&gt; mv host_name-old.log backup-directory</p>
<p><strong>Лог репликаций</strong></p>
<p>Здесь логируются изменения, выполненные по инициации сервера репликаций. Как и бинарный лог, состоит из файлов, каждый из которых пронумерован.</p>
<p>Основные настройки в my.cnf</p>
<p>Местоположение лога:<br />
relay-log = /var/log/mysql/mysql-relay-bin.log</p>
<p>Максимальный размер:<br />
max_relay_log_size = 500М</p>
<p>Наиболее часто использующиеся команды</p>
<p>Начать новый файл лога можно только при остановленном дополнительном (slave) сервере:<br />
shell&gt; cat new_relay_log_name.index &gt;&gt; old_relay_log_name.index<br />
shell&gt; mv old_relay_log_name.index new_relay_log_name.index</p>
<p>Команда flush logs инициирует ротацию лога.</p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2015/04/mysql-logs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Полезные команды, которые могут пригодиться при DDoS и не только</title>
		<link>https://server-kiev.com/2015/04/ddos-unix-commands/</link>
		<comments>https://server-kiev.com/2015/04/ddos-unix-commands/#comments</comments>
		<pubDate>Wed, 15 Apr 2015 15:14:45 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[command line]]></category>
		<category><![CDATA[ddos]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=372</guid>
		<description><![CDATA[В моем случае, в качестве frontend сервера, стоит nginx и формат access-лога имеет вид: log_format main &#8216;$remote_addr — $remote_user [$time_local] &#171;$host&#187; &#171;$request&#187; &#8216; &#8216;$status $body_bytes_sent &#171;$http_referer&#187; &#8216; &#8216;&#187;$http_user_agent&#187; &#171;$http_x_forwarded_for&#187; -&#62; $upstream_response_time'; Что на выходе дает что-то вроде такой строки: 188.142.8.61 — &#8212; [14/Sep/2014:22:51:03 +0400] «www.mysite.ru» «GET / HTTP/1.1» 200 519 «6wwro6rq35muk.ru/» «Mozilla/4.0 (compatible; MSIE 8.0; <a href="https://server-kiev.com/2015/04/ddos-unix-commands/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>В моем случае, в качестве frontend сервера, стоит nginx и формат access-лога имеет вид:</p>
<p>log_format main &#8216;$remote_addr — $remote_user [$time_local] &#171;$host&#187; &#171;$request&#187; &#8216;<br />
&#8216;$status $body_bytes_sent &#171;$http_referer&#187; &#8216;<br />
&#8216;&#187;$http_user_agent&#187; &#171;$http_x_forwarded_for&#187; -&gt; $upstream_response_time';</p>
<p>Что на выходе дает что-то вроде такой строки:</p>
<p>188.142.8.61 — &#8212; [14/Sep/2014:22:51:03 +0400] «<a href="http://www.mysite.ru/">www.mysite.ru</a>» «GET / HTTP/1.1» 200 519 «<a href="http://6wwro6rq35muk.ru/">6wwro6rq35muk.ru/</a>» «Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.191602; .NET CLR 3.5.191602; .NET CLR 3.0.191602» &#171;-&#187; -&gt; 0.003</p>
<p>1. <b>tail -f /var/log/nginx/nginx.access.log | cut -d &#8216; &#8216; -f 1 | logtop</b></p>
<p>Позволяет получить общую картину: распределение уникальных IP, с которых идут запросы, кол-во запросов с одного IP и т.д.<br />
Самое ценное — что все это работает в режиме реального времени и можно мониторить ситуацию, внося какие-либо изменения в конфигурацию (например просто забанить ТОП 20 самых активных IP через iptables или временно ограничить географию запросов в nginx через GeoIP <a href="http://nginx.org/ru/docs/http/ngx_http_geoip_module.html">http://nginx.org/ru/docs/http/ngx_http_geoip_module.html</a>).<br />
<a name="habracut"></a><br />
Покажет (и будет обновляться в режиме реального времени) что-то вроде:</p>
<p><i>3199 elements in 27 seconds (118.48 elements/s)<br />
1 337 12.48/s 95.65.66.183<br />
2 308 11.41/s 122.29.177.10<br />
3 304 11.26/s 122.18.251.54<br />
4 284 10.52/s 92.98.80.164<br />
5 275 10.19/s 188.239.14.134<br />
6 275 10.19/s 201.87.32.17<br />
7 270 10.00/s 112.185.132.118<br />
8 230 8.52/s 200.77.195.44<br />
9 182 6.74/s 177.35.100.49<br />
10 172 6.37/s 177.34.181.245</i></p>
<p>Где в данном случае колонки означают:</p>
<ul>
<li>1 — порядковый номер</li>
<li>2 — количество запросов с данного IP</li>
<li>3 — количество запросов в секунду с данного IP</li>
<li>4 — собственно сам IP</li>
</ul>
<p>Вверху показывается суммарная статистика по всем запросам</p>
<p>В данном случае мы видим, что с IP 95.65.66.183 идет 12,48 запросов/секунду и за последние 27 секунд было сделано 337 запросов. По остальным строкам аналогично.</p>
<p>Разберем по частям:<br />
<b>tail -f /var/log/nginx/nginx.access.log</b> — в непрерывном режиме считываем конец лог-файла</p>
<p><b>cut -d &#8216; &#8216; -f 1 </b>— разделяем строку на «подстроки» разделителем, указанным в флаге -d. (в данном примере указан пробел).<br />
Флаг -f 1 — показываем только поле с порядковым номером «1» (в данном случае это поле будет содержать IP, с которого идет запрос)</p>
<p><b>logtop</b> — считает количество одинаковых строк (в данном случае IP), сортирует их в порядке убывания и выводит списком, попутно добавляя статистику (в Debian ставится через aptitude из стандартного репозитория).</p>
<p>2. <b>grep &#171;&amp;key=&#187; /var/log/nginx/nginx.access.log | cut -d &#8216; &#8216; -f 1 | sort | uniq -c | sort -n | tail -n 30</b> — покажет распределение какой-либо строки по IP в логе.</p>
<p>В моем случае мне нужно было собрать статистику как часто один IP использует в запросе параметр &amp;key=….</p>
<p>Покажет что-то вроде такого:</p>
<p><i>31 66.249.69.246<br />
47 66.249.69.15<br />
51 66.249.69.46<br />
53 66.249.69.30<br />
803 66.249.64.33<br />
822 66.249.64.25<br />
912 66.249.64.29<br />
1856 66.249.64.90<br />
1867 66.249.64.82<br />
1878 66.249.64.86</i></p>
<ul>
<li>1 — число вхождений строки (в данном случае IP)</li>
<li>2 — собственно сам IP</li>
</ul>
<p>В данном случае мы видим, что с IP 66.249.64.86 суммарно пришло 1878 запросов (и потом, если посмотрим в Whois — увидим что этот IP принадлежит Google и не является «зловредным»)</p>
<p>Разберем по частям:</p>
<p><b>grep &#171;&amp;key=&#187; /var/log/nginx/nginx.access.log</b> — находим все строки в логе, содержащие подстроку &#171;&amp;key=&#187; (не важно в какой части строки)<br />
<b>cut -d &#8216; &#8216; -f 1</b> — (см. предыдущий пример), выведем IP<br />
<b>sort</b> — отсортируем строки (нужно для корректной работы следующей команды)<br />
<b>uniq -c</b> — покажем уникальные строки + подсчитаем количествово вхождений этих строк (флаг -с)<br />
<b>sort -n</b> — отсортируем используя числовой режим сортировки (флаг -n)<br />
<b>tail -n 30</b> — выведем 30 строк с наибольшим количеством вхождений (флаг -n 30, можно указать произвольное число строк)</p>
<p>Все запросы выше приведены для Debian или Ubuntu, но думаю в других Linux дистрибутивах команды будут иметь похожий вид.</p>
<p>Моя подборка, лет 5 назад откуда-то скопировал, часто выручают и логи не требуются:</p>
<blockquote><p>Cколько коннектов на 80 порт: netstat -na | grep &#171;:80\ &#187; | wc -l<br />
На какой домен чаще всего идут запросы: tcpdump -npi eth0 port domain<br />
С какого ip сколько запросов netstat -ntu | awk &#8216;{print $5}&#8217;| cut -d: -f1 | sort | uniq -c | sort -nr | more<br />
Нагрузка на канал ftop -i eth0 -B</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2015/04/ddos-unix-commands/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Использование netstat</title>
		<link>https://server-kiev.com/2015/04/netstat-usage/</link>
		<comments>https://server-kiev.com/2015/04/netstat-usage/#comments</comments>
		<pubDate>Wed, 15 Apr 2015 15:08:05 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[netstat]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[tcp/ip]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=370</guid>
		<description><![CDATA[netstat –na — просмотр всех открытых портов netstat –nat – просмотр всех открых TCP-портов netstat –nau — просмотр всех открых UDP-портов netstat –npl — просмотр всеx прослушиваемых портов(TCP,UDP,unix-сокеты) netstat –nptl — просмотр всеx прослушиваемых портов TCP netstat –npul — просмотр всеx прослушиваемых портов UDP netstat –nplx — просмотр всеx прослушиваемых unix-сокетов netstat –s — просмотр <a href="https://server-kiev.com/2015/04/netstat-usage/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>netstat –na — просмотр всех открытых портов<br />
netstat –nat – просмотр всех открых TCP-портов<br />
netstat –nau — просмотр всех открых UDP-портов<br />
netstat –npl — просмотр всеx прослушиваемых портов(TCP,UDP,unix-сокеты)<br />
netstat –nptl — просмотр всеx прослушиваемых портов TCP<br />
netstat –npul — просмотр всеx прослушиваемых портов UDP<br />
netstat –nplx — просмотр всеx прослушиваемых unix-сокетов<br />
netstat –s — просмотр статистики всех протоколов()<br />
netstat –st — просмотр статистики TCP-протокола<br />
netstat –su — просмотр статистики UDP-протокола<br />
netstat –r – просмотр таблицы маршрутизации<br />
netstat –i – просмотр статистики сетевых интерфейсов<br />
netstat -ic 2 – просмотр статистики сетевых интерфейсов в режиме реального времени с обновлением каждые 2 секунды.<br />
netstat –ie – просмотр расширенной информации о сетевых интерфейсах (аналог ifconfig)</p>
<p><strong>Использование Netstat для определения DoS/DDoS.</strong></p>
<p>Отображение количества подключений на каждый IP-адрес в состоянии ESTABLISHED<br />
netstat -naltp | grep ESTABLISHED | awk ‘{print $5}’ | awk -F: ‘{print $1}’ | sort -n | uniq -c<br />
или<br />
netstat -nalpt | grep ESTABLISHED | awk ‘{print $5}’ | cut -d: -f1| sort | uniq -c | sort -rn</p>
<p>Отобразить все активные Интернет-подключения на 80 порт сервера с их сортировкой<br />
Полезно для определения большого количества запросов с одного IP-адреса(DoS)<br />
netstat -na | grep :80 | sort</p>
<p>Подсчет количества подключений с каждого Ip-адреса на 80-порт сервера.<br />
netstat -npla | grep :80 | awk ‘{print $5}’ | cut -d: -f1 | sort | uniq -c | sort –rn</p>
<p><strong>Определение количества запросов на соединение было получено из сети.</strong></p>
<p>Число должно быть достаточно низким(менее 5).Во время DoS/DDoS-атаки такое количество может иметь высокое значение.Однако значение всегда зависит от системы(высокое значение на одном сервере может быть средним на другом)<br />
netstat -np | grep SYN_RECV | wc –l</p>
<p>Список всех IP-адресов, с которых поступают соединения со статусом SYN_RECV<br />
netstat -np | grep SYN_RECV | awk ‘{print $5}’ | awk -F: ‘{print $1}’</p>
<p>Подсчет количества подключений с каждого IP-адреса<br />
netstat -ntu | awk ‘{print $5}’ | cut -d: -f1 | sort | uniq -c | sort –rn</p>
<p>Подсчет количества подключений с каждого IP-адреса по протоколу TCP или UDP.<br />
netstat -nap | grep ‘tcp\|udp’ | awk ‘{print $5}’ | cut -d: -f1| sort | uniq -c | sort –rn</p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2015/04/netstat-usage/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Выбор сервера для 1С</title>
		<link>https://server-kiev.com/2015/03/vybor-servera-dlya-1s/</link>
		<comments>https://server-kiev.com/2015/03/vybor-servera-dlya-1s/#comments</comments>
		<pubDate>Sat, 14 Mar 2015 19:53:45 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[Статьи]]></category>
		<category><![CDATA[1С бухгалтерия]]></category>
		<category><![CDATA[1С предприятие]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=267</guid>
		<description><![CDATA[Как выбрать оптимальное оборудование для 1С:Предприятие ? Как выбрать сервер для 1С и систему хранения данных? При выборе оборудования для 1С необходимо учесть особенность и структуру вычислительной нагрузки. В условиях ограниченного бюджета эту задачу поможет решить мониторинг основных подсистем сервера в условиях решения реальных задач. При выборе оборудования следует исходить из существующих условий, задач и <a href="https://server-kiev.com/2015/03/vybor-servera-dlya-1s/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p><strong>Как выбрать оптимальное оборудование для 1С:Предприятие ? Как выбрать сервер для 1С и систему хранения данных?</strong><br />
При выборе оборудования для 1С необходимо учесть особенность и структуру вычислительной нагрузки. В условиях ограниченного бюджета эту задачу поможет решить мониторинг основных подсистем сервера в условиях решения реальных задач. При выборе оборудования следует исходить из существующих условий, задач и доводов здравого смысла.<br />
Даже при небольшом количестве пользователей пакет 1С:Предприятие является приложением, весьма требовательным к ресурсам. Поэтому при выборе серверного оборудования для 1С необходимо тщательно проанализировать потребности, чтобы избежать впоследствии узких мест. При этом в условиях ограниченного бюджета никто не приобретает серверы избыточной мощности. Анализ задач, для решения которых приобретается сервер, важен еще и потому, что спроектировать конфигурацию оборудования для конкретных задач намного проще.<br />
Рассмотрим наиболее популярные базовые конфигурации платформы 1С:Предприятие: Бухгалтерский учет, Зарплата и Управление персоналом, Управление торговлей, Управление торговым предприятием и Управление Производственным предприятием. Оговоримся, что будем рассматривать вариант работы с «1С: Предприятие 8.2 Сервер приложений» в режиме удаленного рабочего стола для одновременной работы до 100-150 пользователей базы данных. При более обширных базах данных наши рекомендации могут быть применены лишь отчасти, поскольку работа с большими базами данных требует отдельного рассмотрения в каждом конкретном случае.<span id="more-267"></span></p>
<p><strong>Процессоры и оперативная память сервера 1C:</strong><br />
В организациях небольшого размера с количеством пользователей в системе не более семи человек база данных, как правило, невелика (обычно не более 1ГБ) и платформа 1С:Предприятие работает на пользовательском компьютере в файловом режиме. Для решения таких задач применяются классические файл-серверы. В таком случае можно порекомендовать установку процессоров Intel Xeon E3-12xx, в случае сильно ограниченного бюджета можно обойтись даже Intel Core i3. Объем оперативной памяти необходимо установить из расчета 4 ГБ на нужды операционной системы и 4 ГБ для системного файлового кэша.<br />
При количестве пользователей от 7 до 25 размер базы данных больше, обычно до 4ГБ. В таком случае с нагрузкой могут справиться четырехъядерный процессор Intel Xeon E3-12xx или AMD Opteron 4хх. В случае такого количества пользователей объем оперативной памяти также должен быть более 4ГБ для работы операционной системы, от 2 до 8 ГБ для работы «1С: Предприятие 8.2 Сервер приложений» и столько же для кэша MS SQL Server. При этом следует помнить, что для баз данных небольшого объема лучше кэшировать не часть базы данных, а весь объем.<br />
Таким образом, для одновременного обслуживания от 7 до 25 пользователей в системе рекомендуется около 16-24 ГБ оперативной памяти. Известно, что иногда при выгрузке операционной системой «1С:Предприятие 8.2. Сервер приложений» на жесткий диск в файл подкачки, может быть потерян отклик. Поэтому по возможности следует иметь запас свободного места в оперативной памяти.<br />
Этим требованиям отвечают стоечные серверы HP Proliant DL320e, DELL PowerEdge R320, DELL R420, IBM System x3250 M4, Fujitsu Primergy RX100 и Primergy RX200. В напольном (tower) исполнении это серверы: HP Proliant ML310e, ML350e, DELL PowerEdge T110, DELL T420, IBM System x3200 M4.<br />
В более крупных организациях для доступа к приложению используется терминальный режим (режим удаленного доступа Remote Desktop). Обычно при количестве пользователей от 10 до 100 с базой данных объемом от 1 ГБ и выше сервер приложений 1С:Предприятие 8.2 и пользовательская часть работают на одном и том же сервере.<br />
Рассмотрим, какие процессорные решения подходят для обслуживания таких задач. В силу внутренней архитектуры процессоров одно физическое ядро способно эффективно обслуживать около 8-12 потоков пользовательских терминальных сессий. Из практики известно, что для работы с 1С:Предприятие в режиме Remote Desktop серверные процессоры с низкими частотами из младших линеек малопригодны. В случае небольшого числа пользователей (до 20) будет достаточно четырехъядерного процессора из серии Intel Xeon E3-12xx. При этом распределение нагрузки будет выглядеть следующим образом: два ядра для нужд операционной системы и терминальных пользователей, одно ядро для «1С: Предприятие 8.2 Сервер приложений» и одно ядро для обслуживания SQL Server. В случае, если пользователей больше 20, либо если объем базы данных составляет более 4 ГБ, придется рассмотреть двухпроцессорные системы на базе Intel Xeon E5-26xx или AMD Opteron 62xx.<br />
При расчете требуемого объема памяти следует учесть, что 4ГБ будут использоваться операционной системой, еще 4 ГБ и более – в качестве кэша MS SQL Server, и от 2 до 8 ГБ &#8212; для обслуживания «1С: Предприятие 8.2 Сервер приложений». При этом еще необходима память для работы терминальных сессий.<br />
В зависимости от конфигурации в приложениях «Бухгалтерский учет» и «Торговля и склад» для работы одного терминального пользователя необходимо от 200 до 240 МБ, в приложениях «Зарплата и Управление персоналом» и «Управление торговым предприятием» &#8212; от 240 до 320 МБ, в приложении «Управление предприятием» до 480 МБ. При этом, если пользователь дополнительно запускает на сервере иные приложения, например, приложения MS Office, то на каждое такое приложение необходимо около 200 МБ. Таким образом, нижний порог объема оперативной памяти для сервера терминалов составит 24 ГБ.<br />
В качестве примера приведем расчет конфигурации для сервера 1С с полным пакетом программного обеспечения в конфигурации «Управление Торговым Предприятием» с базой данных объемом 8 ГБ и 50-ю терминальными пользователями. Здесь оптимальным вариантом будут два процессора Intel Xeon E5-2650 (или аналогичные им) с тактовой частотой 2 ГГц и восемью ядрами в каждом. Минимальный необходимый объем оперативной памяти составит 36 ГБ, а лучше от 48 до 64 ГБ.<br />
Для обслуживания этих задач (до 100 пользователей 1С:Предприятие 8.2, объем БД от 1Гб), когда и сервер приложений 1С:, и пользовательская часть могут обслуживаться на одной серверной машине. Отлично подойдут решения на базе серверов HP Proliant DL360p, DL380p, DL385p, DELL PowerEdge R620, R720, IBM System x3550 M4, IBM x3650 M4, Fujitsu Primergy RX300 и RX350.</p>
<p><strong>Дисковая подсистема для систем 1C:</strong><br />
Многие проблемы, связанные с медленной работой серверов 1С: Предприятие вызваны неправильной конфигурацией дисковой подсистемы. Правильно выбранная дисковая подсистема обеспечивает высокий уровень производительности сервера. Особенно актуальным вопрос выбора дисковой подсистемы является для пользователей нагруженных баз данных, где основной проблемой является блокировка таблиц при одновременной работе многих пользователей.<br />
Система 1С: Предприятие работает с пятью потоками данных для дисковой подсистемы: таблицы базы данных, индексные файлы, лог-файлы SQL, временные файлы tempDB, лог-файл пользовательских приложений 1С.<br />
Основной особенностью данных в системе 1С является объектно-ориентированная структура. В системе представлено множество объектов и связей. Поэтому исключительно важна способность дисковой подсистемы выполнять большое количество операций чтения и записи в единицу времени (IOPS), поскольку даже небольшая база данных объемом 200-300 МБ и 4-5 пользователями может требовать скорости до 400-600 операций чтения-записи в секунду. Потоковая скорость передачи данных, как правило, имеет меньшее значение. Более объемные базы данных могут требовать до 18000 операций чтения и записи в секунду.</p>
<p>Приведем примерные требования производительности в зависимости от нагрузок:</p>
<p style="padding-left: 30px;">База объемом до 300 МБ, 3-5 пользователей – 400-600 IOPS<br />
База объемом до 800 МБ, 10-15 пользователей – 1500-2500 IOPS<br />
База объемом до 4 ГБ, 40-50 пользователей – 5000-7500 IOPS<br />
База объемом до 20 ГБ, до 100 пользователей – до 18000 IOPS.</p>
<p>При выборе конфигурации дисковой подсистемы важно учитывать именно пиковые нагрузки на оборудование, например, в период обмена данными с распределенной подсистемой, автоматическими загрузками или перепроведения некоторого периода.</p>
<p><strong>Приведем основные характеристики современных носителей:</strong></p>
<p>HDD 7200 об/мин, SATA: чтение 100-120 IOPS / запись 80-100 IOPS<br />
HDD 15000 об/мин, SAS: чтение 200-220 IOPS / запись 180-200 IOPS<br />
SSD Intel 320 160GB: чтение 35 000 IOPS / запись 600-8600 IOPS<br />
SSD Intel 710 200GB: чтение 35 000 IOPS / запись 2400-8600 IOPS<br />
SSDIntel 910 400GB: чтение 90 000 IOPS / запись 38 000 IOPS</p>
<p>При анализе данных, приведенных в таблице видно, что запись является узким местом как для жестких дисков, так и для твердотельных накопителей. Твердотельные носители SSD обгоняют традиционные жесткие диски по скорости чтения на несколько порядков. Разница в производительности при выполнении операции записи конечно меньше, однако и здесь твердотельные накопители выигрывают по скорости в несколько десятков раз. Наибольшую производительность в операциях чтения и записи дают твердотельные накопители класса Intel 910 или LSI WarpDrive.</p>
<p>Приведенные характеристики относятся к одиночным дискам, однако в базах данных чаще всего используются RAID-массивы, поэтому для более точного расчета производительности дисковой подсистемы необходимо принять во внимание потери производительности (в IOPS), которые несет группа носителей в составе RAID-массива.</p>
<p><img class="alignnone size-full wp-image-268" src="http://server-kiev.com/wp-content/uploads/2015/03/raid_losses.png" alt="raid_losses" width="570" height="84" /></p>
<p>Из таблицы следует, что при использовании RAID 10 на основе 6 дисков, на каждую запись в 1 IOPS фактически будет потрачено 2 IOPS. Поэтому при расчете возможностей дисковой группы на запись необходимо сложить IOPS всех накопителей, входящих в RAID-массив, а затем разделить их на число из таблицы. Например, при использовании RAID1 на основе двух жестких дисков с интерфейсом SATA и скоростью вращения 7200 об/мин обеспечат на запись (100 IOPS*2)/2=100 IOPS. Другой пример: при объединении в RAID5 четырех жестких дисков SATA 7200 можно ожидать производительности записи (100 IOPS*4)/4=100 IOPS. При объединении этих же накопителей в RAID10 будет достигнута производительность (100 IOPS *4) / 2 = 200 IOPS. Этот пример хорошо доказывает, что для хранения баз данных, для которых как правило отношение операций чтения к операциям записи составляет 68/32, лучше выбирать RAID 10.</p>
<p>Из приведенных выше данных очевидно, что двух жестких дисков SATA 7200, объединенных в RAID1 серверу будет явно недостаточно. В моменты пиковых нагрузок очередь обращений к диску будет слишком велика.<br />
Чтобы увеличить производительность дисковой подсистемы на запись можно увеличить количество дисков в RAID-массиве, выбрать RAID с меньшим штрафом на запись, установить носители с большей производительностью. Увеличить производительность также помогает кэширование RAID-контроллером с активированным режимом отложенной записи Write back. В этом случае данные сначала попадают в кэш контроллера, а затем в упорядоченном виде в пакетном режиме записываются на диски. С помощью такого решения удается поднять производительность записи на 30-100%.<br />
В случае малонагруженных или небольших баз данных можно использовать гибридный RAID-массив из комбинации жестких дисков и твердотельных накопителей. Для малых баз данных (до 20 ГБ) на 3-15 пользователей в распределенной структуре организации (например сеть кафе или СТО) этого вполне достаточно.<br />
Если речь идет об обслуживании крупных баз данных (200 ГБ и более) или нескольких объемных баз данных увеличения скорости дисковых операций можно добиться с помощью технологий LSI CacheCade 2.0 или Adaptec MaxCache 3.0 (SSD-кэширование). С помощью указанных технологий можно добиться увеличения скорости дисковых операций на 20-50% в задачах, решаемых 1С, без существенных изменений в инфраструктуре и относительно недорого.</p>
<p>Самые высокие скорости обеспечивают RAID-массивы на основе серверных SSD (как с использованием SAS RAID-контроллера, так и с использованием PCIe SSD). К сожалению, существенными недостатками такого подхода являются необходимость существенно изменять структуру хранения, а также достаточно высокая цена.<br />
Следует отметить, что индексные файлы базы данных обновляются очень редко, примерно один раз в сутки, однако постоянно читаются. Поэтому такие данные лучше хранить на SSD-носителях, которые отличаются высокой производительностью при выполнении операций чтения. Файлы TempDB используются для хранения временных данных и как правило невелики по объему. Однако они требовательны к скорости записи. В связи с тем, что потеря индексных файлов и файлов TempDB не приведет к потере реальных данных, удобнее всего размещать эти файлы на отдельном SSD-носителе.<br />
Для повышения надежности и быстродействия для хранения TempDB имеет смысл выделить массив RAID1 на основе SSD с обязательным выключением всех кэшей на запись. Для этих целей отлично подходят и накопители типа дисков Intel серии 520. Благодаря выделению этих данных из общей системы хранения на отдельную подсистему с высокими скоростными характеристиками, удается повысить производительность системы в целом, особенно в моменты пиковых нагрузок.</p>
<p>Иногда возникает необходимость вынести временные файлы на RAMDrive. Такое решение имеет смысл, при необходимости решать сложные расчетные задачи, например задачи складской или транспортной логистики, и если есть возможность обеспечить максимально быструю реакцию при сбоях. Такой подход позволяет увеличить общую производительность системы на 4-12%. Однако следует иметь ввиду, что в случае рестарта сервера может потребоваться запуск RAMDrive вручную, если не произойдет автоматического запуска.</p>
<p>Еще одним важным компонентом системы являются лог-файлы. При пиковых нагрузках быстродействие сервера 1С может существенно снизиться из-за постоянного потока мелких обращений на запись со стороны лог-файлов. Поэтому решением этой проблемы может стать перенос лог-файла на отдельный физический носитель, необязательно с высокими показателями IOPS, на который будет вестись почти линейная запись. При необходимости для этих же целей может быть создано зеркало из недорогих дисков SATA/NL SAS или из десктопных SSD (например носители серии Intel 520).</p>
<p>Таким образом, можно сказать, что благодаря применению SSD носителей в серверах появились отличные возможности для увеличения производительности массовых серверов. Это достигается благодаря многоуровневому хранению данных и правильному конфигурированию дискового ввода/вывода.</p>
<h4>В идеале дисковая подсистема сервера 1С может выглядеть следующим образом:</h4>
<ol>
<li>Для хранения таблиц базы данных используются RAID 10 (для баз данных небольшого объема RAID1) на основе надежных серверных SSD-накопителей с обязательным использованием аппаратного RAID-контроллера. В случаю высоких требований к производительности можно использовать вариант PCIe SSD. При наличии объемных баз данных эффективным может оказаться SSD-кэширование массивов HDD. В случае не слишком высоких требований к IOPS и малом количестве пользователей вполне можно обойтись и традиционным массивом из жестких дисков SAS 15K rpm.</li>
<li>Индексные файлы базы данных хранятся на отдельном, быстром и недорогом SSD-носителе, временные файлы – на SSD-носителей, массиве RAID1 на основе SSD носителей или на RAMDrive.</li>
<li>Для хранения лог-файлов SQL и, по возможности, 1С выделяется отдельный том, представленный одиночным диском или RAID1 на основе жестких дисков SATA/NL SAS или дешевых SSD. В качестве альтернативы может использоваться логический диск на RAID-массиве, который используется для размещения операционной системы и пользовательских данных.</li>
<li>Для размещения операционной системы и пользовательских данных используется RAID1 на основе жестких дисков или твердотельных накопителей.</li>
</ol>
<p>В случае использования виртуализированной IT-инфраструктуры желательно устанавливать SQL Server непосредственно на физический сервер, без использования виртуальной машины. Это обеспечит увеличение производительности дисковой подсистемы от 15 до 35% (в зависимости от характеристик оборудования, драйверов, способов подключения и программного обеспечения). В случае использования SQL-сервера в виртуализированной среде, обязательно подключение томов с таблицами базы данных, индексными и временными файлами к виртуальной машине в монопольном режиме с использованием Direct Access.</p>
<p>Но важно понимать, что наибольшую производительность, вне зависимости, используется виртуализация или нет, можно получить все же в случае использования систем хранения данных в качестве дисковой подсистемы, и правило: «чем больше дисков – тем быстрее» не потеряло своей актуальности. Между тем, лишь некоторые серверы, например, DELL PowerEdge R720xd, DELL T620, HP Proliant DL380p позволяют установить сравнительно большое количество дисков в один физический сервер (до 24 HDD SAS 2.5 дюйма), что, конечно, накладывает некоторые ограничения. Кроме того, контроллеры систем хранения данных априори быстрее и надежней (благодаря возможности дублирования) RAID-контроллеров, устанавливаемых в серверах, и имеют большую кеш-память, и, главное, могут использоваться при построении отказоустойчивых кластеров серверов SQL, ORACLE или 1С. Впрочем, об отказоустойчивости еще пойдет речь ниже.</p>
<h3>Сетевые интерфейсы систем 1C:</h3>
<p>Одним из важных аспектов, которые следует учитывать при развертывании систем 1С:Предприятие 8 в малых и средних организациях, являются потери на сетевых операциях через интерфейс Ethernet. Для минимизации таких потерь идеальным решением будет обслуживание SQL Server, 1С:Предприятие и пользовательских сессий 1С с использованием Remote Desktop на одном физическом сервере. Такой вариант позволяет использовать оборудование и программное обеспечение по максимуму, однако является достаточно спорным с точки зрения отказоустойчивости. Проблема безопасности в таком случае может быть частично решена с помощью виртуализации и «повторяемости среды» на другом оборудовании.</p>
<p>Сетевой интерфейс неизбежно будет создавать задержки при передаче данных из-за необходимости упаковки данных в относительно небольшие блоки для передачи. Особенностью платформы 1С:Предприятие является то, что достаточно большие объемы информации передаются для обработки и отображения по всей цепочке SQL-сервер – Сервер приложений 1С:Предприятие 8 – пользовательская сессия 1С:Предприятие8. При непосредственной передаче информации от одного процесса другому через оперативную память одного сервера (в случае использования варианта без виртуализации) или через виртуальный сетевой интерфейс (так же в рамках одного физического сервера), задержки оказываются намного ниже. Современные двухпроцессорные серверные системы с большим объемом оперативной памяти и дисковой подсистемой на основе SSD отлично справляются с обслуживанием базы данных 1С на 100-150 активных пользователей.</p>
<p>К сожалению, в случае баз данных с высокой нагрузкой использование нескольких физических платформ неизбежно, поэтому крайне желательно использовать для соединения всех серверов технологию Ethernet 10 Gb. В случае, если это невозможно, хотя бы два-четыре агрегированных соединения Ethernet1Gb с аппаратным ускорением TCP/IP и поддержкой виртуализации на аппаратном уровне.</p>
<p>Наиболее часто от потерь производительности на портах Ethernet страдают бюджетные решения. Как правило, сетевые адаптеры 1Гб используемые на сетевых материнских платах не предназначены для поддержки интенсивного сетевого трафика. Даже в случае, когда плата укомплектована двумя или тремя портами GbE, они часто реализованы на десктопных чипах. Они, как правило, порождают дополнительные накладные расходы по обслуживанию сетевого обмена, особенно в виртуализированных средах. В таких случаях передача информации через такие чипы приводит к использованию ресурсов процессора, оперативной памяти и внутренних шин. Поэтому ускорения передачи IP-трафике не происходит, каждый передаваемый и принимаемый пакет требует отдельного прерывания. В случае использования виртуализации снижение производительности сетевого интерфейса могут составлять до 30%. К сожалению, очень часто средства мониторинга не отображают перегрузку именно сетевого интерфейса. Основная проблема здесь в том, что центральный процессор загружается решением задачи обслуживания трафика, а если не работает, то простаивает в ожидании ответа от сетевой карты. Поэтому по возможности порты на десктопных чипах необходимо исключить из потока данных в виртуализированных средах. Их отлично можно использовать для решения задачи управления сервером. Для обслуживания интенсивного сетевого трафика имеет смысл добавить дискретную сетевую карту на серверном чипсете.</p>
<p><strong>Отказоустойчивость или допустимое время простоя серверов и СХД для 1С:?</strong><br />
Вопрос производительности сервера всегда сопряжен с обсуждением из надежности. Обеспечение должного уровня отказоустойчивости сопряжено с дополнительными затратами, особенно при обслуживании непрерывных производственных процессов. В случае с 1С вопрос соотношения производительности и надежности решается в разных плоскостях: производительность стараются повысить за счет оптимизации аппаратных решений, а надежность системы – за счет организации процессов и процедур. В случае умеренно критических приложений основное внимание уделяется снижению времени простоя все инфраструктуры, а не средствам индивидуальной защиты серверов.</p>
<p>Для организаций с большим числом одновременно работающих пользователей (от 25 до 150) при размещении всех приложений на одном сервере обязательным является использование источников бесперебойного питания, избыточных блоков питания в самих серверах, элементов с возможностью горячей замены и RAID-массивов с горячим резервированием. Обязательным является также плановое резервирование данных, поскольку при наличии ежедневной резервной копии и оперативного файла с полным логом SQL, база данных 1С может быть восстановлена достаточно быстро.<br />
Для малых и средних предприятий допустимым уровнем аварийности является 1-2 аварийных случая в месяц продолжительностью 1-4 часа. Для быстрого рестарта необходимы образы всех виртуальных и физических серверов в виде виртуальных машина на отдельном томе (используются для восстановления самой инфраструктурной части на резервном сервере). Обязательно должно выполняться ежедневное резервное копирование на отдельное физическое устройство и сохраняться Full SQL log, для тех случаев, когда потеря данных с начала рабочего дня имеет критическое значение и трудновосстановима вручную.<br />
Резервное копирование данных производится как на жесткие диски в серверах или СХД, так и на ленточные носители. Оба подхода имеют свои плюсы и минусы. Резервное копирование на жесткие диски значительно дороже, чем на ленточные носители, но значительно быстрее, с точки зрения ввода данных из бекапа в работу.</p>
<p>Ленточные носители, в свою очередь, дешевле жестких дисков и долговечнее их, а использование автозагрузчиков и ленточных библиотек (HP MSL 2024, IBM TS3100, TS3200, TS3500, Fujitsu ETERNUS LT40 S2 LT60 S2, DELL PowerVault ML6010, PowerVault TL4000) делает резервное копирование на ленту вполне удобным и технологичным.</p>
<p>Отдельно следует упомянуть, что большинство производителей серверного оборудования предлагают так же и специальные устройства для резервного копирования (DELL PowerVault DL4000, Dell DR4100, HP StoreOnce 6500 Backup, HP StoreOnce 4700, HP StoreOnce 2700), имеющие такой важный функционал, как дедупликация данных. Использование таких устройств в конечном итоге вполне оправдывает затраты на их приобретение.<br />
При наличии резервного оборудования и выполнении указанных выше условий, работоспособность системы может быть восстановлена за 1-2 часа. В случаях, когда есть потребность в поддержке непрерывной работы круглые сутки семь дней в неделю, основной задачей будет выбор подходящей архитектуры, оборудования с минимальным числом точек отказа и полноценных технологий кластеризации.<br />
В этом случае интересны решения типа DELL VRTX или Fujitsu PRIMERGY CX400 S2, Fujitsu PRIMERGY CX400 S1, Fujitsu Server PRIMERGY CX420 S1, когда 2 или 4 сервера с общей дисковой подсистемой собраны в рамках одного устройства.</p>
<p>При использовании виртуализации и/или при построении серверных кластеров отказоустойчивых систем 1С обычно используют несколько физических серверов и общую для них систему хранения данных. В системах средней производительности используются достаточно скромные (с точки зрения IOPS и возможностей тиеринга данных) системы хранения данных, например, HP MSA 2040, DELL MD3620, IBM Storwize V3700 и д.р.<br />
Для высокопроизводительных сверхотказоустойчивых и катастрофоустойчивых решений используют СХД большой производительности, имеющих функционал синхронной репликации данных между двумя и более СХД, зачастую расположенных в разных ЦОД (DELL Compellent, HP 3PAR, IBM Storwize V7000, Fujitsu ETERNUS DX100, DX200, DX500 DX600, HITACHI HUS130, HUS150). Так же для таких систем характерно использование либо мощных многопроцессорных серверов (например, DELL R820, IBM x3750 M4, x3850 X5, HP DL560 Gen8, DL980 G7, Fujitsu RX500 S7, RX900 S2 ) либо кластеров на базе блейд-серверов, установленных в блейд-шасси (IBM HS23, HX5, DELL M620, M820, HP BL660c Gen8, Hitachi Compute Blade 2000).</p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2015/03/vybor-servera-dlya-1s/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Лайфхаки и сниппеты для сисадминов</title>
		<link>https://server-kiev.com/2014/01/sysadmin-snippets-unix/</link>
		<comments>https://server-kiev.com/2014/01/sysadmin-snippets-unix/#comments</comments>
		<pubDate>Tue, 21 Jan 2014 18:11:44 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[snippets]]></category>
		<category><![CDATA[sysadmin]]></category>
		<category><![CDATA[полезные мелочи]]></category>
		<category><![CDATA[сисадмин]]></category>
		<category><![CDATA[сниппеты]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=123</guid>
		<description><![CDATA[Я тут подумал, и решил что буду добавлять в этот пост всякие полезные мелочи, которые могут облегчить жизнь системному администратору. Итак, поехали! Если часто жмете что-то gzip&#8217;ом, то он использует только одно ядро процессора, и жмет долго. Чтобы получить максимум производительности от своего сервера при сжатии &#8212; ставьте многопоточный pigz! На FreeBSD pigz ставится так: <a href="https://server-kiev.com/2014/01/sysadmin-snippets-unix/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>Я тут подумал, и решил что буду добавлять в этот пост всякие полезные мелочи, которые могут облегчить жизнь системному администратору.<br />
Итак, поехали!</p>
<p><strong>Если часто жмете что-то gzip&#8217;ом, то он использует только одно ядро процессора, и жмет долго.</strong><br />
Чтобы получить максимум производительности от своего сервера при сжатии &#8212; ставьте многопоточный pigz!</p>
<p style="padding-left: 30px;">На FreeBSD pigz ставится так:<br />
cd /usr/ports/archivers/pigz &amp;&amp; make install clean</p>
<p>он становится в систему, и понимает все ключи gzip&#8217;а.</p>
<p><strong>Как сжать каталог со всем содержимым в .tar.gz при помощи pigz:</strong></p>
<p style="padding-left: 30px;">tar cvf &#8212; katalog | pigz -9 &gt; archive.tar.gz</p>
<p><strong>Как сделать дамп всех баз MySQL на сервере, каждая в отдельный файл? Создаем выполняемый файлец с таким содержимым:</strong></p>
<p style="padding-left: 30px;">for i in `mysql -pmegapass -e&#8217;show databases;&#8217; | grep -v information_schema | grep -v Database`; do mysqldump -pmegapass $i &gt; `date +%Y-%m-%d`-$i; gzip -9 `date +%Y-%m-%d`-$i;done</p>
<p>также это можно жать и вышеупомянутым pigz&#8217;ом:</p>
<p style="padding-left: 30px;">for i in `mysql -pmegapass -e&#8217;show databases;&#8217; | grep -v information_schema | grep -v Database`; do mysqldump -pmegapass $i &gt; `date +%Y-%m-%d`-$i; pigz -9 `date +%Y-%m-%d`-$i;done</p>
<p>&nbsp;</p>
<p><strong>Как потереть файлы безвозвратно (чтобы их нельзя было восстановить) ?</strong></p>
<p>Сначала удаляете файло, а потом создаёте на этом разделе огромный файл с нулями. На размер всего свободного места на диске. Когда файл съест всё свободное место на диске &#8212; можно его удалить.</p>
<p style="padding-left: 30px;">cat /dev/zero &gt; /usr/home/zeros.tmp</p>
<p>&nbsp;</p>
<p><strong>Как найти во вложенных папках файлы, к-рые были созданы/изменены за последние 3 дня ?</strong></p>
<p style="padding-left: 30px;">find /usr/home -type f -mtime -3</p>
<p>&nbsp;</p>
<p><strong>Как примонтировать общую папку Windows во FreeBSD ?</strong></p>
<p style="padding-left: 30px;">mount_smbfs -I &lt;ip_сервера&gt; //&lt;имя_юзера&gt;@&lt;имя сервера&gt;/&lt;общий ресурс&gt; /mnt/&lt;каталог_монтирования&gt;</p>
<p>&nbsp;</p>
<p>&#8230;будет еще&#8230;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2014/01/sysadmin-snippets-unix/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Обновление мира (&#171;world&#187;) FreeBSD</title>
		<link>https://server-kiev.com/2013/08/freebsd-make-world/</link>
		<comments>https://server-kiev.com/2013/08/freebsd-make-world/#comments</comments>
		<pubDate>Mon, 19 Aug 2013 12:30:19 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=68</guid>
		<description><![CDATA[Рассматривается переход с версии 8.2 на 9.0. Во FreeBSD имеется две ветки разработки: FreeBSD-CURRENT и FreeBSD-STABLE. FreeBSD-CURRENT является последними рабочими версиями исходных кодов FreeBSD и предназначена в первую очередь для разработчиков, тестеров и просто интересующихся людей. В отличие от FreeBSD-CURRENT ветка FreeBSD-STABLE является разработкой, из которой делаются основные релизы. Соответственно для использования на ответственных серверах <a href="https://server-kiev.com/2013/08/freebsd-make-world/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<h1 align="center"></h1>
<p>Рассматривается переход с версии 8.2 на 9.0.</p>
<p align="justify">Во FreeBSD имеется две ветки разработки: FreeBSD-CURRENT и FreeBSD-STABLE. FreeBSD-CURRENT является последними рабочими версиями исходных кодов FreeBSD и предназначена в первую очередь для разработчиков, тестеров и просто интересующихся людей. В отличие от FreeBSD-CURRENT ветка FreeBSD-STABLE является разработкой, из которой делаются основные релизы. Соответственно для использования на ответственных серверах рекомендуется FreeBSD-STABLE.<span id="more-68"></span>Для того чтобы иметь самые последние версии исходных текстов системы необходимо провести синхронизацию с любым из серверов проекта FreeBSD. Для этих целей воспользуемся утилитой cvsup с sup-файлом stable-supfile из каталога /usr/share/examples/cvsup. Это наиболее рекомендуемый метод, так как он позволяет вам загрузить набор исходных текстов один раз полностью, а затем загружать только произошедшие изменения. Если интернет трафик ограничен, то имеет смысл перенести исходные тексты с установочного диска и затем провести синхронизацию.</p>
<p>Копируем stable-supfile и приводим его содержание к следующему виду:</p>
<pre># cp /usr/share/examples/cvsup/stable-supfile /etc/
# vi /etc/stable-supfile</pre>
<p>Выбираем cvsup сервер. Кому какой ближе. Для российских пользователей: cvsup2.ru.FreeBSD.org или cvsup3.ru.FreeBSD.org</p>
<pre>*default host=cvsup2.ru.FreeBSD.org
*default base=/var/db
*default prefix=/usr</pre>
<p>&nbsp;</p>
<p align="justify">Загружаем исходные тексты 9.0 ветки. Если необходимо 5, 4, 3 или 2.2, то меняем на &#171;RELENG_5&#8243;, &#171;RELENG_4&#8243;, &#171;RELENG_3&#8243;, &#171;RELENG_2_2&#8243; соответственно.<br />
Если не указывать версию в ветке (RELENG_9_0), то будут скачиваться исходники последней доступной версии, которая не обязательно может быть STABLE. На момент правки статьи это 9.0).</p>
<pre>*default release=cvs tag=RELENG_9_0
*default delete use-rel-suffix
# Включаем сжатие трафика
*default compress
# Качаем полное дерево исходников
src-all</pre>
<p>Запускаем cvsup и ждем пока закончится обновление.</p>
<pre>server# cvsup -g -L2 /etc/stable-supfile</pre>
<p align="justify">Переходим в /usr/scr и начинаем процесс обновления. Запаситесь терпением, так как это занимает 1-2 часа на Core2Duo.</p>
<pre># cd /usr/src/
# rm -rf /usr/obj
# make -j4 buildworld</pre>
<p>&nbsp;</p>
<p align="justify">Где j4 &#8212; компилировать в 4 потока. Рекомендуется для однопроцессорных машин, т.к. компиляция в большей степени требовательная к системе ввода-вывода, а не процессору. Для многопроцессорных это значение можно увеличить.</p>
<p><b>!!!ВАЖНО!!! Не используйте опцию -j для слабых машин (менее 300МГц). Это может привести к ошибкам при компиляции.</b></p>
<p>Для настройки системы можно использовать make.conf. Пример смотрите здесь /usr/share/examples/etc/make.conf</p>
<pre># make -j4 buildkernel KERNCONF=MYKERNEL</pre>
<p align="justify">Где MYKERNEL &#8212; ваше ядро. Без KERNCONF=MYKERNEL собирается с ядром GENERIC. В следующей строке поступаем соответственно.</p>
<pre># make installkernel KERNCONF=MYKERNEL</pre>
<p>Перезагрузимся</p>
<pre># reboot</pre>
<p>&nbsp;</p>
<p align="justify">Перейдем в однопользовательский режим. При загрузке жмем 4, либо из основного режима следующей командой:</p>
<pre># shutdown now</pre>
<p>Монтируем разделы файловой системы.</p>
<pre># mount -u /
# mount -a
# mergemaster -p</pre>
<p align="justify">Устанавливаем мир</p>
<pre># cd /usr/src
# make installworld</pre>
<p>&nbsp;</p>
<p align="justify">Удаляем временные файлы</p>
<pre># make delete-old</pre>
<p>&nbsp;</p>
<pre># mergemaster</pre>
<p>&nbsp;</p>
<p align="justify">Несколько слов о работе этой утилиты. Она сравнивает уже установленные файлы конфигурации с теми которые предлагаются новой версией FreeBSD. Если есть отличия, то на экране появляется сообщение об этом. Первой строкой в нем идет имя файла, который не соответствует новым требованиям, а ниже сами отличия. Знаком &#171;-&#187; помечаются строки, которые утилита собирается удалить, а &#171;+&#187; &#8212; которые будут добавлены.</p>
<p>В конце предлагаются следующие варианты:<br />
d &#8212; удалить предлагаемый вариант и оставить старый;<br />
i &#8212; установить предлагаемый вариант, удалив старый;<br />
m &#8212; сравнить построчно старый и предлагаемый вариант;<br />
v &#8212; посмотреть отличия в файлах снова.</p>
<p>Чаще всего можно жать i, но иногда это может привести к замене ваших настроек на дефолтные. Так что будте внимательны. Например, у меня установлен exim, а mergemaster предложил вернуть файл /etc/mail/mailer.conf в первоначальное состояние. Это мне не нужно, поэтому выбираю m.<br />
Начинается построчное сравнение файлов. Экран делится на две части, слева строки из старого файла, а справа из предлагаемого. При нажатии на &#171;Enter&#187; выводятся возможные варианты последующих действий:<br />
l &#8212; использовать вариант слевой стороны;<br />
r &#8212; использовать вариант справой стороны;</p>
<p>и т.д.</p>
<p>В моем случае, чтобы оставить старые настройки жмем &#171;l&#187;. После того как сравнение кончилось, предлагаются следующие варианты:<br />
i &#8212; установить получившийся файл;<br />
r &#8212; повторить сравнение снова;<br />
v &#8212; просмотреть получивщийся файл.</p>
<p>Возможен так же вариант, когда с новой версией системы появляются новые файлы, которых до этого не было. В таком случае предлагается только 2 варианта:<br />
d &#8212; удалить предлагаемый вариант и оставить старый;<br />
i &#8212; установить предлагаемый вариант, удалив старый.<br />
И в таком же духе сравниваются все файлы.</p>
<p>Перезагрузимся</p>
<pre># reboot
# cd /usr/src/
# make delete-old-libs</pre>
<p>&nbsp;</p>
<p align="justify">Все. Проверяем.</p>
<p>&nbsp;</p>
<pre># uname -a
...9.0-RELEASE FreeBSD 9.0-RELEASE #0...</pre>
<p>&nbsp;</p>
<p align="justify">До обновления было FreeBSD 8.2-RELEASE</p>
<p>Для создания материала использована страница: <a href="http://www.lissyara.su/articles/freebsd/tuning/make_buildworld/" rel="nofollow">http://www.lissyara.su/articles/freebsd/tuning/make_buildworld/</a></p>
<hr />
<h1 align="center">Локальное и удаленное обновление FreeBSD</h1>
<p align="justify">Написал краткую справку об обновлении локальных и удаленных серверов в пределах одной ветки.</p>
<h2 align="center">Обновление csup</h2>
<p align="justify">Сначала вам нужно обновить исходные коды системы, и мы будем использовать штатные средства операционной системы <b>csup</b>. Конфигурационный файл готов, его необходимо скопировать и изменить, он находится в директории:</p>
<pre># cd /usr/share/examples/cvsup/
# ls
README           gnats-supfile    refuse.README    www-supfile
cvs-supfile      ports-supfile    stable-supfile
doc-supfile      refuse           standard-supfile</pre>
<p>&nbsp;</p>
<p>Укажем нужную версию операционной системы.<br />
В существующем конфигурационном файле стоит текущая версия.</p>
<pre># cat standard-supfile | grep default
*default host=CHANGE_THIS.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_7_1
*default delete use-rel-suffix
*default compress
src-all</pre>
<p>&nbsp;</p>
<p>Скопируем файл и немного изменим:</p>
<pre># cp standard-supfile standard-supfile-RELENG_8_2
# cat standard-supfile-RELENG_8_2 | grep default
*default host=CHANGE_THIS.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_8_2
*default delete use-rel-suffix
*default compress
src-all</pre>
<p>&nbsp;</p>
<p>Теперь нам необходимо синхронизировать <b>src</b> делается просто:</p>
<pre># /usr/bin/csup -h cvsup4.ru.freebsd.org -g -L 2 \
/usr/share/examples/cvsup/standard-supfile-RELENG_8_2</pre>
<p>&nbsp;</p>
<p align="justify">Когда синхронизация завершилась, приступим к обновлению системы (не забываем прочитать файл <b>UPDATING</b> чтобы все прошло гладко). Предупреждаю, что сначала мы будем устанавливать, ядро <b>GENERIC</b> и если все пройдет гладко и вы протестируете хотя бы один день сервер то можете, скомпилируйте свое ядро.<br />
Очистим директории, от предыдущего мусора соберем мир и ядро и установим ядро:</p>
<pre># cd /usr/obj  ;chflags -R noschg * ;rm -rf *
# cd /usr/src
# make -j4 buildworld
# make -j4 buildkernel KERNCONF=GENERIC
# make installkernel KERNCONF=GENERIC</pre>
<p>&nbsp;</p>
<p>Теперь начинаются различия обновления локального и удаленного серверов. Рассмотрим два этих варианта:</p>
<h3 align="center">Локальный сервер</h3>
<p>Для безопасного и корректного обновления необходимо ввести машину в <b>single mode</b> можно сделать двумя способами:</p>
<ul>
<li>Перезагрузкой и выбором в стартовом меню загрузку в <b>single mode</b> (номер 4).
<pre># shutdown -r now</pre>
</li>
<li>Или напрямую активировать данный режим:
<pre># shutdown now</pre>
</li>
</ul>
<p>&nbsp;</p>
<h3 align="center">Удаленный сервер</h3>
<p align="justify">При удаленном обновлении вы <strong>не должны</strong> вводить машину в <b>single mode</b>, если вы случайно это сделаете, то потеряете связь с машиной.<br />
В виду вышесказанного необходимо действовать так:</p>
<ul>
<li>Отключить в <b>/etc/rc.conf</b> все службы, в которых нет необходимости для запуска системы это СУБД, FTP, Apache и т.д. (<strong>sshd не выключать!</strong>)</li>
<li>Перезагрузить сервер</li>
</ul>
<p>Можно и самим остановить эти службы без перезагрузки системы.</p>
<h3 align="center">Продолжаем обновление</h3>
<p>При запуске системы в нашем случае это <strong>локальный сервер</strong> необходимо смонтировать корневой каталог и остальные разделы, а при <strong>удаленном сервере</strong> нет необходимости в монтировании каталогов. А так же запустим <b>mergemaster</b> для создания начальной точки работы:</p>
<pre># /sbin/mount -u /
# /sbin/mount -a
# csh
# su
# mergemaster -p</pre>
<p>&nbsp;</p>
<p>Установим мир и удалим старые файлы.</p>
<pre># cd /usr/src
# make installworld
# make delete-old</pre>
<p>Для автоматизации удаления старых версий выполните:</p>
<pre># yes | make delete-old</pre>
<p>&nbsp;</p>
<h3 align="center">mergemaster</h3>
<p>Запустим <b>mergemaster</b> для синхронизации файлов, библиотек, конфигурационных файлов с новыми версиями.</p>
<pre># mergemaster -cv (c-контекстный diffs вместо унифицированного)</pre>
<p><b>mergemaster</b> сравнивает существующие конфигурационные файлы с теми, которые предлагаются новой версией <abbr title="Свободная UNIX clone операционная система, потомок AT&amp;T Unix по линии BSD, созданной в университете Беркли. FreeBSD работает на PC-совместимых системах семейства x86, включая Microsoft Xbox, а также на DEC Alpha, Sun UltraSPARC, IA-64, AMD64, PowerPC, NEC PC-98, ARM. FreeBSD хорошо зарекомендовала себя как система для построения интранет- и интернет-серверов.">FreeBSD</abbr>. И если существуют отличия, то появляется сообщение об этом. Первой строкой в нем идет имя файла, который не соответствует новым требованиям, а ниже сами отличия.<br />
Знаки:</p>
<p>&nbsp;</p>
<ul>
<li><b>-</b> &#8212; этим знаком помечаются строки, которые <b>mergemaster</b> собирается удалить.</li>
<li><b>+</b> &#8212; этим знаком помечаются строки, которые будут добавлены.</li>
</ul>
<p>Есть несколько вариантов управления и в низу <b>mergemaster</b> предлагают следующие варианты работы с текущим файлом:</p>
<ul>
<li><b>d</b> &#8212; удалить предлагаемый вариант оставить старый.</li>
<li><b>i</b> &#8212; установить предлагаемый вариант, удалив старый.</li>
<li><b>m</b> &#8212; сравнить и объединить при необходимости построчно старый и новый вариант.</li>
<li><b>v</b> &#8212; посмотреть отличия в файлах снова.</li>
</ul>
<p>При построчном сравнивании экран делится на две части, слева строки из старого файла, а справа из предлагаемого. При нажатии на <b>&#171;Enter&#187;</b> выводятся возможные варианты последующих действий:</p>
<ul>
<li><b>l</b> &#8212; использовать вариант с левой стороны.</li>
<li><b>r</b> &#8212; использовать вариант с правой стороны.</li>
</ul>
<p>и т.д.</p>
<p>После того как сравнение файла закончилось, предлагаются следующие варианты:</p>
<ul>
<li><b>i</b> &#8212; установить получившийся файл.</li>
<li><b>r</b> &#8212; повторить сравнение снова.</li>
<li><b>v</b> &#8212; просмотреть получившийся файл.</li>
</ul>
<p>Бывает, что с новой версией системы появляются новые файлы, которых до этого не было. В таком случае предлагается 2 варианта:</p>
<ul>
<li><b>d</b> &#8212; удалить предлагаемый вариант и оставить старый.</li>
<li><b>i</b> &#8212; установить предлагаемый вариант, удалив старый.</li>
</ul>
<p>И так сравниваются все файлы.</p>
<h3 align="center">Завершение</h3>
<p>Когда закончите, объединять файлы перезапустите систему и удалите старые библиотеки, а так же проверьте версию системы:</p>
<pre># shutdown -r now
# cd /usr/src/
# make delete-old-libs
# uname -a
FreeBSD bsd.ampul.local 8.2-RELEASE FreeBSD 8.2-RELEASE #1: Tue May 19 09:55:51 MSD 2009
Raven2000@bsd.ampul.local:/usr/obj/usr/src/sys/MYKERNEL i386</pre>
<p>&nbsp;</p>
<h3 align="center">Обновление портов FreeBSD</h3>
<p>&nbsp;</p>
<pre># 
/usr/bin/csup -h cvsup4.ru.freebsd.org -g -L 2 /usr/share/examples/cvsup/ports-supfile \
&amp;&amp;  cd /usr/ports/ &amp;&amp; make fetchindex</pre>
<p>&nbsp;</p>
<p>Обновление по крону</p>
<pre># crontab -l | grep csup
1  8  *  *  *  (/usr/bin/csup -h cvsup4.ru.freebsd.org -g -L 2 \
/usr/share/examples/cvsup/ports-supfile \
&amp;&amp;  cd /usr/ports/ &amp;&amp; make fetchindex) &gt;/dev/null 2&gt;&amp;1</pre>
<p>&nbsp;</p>
<h3 align="center">Проблемы</h3>
<p>В. Не запускаются программы требуют старые библиотеки<br />
О. Есть два варианта. Пересобрать ПО или установить библиотеки нужной версии ОС:</p>
<pre># /usr/ports/misc/compat
compat3x/ compat4x/ compat5x/ compat6x/ compat7x/</pre>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/freebsd-make-world/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как пропатчить KDE под FreeBSD?</title>
		<link>https://server-kiev.com/2013/08/kak-propatchit-kde-pod-freebsd/</link>
		<comments>https://server-kiev.com/2013/08/kak-propatchit-kde-pod-freebsd/#comments</comments>
		<pubDate>Mon, 19 Aug 2013 12:24:38 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=67</guid>
		<description><![CDATA[«Как пропатчить KDE2 под FreeBSD?» Бывалые пользователи фыркнут – боян! Но до сих пор на форумах и в сообществах юзеры терзаются этим вопросом. Многие на полном серьёзе интересуются: а действительно, как? Мем о KDE2 появился давно и сразу стал популярным. Интернетчики додумались спрашивать не только сисадминов, но и президентов. «Пострадали» Ющенко, Назарбаев и даже Путин! <a href="https://server-kiev.com/2013/08/kak-propatchit-kde-pod-freebsd/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>«Как пропатчить KDE2 под FreeBSD?» Бывалые пользователи фыркнут – боян! Но до сих пор на форумах и в сообществах юзеры терзаются этим вопросом. Многие на полном серьёзе интересуются: а действительно, как?</p>
<p>Мем о KDE2 появился давно и сразу стал популярным. Интернетчики додумались спрашивать не только сисадминов, но и президентов. «Пострадали» Ющенко, Назарбаев и даже Путин! Последний, правда, отвечать не стал. Чтобы понять, о чем речь, нужно знать, что FreeBSD – это свободная юниксоподобная операционная система. А KDE (не важно, о какой версии речь) – оконный менеджер, который запускается поверх графической оболочки.</p>
<p>Но даже обладая специальными знаниями, пропатчить KDE2 под FreeBSD вы всё равно не сможете. Почему? Об этом <a href="http://sltv.ru/comments/clip-1850/">телеканалу SLTV</a> рассказал эксперт, который почти в прямом эфире «поднял» непростую операционную систему и показал, «как это работает». Подробности смотрите в <a href="http://sltv.ru/comments/clip-1850/">видеосюжете</a>.</p>
<p><iframe src="//www.youtube.com/embed/8dmlK2yoLuk" height="315" width="560" allowfullscreen="1" frameborder="0"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/kak-propatchit-kde-pod-freebsd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Установка FreeBSD 9.0 на сервер Hetzner. Пошаговая.</title>
		<link>https://server-kiev.com/2013/08/freebsd-9-hetzner-install/</link>
		<comments>https://server-kiev.com/2013/08/freebsd-9-hetzner-install/#comments</comments>
		<pubDate>Mon, 19 Aug 2013 12:07:20 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=64</guid>
		<description><![CDATA[Когда вышла FreeBSD 9.0, я задался целью установить данную систему на только что оформленный у «Hetzner» сервер. И хотя в открытую они не предлагают и не дают установить FreeBSD, однако, это вполне возможно сделать через Rescue System. Но, как выяснилось, так можно установить только FreeBSD 7.4 и FreeBSD 8.2. После связи с службой поддержки «Hetzner» <a href="https://server-kiev.com/2013/08/freebsd-9-hetzner-install/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<figure id="attachment_65" style="width: 300px;" class="wp-caption alignleft"><a href="http://server-kiev.com/wp-content/uploads/2013/08/freebsd_hetzner_install.gif"><img class="size-full wp-image-65" alt="Установка FreeBSD на сервер Hetzner" src="http://server-kiev.com/wp-content/uploads/2013/08/freebsd_hetzner_install.gif" width="300" height="184" /></a><figcaption class="wp-caption-text">Установка FreeBSD на сервер Hetzner</figcaption></figure>
<p>Когда вышла FreeBSD 9.0, я задался целью установить данную систему на только что оформленный у «Hetzner» сервер. И хотя в открытую они не предлагают и не дают установить FreeBSD, однако, это вполне возможно сделать через Rescue System. Но, как выяснилось, так можно установить только FreeBSD 7.4 и FreeBSD 8.2.</p>
<p>После связи с службой поддержки «Hetzner» они ответили, что за дополнительную плату готовы вставить диск с данным программным обеспечением. Конечно это ни в бюджет ни в планы не входило.</p>
<p>В сети Интернет много советов по обновлению FreeBSD с версии 8 до версии 9, но они либо не полностью отражают суть проблемы, либо вообще ничего не позволяют обновить так как это нужно. Я потратил много времени, прежде чем мне удалось это сделать, поэтому я и решил написать данную статью, которая поможет сэкономить время.<span id="more-64"></span></p>
<p>Итак, приступим.</p>
<p>1. Установка версии FreeBSD от «Henzner»<br />
Старт Rescue системы</p>
<p>Для начала нужно активировать Rescue System и зайти по ssh на сервер, как написано в инструкции у «Hetzner».</p>
<p>Для начала установки выполним следующую команду</p>
<p># installimage</p>
<p>&nbsp;</p>
<p>Затем укажем параметры и запустим установку. Вся установка занимает всего несколько минут в результате чего мы получаем следующее<br />
Hetzner Online AG &#8212; installimage</p>
<p>Your server will be installed now, this will take some time</p>
<p>You can abort at any time with CTRL+C …</p>
<p>Deleting selected harddrive(s)… DONE</p>
<p>Creating a file system and extracting the image… DONE</p>
<p>Copying kernel… DONE</p>
<p>Configuring rc.conf… DONE</p>
<p>Configuring loader.conf… DONE</p>
<p>Enabling SSH login for root… DONE</p>
<p>Configuring resolv.conf… DONE</p>
<p>Congratulations! The configuration has been completed successfully.</p>
<p>You can now use &#8216;reboot&#8217; to boot your newly installed FreeBSD system.</p>
<p>&nbsp;</p>
<p>После установки перезагружаемся<br />
# reboot</p>
<p>&nbsp;</p>
<p>2 Настройка данных для обновления</p>
<p>Обновлять систему будем через sup. На мой взгляд, самый простой и правильный способ обновления системы.<br />
sup входит в штатные средства операционной системы FreeBSD.</p>
<p>Переходим в каталог<br />
# cd /usr/share/examples/cvsup/</p>
<p>&nbsp;</p>
<p>Проверяем<br />
# ls<br />
README gnats-supfile refuse.README www-supfile<br />
cvs-supfile ports-supfile stable-supfile<br />
doc-supfile refuse standard-supfile</p>
<p>&nbsp;</p>
<p>Теперь нужно указать новую версию операционной системы.<br />
По умолчанию стоит текущая версия.</p>
<p>Выполняем копирование файла конфигурации<br />
# cp standard-supfile standard-supfile-UPDATE_9</p>
<p>&nbsp;</p>
<p>Отредактируем его<br />
# ee standard-supfile-UPDATE_9</p>
<p>*default host=CHANGE_THIS.FreeBSD.org<br />
*default base=/var/db<br />
*default prefix=/usr<br />
*default release=cvs tag=RELENG_9_0<br />
*default delete use-rel-suffix<br />
*default compress</p>
<p>src-all</p>
<p>&nbsp;</p>
<p>Выполняем синхронизацию исходных кодов src, новой операционной системы<br />
# /usr/bin/csup -h cvsup4.ru.freebsd.org -g -L 2 \</p>
<p>&nbsp;</p>
<p>#? /usr/share/examples/cvsup/standard-supfile-UPDATE_9</p>
<p>&nbsp;</p>
<p>После того как все файлы скопированы, нужно прочитать файл /usr/src/UPDATING (Чтобы небыло проблем)</p>
<p>Теперь нужно включить генерацию профилирующего кода (прописать NO_PROFILE=true в файле /etc/make.conf).</p>
<p>И там же нужно установить значение CFLAGS во -O2 -pipe.</p>
<p>-pipe позволяет компилятору использовать для связи вместо временных файлов программные каналы,<br />
что уменьшает обращение к диску (за счет оперативной памяти).<br />
# ee /etc/make.conf<br />
NO_PROFILE=true<br />
CFLAGS= -O2 -pipe</p>
<p>&nbsp;</p>
<p>Также нужно добавить в make.conf строчку: KERNCONF=MYKERNEL, чтобы не писать при сборке и установке ядра<br />
# make build kernel KERNCONF=MYKERNEL</p>
<p>&nbsp;</p>
<p>а просто<br />
# make build kernel</p>
<p>&nbsp;</p>
<p>Отредактируем файл /etc/src.conf<br />
# ee /etc/src.conf<br />
WITHOUT_BLUETOOTH=TRUE<br />
WITHOUT_GAMES=TRUE</p>
<p>&nbsp;</p>
<p>Вообще конфиг make.conf можно дополнить многими параметрами, это зависит от того какие параметры компиляции Вам нужны.</p>
<p>Мой конфиг make.conf</p>
<p>&nbsp;</p>
<p>CPUTYPE?=nocona<br />
CFLAGS= -O2 -fno-strict-aliasing -pipe<br />
# CXXFLAGS= -O2 -pipe # Осторожнее многие приложения могут не компилироваться если это прописать.<br />
COPTFLAGS= -O2 -pipe -funroll-loops -ffast-math -fno-strict-aliasing<br />
OPTIMIZED_CFLAGS=YES<br />
KERNCONF=GARPIX<br />
BUILD_OPTIMIZED=YES<br />
WITH_CPUFLAGS=YES<br />
WITHOUT_DEBUG=YES<br />
WITH_OPTIMIZED_CFLAGS=YES<br />
NO_PROFILE=YES<br />
BUILD_STATIC=YES<br />
WITHOUT_X11=YES<br />
DWITH_SLANG=YES<br />
DLLVM_HOSTTRIPLE=&#187;x86_64-garpix-freebsd9.0&#8243;<br />
STRIP=<br />
CFLAGS+=-fno-omit-frame-pointer<br />
WITH_CTF=1<br />
# added by use.perl 2012-02-07 19:02:35<br />
PERL_VERSION=5.12.4<br />
Получаем исходники ядра<br />
# svn checkout svn://svn.freebsd.org/base/releng/9.0 /usr/src</p>
<p>&nbsp;</p>
<p>Переходим в каталог с ядром<br />
# cd /usr/src/sys/amd64/conf</p>
<p>&nbsp;</p>
<p>Копируем конфиг с ядром в созданный за ранее каталог<br />
# mkdir /root/kernels<br />
# cp GENERIC /root/kernels/MYKERNEL<br />
# ln -s /root/kernels/MYKERNEL</p>
<p>&nbsp;</p>
<p>Теперь нужно провести конфигурацию ядра под Ваш компьютер<br />
Подробнее об этом можно почитать на официальном сайте FreeBSD</p>
<p>Мой конфиг ядра</p>
<p>&nbsp;</p>
<p>cpu HAMMER<br />
ident MYKERNEL</p>
<p>makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols<br />
makeoptions WITH_CTF=1<br />
makeoptions MODULES_OVERRIDE=&#187;zfs opensolaris dtrace cyclic nfsclient krpc nfs_common nfslock&#187;</p>
<p>options SCHED_ULE # ULE scheduler<br />
options PREEMPTION # Enable kernel thread preemption<br />
options INET # InterNETworking<br />
options INET6 # IPv6 communications protocols<br />
options IPFIREWALL # Firewall IPFw<br />
#options IPFIREWALL_DEFAULT_TO_ACCEPT # Accept to Firewall<br />
options IPFIREWALL_VERBOSE # Enable Logs from Firewall<br />
#options IPFIREWALL_VERBOSE_LIMIT=10 # Limit logs from Firewall<br />
options DUMMYNET # Speed Traffic to Firewall<br />
options SCTP # Stream Control Transmission Protocol<br />
options FFS # Berkeley Fast Filesystem<br />
options SOFTUPDATES # Enable FFS soft updates support<br />
options UFS_ACL # Support for access control lists<br />
options UFS_DIRHASH # Improve performance on big directories<br />
options UFS_GJOURNAL # Enable gjournal-based UFS journaling<br />
options MD_ROOT # MD is a potential root device<br />
options NFSCL # New Network Filesystem Client<br />
options NFSD # New Network Filesystem Server<br />
options NFSLOCKD # Network Lock Manager<br />
options NFS_ROOT # NFS usable as /, requires NFSCL<br />
options CD9660 # ISO 9660 Filesystem<br />
options PROCFS # Process filesystem (requires PSEUDOFS)<br />
options PSEUDOFS # Pseudo-filesystem framework<br />
options GEOM_PART_GPT # GUID Partition Tables.<br />
options GEOM_LABEL # Provides labelization<br />
options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI<br />
options KTRACE # ktrace(1) support<br />
options STACK # stack(9) support<br />
options SYSVSHM # SYSV-style shared memory<br />
options SYSVMSG # SYSV-style message queues<br />
options SYSVSEM # SYSV-style semaphores<br />
options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions<br />
options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed.<br />
options KBD_INSTALL_CDEV # install a CDEV entry in /dev<br />
options HWPMC_HOOKS # Necessary kernel hooks for hwpmc<br />
options AUDIT # Security event auditing<br />
options MAC # TrustedBSD MAC Framework<br />
options KDTRACE_FRAME # Ensure frames are compiled in<br />
options KDTRACE_HOOKS # Kernel DTrace hooks<br />
options DDB_CTF # all architectures &#8212; kernel ELF linker loads CTF data<br />
options INCLUDE_CONFIG_FILE # Include this file in kernel<br />
options KDB # Kernel debugger related code<br />
options KDB_TRACE # Print a stack trace for a panic<br />
options COMPAT_FREEBSD8 # Compatible with FreeBSD8<br />
options P1003_1B_SEMAPHORES # POSIX-style semaphores<br />
options DEVICE_POLLING # Polling Network Enabled</p>
<p># Settings for max connections = 256options SEMMNI=512<br />
options SEMMNS=1024<br />
options SEMUME=64<br />
options SEMMNU=512</p>
<p># Make an SMP-capable kernel by default<br />
options SMP # Symmetric MultiProcessor Kernel</p>
<p># CPU frequency control<br />
device cpufreq</p>
<p># Bus support.device acpi<br />
device pci</p>
<p># ATA controllers<br />
device ahci # AHCI-compatible SATA controllers<br />
device ata # Legacy ATA/SATA controllers<br />
options ATA_CAM # Handle legacy controllers with CAM<br />
options ATA_STATIC_ID # Static device numbering<br />
device mvs # Marvell 88SX50XX/88SX60XX/88SX70XX/SoC SATA<br />
device siis # SiliconImage SiI3124/SiI3132/SiI3531 SATA</p>
<p># ATA/SCSI peripherals<br />
device scbus # SCSI bus (required for ATA/SCSI)<br />
device ch # SCSI media changers<br />
device da # Direct Access (disks)<br />
device sa # Sequential Access (tape etc)<br />
device cd # CD<br />
device pass # Passthrough device (direct ATA/SCSI access)<br />
device ses # SCSI Environmental Services (and SAF-TE)</p>
<p># RAID controllers interfaced to the SCSI subsystem<br />
device hptrr # Highpoint RocketRAID 17xx, 22xx, 23xx, 25xx</p>
<p># atkbdc0 controls both the keyboard and the PS/2 mouse<br />
device atkbdc # AT keyboard controller<br />
device atkbd # AT keyboard<br />
device psm # PS/2 mouse</p>
<p>device via # VGA video card driver</p>
<p># sys cons is the default console driver, resembling an SCO console<br />
device sc<br />
options SC_PIXEL_MODE # add support for the raster text mode</p>
<p># Serial (COM) ports<br />
device uart # Generic UART driver</p>
<p>device put # Multi I/O cards and multi-channel UARTs</p>
<p># PCI Ethernet NICs.<br />
device bxe # Broadcom BCM57710/BCM57711/BCM57711E 10Gb Ethernet&gt;<br />
device de # DEC/Intel DC21x4x (&#171;Tulip)&gt;<br />
device em # Intel PRO/1000 Gigabit Ethernet Family&gt;<br />
device igb # Intel PRO/1000 PCIE Server Gigabit Family&gt;<br />
device ixgbe # Intel PRO/10GbE PCIE Ethernet Family&gt;<br />
device le # AMD Am7900 LANCE and Am79C9xx PCnet&gt;<br />
device ti # Alteon Networks Tigon I/II gigabit Ethernet&gt;<br />
device txp # 3Com 3cR990 (&#171;Typhoon)&gt;<br />
device vx # 3Com 3c590, 3c595 (&#171;Vortex)&gt;</p>
<p># PCI Ethernet NICs that use the common MII bus controller code.&gt;<br />
# NOTE: Be sure to keep the &#8216;device minibus&#8217; line in order to use these NICs!&gt;<br />
device minibus # MII bus support&gt;<br />
device ae # Attansic/Atheros L2 FastEthernet&gt;<br />
device age # Attansic/Atheros L1 Gigabit Ethernet&gt;<br />
device alc # Atheros AR8131/AR8132 Ethernet&gt;<br />
device ale # Atheros AR8121/AR8113/AR8114 Ethernet&gt;<br />
device bce # Broadcom BCM5706/BCM5708 Gigabit Ethernet&gt;<br />
device bfe # Broadcom BCM440x 10/100 Ethernet&gt;<br />
device bge # Broadcom BCM570xx Gigabit Ethernet&gt;<br />
device dc # DEC/Intel 21143 and various workalikes&gt;<br />
device et # Agere ET1310 10/100/Gigabit Ethernet&gt;<br />
device fxp # Intel EtherExpress PRO/100B (82557, 82558)&gt;<br />
device jme # JMicron JMC250 Gigabit/JMC260 Fast Ethernet&gt;<br />
device leg # Level 1 LXT1001 gigabit Ethernet&gt;<br />
device msk # Marvell/SysKonnect Yukon II Gigabit Ethernet&gt;<br />
device nfe # nVidia nForce MCP on-board Ethernet&gt;<br />
device nge # NatSemi DP83820 gigabit Ethernet&gt;<br />
device pcn # AMD Am79C97x PCI 10/100 (precedence over &#8216;le&#8217;)&gt;<br />
device re # RealTek 8139C+/8169/8169S/8110S&gt;<br />
device rl # RealTek 8129/8139&gt;<br />
device sf # Adaptec AIC-6915 (&#171;Starfire)&gt;<br />
device sge # Silicon Integrated Systems SiS190/191&gt;<br />
device sis # Silicon Integrated Systems SiS 900/SiS 7016&gt;<br />
device sk # SysKonnect SK-984x &amp; SK-982x gigabit Ethernet&gt;<br />
device ste # Sundance ST201 (D-Link DFE-550TX)&gt;<br />
device stge # Sundance/Tamarack TC9021 gigabit Ethernet&gt;<br />
device tl # Texas Instruments ThunderLAN&gt;<br />
device tx # SMC EtherPower II (83c170 &#171;EPIC)&gt;<br />
device vge # VIA VT612x gigabit Ethernet&gt;<br />
device vr # VIA Rhine, Rhine II&gt;<br />
device wb # Winbond W89C840F&gt;<br />
device xl # 3Com 3c90x (&#171;Boomerang, &#171;Cyclone)&gt;</p>
<p># Pseudo devices.<br />
device loop # Network loopback<br />
device random # Entropy device<br />
device ether # Ethernet support<br />
device vlan # 802.1Q VLAN support<br />
device tun # Packet tunnel.<br />
device pty # BSD-style compatibility pseudo ttys<br />
device md # Memory &#171;disks&#187;<br />
device gif # IPv6 and IPv4 tunneling<br />
device faith # IPv6-to-IPv4 relaying (translation)<br />
device firmware # firmware assist module</p>
<p># The `bpf&#8217; device enables the Berkeley Packet Filter.<br />
# Be aware of the administrative consequences of enabling this!<br />
# Note that &#8216;bpf&#8217; is required for DHCP.<br />
device bpf # Berkeley packet filter</p>
<p># USB support<br />
options USB_DEBUG # enable debug msgs<br />
device uhci # UHCI PCI-&gt;USB interface<br />
device ohci # OHCI PCI-&gt;USB interface<br />
device ehci # EHCI PCI-&gt;USB interface (USB 2.0)<br />
device xhci # XHCI PCI-&gt;USB interface (USB 3.0)<br />
device usb # USB Bus (required)<br />
device uhid # &#171;Human Interface Devices&#187;<br />
device ukbd # Keyboard<br />
device ulpt # Printer<br />
device umass # Disks/Mass storage &#8212; Requires scbus and da<br />
device ums # Mouse<br />
После того как ядро сконфигурировано, переходим в каталог с исходниками /usr/src<br />
# cd /usr/src</p>
<p>&nbsp;</p>
<p>Чуть не забыл, нужно добавить в свой конфиг ядра следующую опцию<br />
options COMPAT_FREEBSD8 # Compatible with FreeBSD8</p>
<p>&nbsp;</p>
<p>Теперь редактируем следующие файлы добавляя строки<br />
# ee /usr/src/sys/conf/NOTES<br />
# Enable FreeBSD8 compatibility syscalls<br />
options COMPAT_FREEBSD8<br />
# ee /usr/src/sys/conf/options<br />
COMPAT_FREEBSD8 opt_compat.h</p>
<p>&nbsp;</p>
<p>Переходим к компиляции мира и ядра системы<br />
# cd /usr/src<br />
# make kernel-toolchain</p>
<p>&nbsp;</p>
<p>ждем пока процесс не закончится</p>
<p>Теперь компилируем ядро<br />
# make build kernel</p>
<p>&nbsp;</p>
<p>Когда ядро скомпилировано, устанавливаем его<br />
# make install kernel</p>
<p>&nbsp;</p>
<p>Теперь нужно скомпилировать мир<br />
# make build world</p>
<p>&nbsp;</p>
<p>Мир компилируется очень долго, придется подождать</p>
<p>Смотрим вывод date и если вывод некорректный, то нужно обязательно прочитать статью</p>
<p>Теперь выполняем следующее<br />
# adjkerntz -i<br />
# cd /usr/src</p>
<p>&nbsp;</p>
<p>Устанавливаем конфигурационные файлы<br />
# mergemaster -a -p</p>
<p>&nbsp;</p>
<p>Если появляются вопросы то всегда нужно нажимать i<br />
i и [Enter]</p>
<p>&nbsp;</p>
<p>Иногда нужно нажать d если других вариантов нет<br />
d и [Enter]</p>
<p>&nbsp;</p>
<p>i — Установить новые конфигурационные файлы<br />
d — Удалить временные конфигурационные файлы</p>
<p>Теперь удаляем каталог rc.d<br />
# rm -rf /etc/rc.d</p>
<p>&nbsp;</p>
<p>Продолжаем устанавливать конфиги<br />
# mergemaster -i -p<br />
# mergemaster -p</p>
<p>&nbsp;</p>
<p>Устанавливаем мир<br />
# make install world</p>
<p>&nbsp;</p>
<p>После того как мир установлен, копируем конфиги мира<br />
# mergemaster -a<br />
# mergemaster -i<br />
# mergemaster</p>
<p>&nbsp;</p>
<p>Выполнять нужно по очереди, не забывая про параметры i и d, вопросов будет много.</p>
<p>На этом все, новая система установлена но пока перезагружать компьютер нельзя</p>
<p>Меняем пароль у root пользователя<br />
# passwd</p>
<p>&nbsp;</p>
<p>Теперь нужно настроить SSH а то в систему будет не зайти</p>
<p># ee /etc/ssh/sshd_config<br />
PermitRootLogin yes</p>
<p>&nbsp;</p>
<p>Проверяем все ли встало как надо<br />
Всмысле какие демоны запущены? Читаем /etc/rc.conf, есть ли службы, которые запускаются альтернативными способами, можно узнать, посмотрев<br />
# sockstat -l</p>
<p>&nbsp;</p>
<p>Так же там же, в /etc/rc.conf, сетевые настройки<br />
# less, tail, cat &#8212; чем нравится, тем и смотрите.</p>
<p>&nbsp;</p>
<p>Содержимое /var/run/dmesg.boot расскажет всё об используемом железе<br />
# pciconf -lv</p>
<p>&nbsp;</p>
<p>Покажет всё железо, как используемое, так и не используемое<br />
# atacontrol list</p>
<p>&nbsp;</p>
<p>Выдаст список ATA устройств<br />
# camcontrol devlist</p>
<p>&nbsp;</p>
<p>Выдаст список USB устройств<br />
# usbconfig list</p>
<p>&nbsp;</p>
<p>Теперь устанавливаем временную зону<br />
# cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime<br />
# date</p>
<p>&nbsp;</p>
<p>или<br />
# setenv TZ Europe/Moscow-04:00<br />
# date</p>
<p>&nbsp;</p>
<p>Установка локали<br />
По умолчанию в FreeBSD установлена кодировка koi8-r (на мой взгляд это прошлый век, меняем на utf-8)<br />
#ee /etc/login.conf<br />
russian|Russian Users Accounts:\<br />
:charset=UTF-8:\<br />
:lang=ru_RU.UTF-8:\<br />
:tc=default:<br />
# cap_mkdb /etc/login.conf<br />
# pw usermod -n $username -L russian</p>
<p>&nbsp;</p>
<p>Дополнительно к вышеприведенному способу, можно прописать переменные в используемом shell<br />
#ee /etc/csh.cshrc<br />
setenv LANG ru_RU.UTF-8<br />
setenv LC_CTYPE ru_RU.UTF-8<br />
setenv LC_COLLATE POSIX<br />
setenv LC_ALL ru_RU.UTF-8</p>
<p>&nbsp;</p>
<p>Опционально, для тех кто любит bash<br />
# ee /etc/profile<br />
LANG=&#187;ru_RU.UTF-8&#8243;; export LANG<br />
LC_CTYPE=&#187;ru_RU.UTF-8&#8243;; export LC_CTYPE<br />
LC_COLLATE=&#187;POSIX&#187;; export LC_COLLATE<br />
LC_ALL=&#187;ru_RU.UTF-8&#8243;; export LC_ALL<br />
# ee /root/.cshrc<br />
setenv LANG ru_RU.UTF-8<br />
setenv LC_CTYPE ru_RU.UTF-8<br />
setenv LC_COLLATE POSIX<br />
setenv LC_ALL ru_RU.UTF-8</p>
<p>&nbsp;</p>
<p>Далее просто набираем в консоли<br />
# setenv LANG ru_RU.UTF-8<br />
# setenv LC_CTYPE ru_RU.UTF-8<br />
# setenv LC_COLLATE POSIX<br />
# setenv LC_ALL ru_RU.UTF-8</p>
<p>&nbsp;</p>
<p>Прописываем параметры настроек в sysctl<br />
# ee /etc/sysctl.conf</p>
<p>&nbsp;</p>
<p>Внимание данные настройки для моего сервера, они зависят от многих параметров, железа компьютера, количества оперативной памяти, типа процессора, нагрузки на сервер и других тд и тп.</p>
<p>&nbsp;</p>
<p># $FreeBSD: src/etc/sysctl.conf,v 1.8.40.1.2.1 2011/11/11 04:20:22 kensmith Exp $<br />
#<br />
# This file is read when going to multi-user and its contents piped thru<br />
# &#171;sysctl to adjust kernel values. &#171;man 5 sysctl.conf for details.<br />
#</p>
<p># Uncomment this to prevent users from seeing information about processes that<br />
# are being run under another UID.<br />
#security.bsd.see_other_uids=0</p>
<p>kern.ipc.shmall=2048000<br />
kern.ipc.shmmax=4461780992<br />
kern.ipc.semmap=16000</p>
<p>net.inet.tcp.blackhole=2<br />
net.inet.udp.blackhole=1<br />
# kern.ipc.nmbclusters=65536<br />
kern.ipc.somaxconn=32768<br />
kern.ipc.maxsockets=204800<br />
kern.ipc.maxsockbuf=262144<br />
kern.ipc.shm_use_phys=1<br />
kern.maxfiles=256000<br />
kern.maxfilesperproc=230400<br />
net.inet.ip.portrange.first=1024<br />
net.inet.ip.portrange.last=65535<br />
net.inet.ip.portrange.randomized=0<br />
net.inet.tcp.maxtcptw=40960<br />
net.inet.ip.intr_queue_maxlen=4096</p>
<p>net.inet.tcp.msl=40000<br />
net.inet.tcp.finwait2_timeout=40000<br />
net.inet.tcp.syncookies=1</p>
<p># In Large Load sent ansver selective<br />
net.inet.tcp.delayed_ack=0<br />
net.inet.tcp.sack.enable=0<br />
net.inet.tcp.msl=30000<br />
net.inet.tcp.nolocaltimewait=1<br />
net.inet.tcp.fast_finwait2_recycle=1<br />
net.inet.icmp.drop_redirect=1<br />
net.inet.icmp.log_redirect=1<br />
net.inet.ip.redirect=0<br />
net.inet.ip.fw.enable=1<br />
net.inet.flowtable.enable=0<br />
net.inet6.ip6.fw.enable=1<br />
net.inet6.ip6.redirect=0<br />
net.inet6.ip6.accept_rtadv=1<br />
net.inet.tcp.sendspace=16384<br />
net.inet.tcp.recvspace=8192<br />
net.inet.tcp.recvbuf_auto=0<br />
net.inet.tcp.sendbuf_auto=1<br />
net.inet.tcp.sendbuf_inc=8192<br />
net.inet.tcp.sendbuf_max=131072<br />
net.link.ether.inet.max_age=1200<br />
net.inet.tcp.maxtcptw=102400<br />
net.inet.tcp.nolocaltimewait=1<br />
net.inet.tcp.syncookies=1<br />
net.isr.direct=0<br />
kern.polling.enable=1<br />
kern.polling.burst_max=1000<br />
kern.polling.each_burst=50<br />
net.inet.icmp.icmplim=100<br />
net.inet.tcp.rfc3465=0</p>
<p># Security Jail<br />
security.jail.sysvipc_allowed=1<br />
security.jail.allow_raw_sockets=1<br />
security.jail.chflags_allowed=1<br />
security.jail.set_hostname_allowed=1</p>
<p>&nbsp;</p>
<p>Настраиваем bootLoader (Привожу пример своего конфига, повторюсь это для моего сервера и привожу ради примера)<br />
# ee /boot/loader.conf<br />
zfs_load=&#187;YES&#187;<br />
vfs.root.mountfrom=&#187;zfs:garpix/root&#187;<br />
vfs.zfs.zio.use_uma=&#187;0&#8243;</p>
<p>ahci_load=&#187;YES&#187;<br />
aio_load=&#187;YES&#187;<br />
geom_mirror_load=&#187;YES&#187;<br />
geom_stripe_load=&#187;YES&#187;<br />
geom_cache_load=&#187;YES&#187;<br />
geom_label_load=&#187;YES&#187;<br />
accf_http_load=&#187;YES&#187;<br />
accf_data_load=&#187;YES&#187;<br />
accf_dns_load=&#187;YES&#187;<br />
coretemp_load=&#187;YES&#187;<br />
if_em_load=&#187;YES&#187;<br />
verbose_loading=&#187;YES&#187;<br />
boot_verbose=&#187;YES&#187;</p>
<p>vm.kmem_size_max=&#187;4G&#187;<br />
vm.kmem_size=&#187;4G&#187;</p>
<p># HPET Enable<br />
kern.timecounter.hardware=HPET</p>
<p># Dtrace<br />
dtraceall_load=&#187;YES&#187;</p>
<p># Semafores<br />
kern.ipc.semmni=1024<br />
kern.ipc.semmns=2048<br />
kern.ipc.semmnu=1024</p>
<p>kern.maxfiles=204800<br />
kern.maxfilesperproc=200000<br />
kern.ipc.maxsockets=204800<br />
kern.ipc.nmbclusters=204800<br />
kern.ipc.nmbjumbop=192000<br />
kern.ipc.somaxconn=8192<br />
kern.ipc.shmmax=2147483648<br />
kern.ipc.maxsockbuf=10485760<br />
kern.ipc.nsfbufs=10240<br />
kern.maxvnodes=200000<br />
kern.ps_arg_cache_limit=4096</p>
<p># TCP Steck<br />
#net.inet.tcp.syncache.hashsize=1024<br />
#net.inet.tcp.syncache.bucketlimit=100<br />
#net.inet.tcp.syncache.cachelimit=65536<br />
#net.inet.tcp.hostcache.cachelimit=1966080<br />
#net.inet.tcp.tcbhashsize=32768</p>
<p>vm.pmap.shpgperproc=2048<br />
vm.pmap.pg_ps_enabled=1</p>
<p>hw.bge.allow_asf=1</p>
<p>loader_logo=&#187;MYLOGO&#187;<br />
Настройки RC.CONF<br />
# ee /etc/rc.conf</p>
<p>&nbsp;</p>
<p>Привожу для примера свой конфиг rc.conf (media 100BaseTX mediaopt full-duplex,flag0 зависят от датацентра «Hetzner»), это нужно уточнить у службы поддержки так как на другом сервере в другом датацентре у меня было media autoselect Также привожу настройки IPv6 от Hetzner, не буду подробно описывать это тема для отдельной статьи но по примеру можно сделать и будет работать.</p>
<p>&nbsp;</p>
<p>hostname=&#187;garpix&#187;<br />
sshd_enable=&#187;YES&#187;<br />
sendmail_enable=&#187;YES&#187;<br />
zfs_enable=&#187;YES&#187;</p>
<p># IPv4 inet config<br />
ntpd_enable=&#187;YES&#187;<br />
ifconfig_re0=&#187;inet xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx media 100BaseTX mediaopt full-duplex,flag0&#8243;<br />
defaultrouter=&#187;xxx.xxx.xxx.xxx&#187;</p>
<p># IPv6 inet6 config<br />
ipv6_network_interfaces=&#187;re0&#8243;<br />
ifconfig_re0_ipv6=&#187;inet6 2a01:4f8:141:54c3::2 prefixlen 64 accept_rtadv&#187;<br />
ipv6_default_interface=&#187;re0&#8243;<br />
ipv6_static_routes=&#187;gw defgw&#187;<br />
ipv6_route_gw=&#187;2a01:4f8:141:54c0:: -prefixlen 59 -iface re0&#8243;<br />
ipv6_route_defgw=&#187;default 2a01:4f8:141:54c0::1&#8243;</p>
<p># Firewall<br />
firewall_enable=&#187;YES&#187;<br />
firewall_script=&#187;/etc/rc.ipfw&#187;<br />
Ну и самое важное, теперь нужно настроить Firewall<br />
# ee /etc/rc.ipfw</p>
<p>&nbsp;</p>
<p>RC.IPFW<br />
#!/bin/sh<br />
ipfw -q -f flush</p>
<p>oif=&#187;re0&#8243;<br />
cmd=&#187;ipfw -q add &#187;<br />
ks=&#187;keep-state&#187;</p>
<p>tcp_out=&#187;20,21,22,25,80,110,137,138,139,143,443,445,2802,3306,5190,6667,8080,9000&#8243;<br />
tcp_in=&#187;20,21,22,80,443,8080,5432&#8243;<br />
tcp6_in=&#187;::80,::443&#8243;<br />
ftp_high=&#187;21,1024-65535&#8243;<br />
udp_out=&#187;53,999,1234&#8243;<br />
udp_in=&#187;1234&#8243;</p>
<p># allow all<br />
#$cmd 00100 pass all from any to any</p>
<p># deny all<br />
$cmd 00100 pass all from any to any via lo0<br />
$cmd 00101 deny all from any to 127.0.0.0/8<br />
$cmd 00102 deny all from 127.0.0.0/8 to any</p>
<p>$cmd 00500 check-state</p>
<p>$cmd 00502 deny all from any to any frag<br />
$cmd 00501 deny tcp from any to any established<br />
$cmd 00600 allow tcp from any to any out via $oif setup $ks<br />
$cmd 00601 allow udp from any to any out via $oif $ks<br />
# IPv6<br />
$cmd 00701 allow ip6 from any to any $tcp6_in via $oif setup $ks<br />
# tcp Out<br />
$cmd 00702 skip to 10000 tcp from any to any $tcp_out out via $oif setup $ks<br />
# Ftp<br />
$cmd 00703 allow tcp from any to any via $oif established<br />
$cmd 00704 allow tcp from me to any via $oif setup $ks<br />
$cmd 00705 allow tcp from any to me $ftp_high via $oif setup $ks<br />
$cmd 00706 skip to 10000 tcp from any to any $ftp_high out via $oif setup $ks<br />
# Udp out<br />
$cmd 00707 skip to 10000 udp from any to any $udp_out out via $oif $ks<br />
# Udp in<br />
$cmd 00708 skip to 10000 udp from any to any $udp_in in via $oif $ks<br />
# tcp In<br />
$cmd 00709 allow tcp from any to me $tcp_in in via $oif setup $ks<br />
# ping<br />
$cmd 02000 allow icmp from any to any icmptype 8<br />
$cmd 02001 allow icmp from any to any icmptype 0<br />
# IPv6<br />
$cmd 02004 allow ipv6-icmp from any to any</p>
<p>&nbsp;</p>
<p>Делаем скрипт выполняемым<br />
# chmod 0755 /etc/rc.ipfw</p>
<p>&nbsp;</p>
<p>Теперь перезагружаемся<br />
# reboot</p>
<p>&nbsp;</p>
<p>Если все сделано правильно то все должно работать как «часы»</p>
<p>Насчет всяких make delete-old и make delete-old-libs каждый решает для себя сам.</p>
<p>В моем конфиге ядра я прописал DTrace, если Вы сделали также то проверяем все ли работает<br />
# trace -l | head</p>
<p>&nbsp;</p>
<p>Правим make.conf для поддержки Dtrace на уровне пользователя<br />
STRIP=<br />
CFLAGS+=-fno-omit-frame-pointer</p>
<p>&nbsp;</p>
<p>Теперь нужно установить порты</p>
<p>Получаем список портов<br />
# portsnap fetch</p>
<p>&nbsp;</p>
<p>Извлекаем порты<br />
# portsnap extract</p>
<p>&nbsp;</p>
<p>Переходим в каталог с портами и устанавливаем индекс<br />
# cd /usr/ports<br />
# make fetch index</p>
<p>&nbsp;</p>
<p>Все готово, теперь система полностью рабочая, с портами и всем, что требуется для нормальной работы. Можно ставить приложения, которые Вам нужны, mc, ftp, nginx и т.д. и т.п.</p>
<p>P.S. Если нашли неточности или замечания, пишите – исправлю, материал набирал из гугла и с хабра, описал все подробно, чтобы можно было использовать как инструкцию. Конечно, многое тут элементарно, но некоторым пользователям это, я надеюсь, поможет сэкономить время.</p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/freebsd-9-hetzner-install/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Особенности gmirror на FreeBSD</title>
		<link>https://server-kiev.com/2013/08/osobennosti-gmirror-na-freebsd/</link>
		<comments>https://server-kiev.com/2013/08/osobennosti-gmirror-na-freebsd/#comments</comments>
		<pubDate>Sat, 17 Aug 2013 00:32:53 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=60</guid>
		<description><![CDATA[Интересной особенностью немецко-фашистского датацентра HETZNER является добровольно-принудительное навязывание использования на выделенных серверах бюджетного класса под управлением нашей настоящей системы — софтовой реализации зеркального RAID — gmirror. Поскольку качество жестких дисков оставляет желать лучшего, зачастую ставят на новый сервер диски в ошибками SMART, то и на рабочих серверах ошибки SMART не новость. SMART Error Log Version: 1 <a href="https://server-kiev.com/2013/08/osobennosti-gmirror-na-freebsd/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>Интересной особенностью немецко-фашистского датацентра HETZNER является добровольно-принудительное навязывание использования на выделенных серверах бюджетного класса под управлением нашей настоящей системы — софтовой реализации зеркального RAID — <strong>gmirror</strong>. Поскольку качество жестких дисков оставляет желать лучшего, зачастую ставят на новый сервер диски в ошибками SMART, то и на рабочих серверах ошибки SMART не новость.<span id="more-60"></span></p>
<div>
<div>SMART Error Log Version: 1<br />
ATA Error Count: 3<br />
CR = Command Register [HEX]<br />
FR = Features Register [HEX]<br />
SC = Sector Count Register [HEX]<br />
SN = Sector Number Register [HEX]<br />
CL = Cylinder Low Register [HEX]<br />
CH = Cylinder High Register [HEX]<br />
DH = Device/Head Register [HEX]<br />
DC = Device Command Register [HEX]<br />
ER = Error register [HEX]<br />
ST = Status register [HEX]<br />
Powered_Up_Time is measured from power on, and printed as<br />
DDd+hh:mm:SS.sss where DD=days, hh=hours, mm=minutes,<br />
SS=sec, and sss=millisec. It &#171;wraps&#187; after 49.710 days.Error 3 occurred at disk power-on lifetime: 1576 hours (65 days + 16 hours)<br />
When the command that caused the error occurred, the device was active or idle.</div>
</div>
<p>Такая картина — суровая реальность. Естественно, что софтовый RAID в таком режиме не живет. Статус выглядит как-то так:</p>
<div>
<div># gmirror status<br />
Name    Status  Components<br />
mirror/gm0  DEGRADED  ad6 (ACTIVE)</div>
</div>
<p>Чтобы не искать каждый раз 2 команды для восстановления массива решение на сторонних сайтах, делаю себе пометку в этом блоге.</p>
<div>
<div># gmirror forget gm0<br />
# gmirror insert gm0 ad4</div>
</div>
<p>Сначала приказываем системе «забыть» про массив. Далее добавляем «потерянного бойца» в ряды, так сказать РККА.<br />
Сбор массива — дело не одной минуты, сервер будет мучаться примерно сутки для дисков размером 2 ТБайта. Еще бы, ведь он просто копирует диски.</p>
<div>
<div># gmirror status<br />
Name    Status  Components<br />
mirror/gm0  DEGRADED  ad6 (ACTIVE)<br />
ad4 (SYNCHRONIZING, 0%)Disks   ad4   ad6<br />
KB/t    127   119<br />
tps     652   723<br />
MB/s  80.79 84.02<br />
%busy    22    96</div>
</div>
<p>Полка 3 ошибки, молча собираем массив. Вот будет 30, тогда можно создать тикет в саппорт.</p>
<div><a href="http://server-kiev.com/wp-content/uploads/2013/08/a8LDw1.jpg"><img class="size-medium wp-image-61 alignleft" alt="gmirror" src="http://server-kiev.com/wp-content/uploads/2013/08/a8LDw1-300x179.jpg" width="300" height="179" /></a></div>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/osobennosti-gmirror-na-freebsd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Основы безопасности FreeBSD</title>
		<link>https://server-kiev.com/2013/08/freebsd-security/</link>
		<comments>https://server-kiev.com/2013/08/freebsd-security/#comments</comments>
		<pubDate>Fri, 16 Aug 2013 21:46:01 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[freebsd]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=51</guid>
		<description><![CDATA[Несмотря на то, что FreeBSD по праву считается одной из самых безопасных ОС в мире, тем не менее дам несколько советов, как эту самую безопасность улучшить. Для начала, я не буду рассказывать про пользу обновлений операционной системы, обновление ПО, правильная настройка фаервола и т.д. и т.п. Это Вы и так должны понимать. Для начала, поиграемся с sysctl.conf vi <a href="https://server-kiev.com/2013/08/freebsd-security/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>Несмотря на то, что <strong>FreeBSD </strong>по праву считается одной из самых безопасных ОС в мире, тем не менее дам несколько советов, как эту самую безопасность улучшить.</p>
<p>Для начала, я не буду рассказывать про пользу обновлений операционной системы, обновление ПО, правильная настройка фаервола и т.д. и т.п. Это Вы и так должны понимать.<span id="more-51"></span></p>
<p>Для начала, поиграемся с <strong>sysctl.conf</strong></p>
<p><strong>vi /etc/sysctl.conf</strong><br />
<strong>net.inet.tcp.blackhole=2 </strong># Это превращает машину в черную дыру при попытке подключиться к портам, которые не обслуживаются вашим сервером.<br />
<strong>net.inet.udp.blackhole=1</strong><br />
<strong>kern.ps_showallprocs=0 </strong># только пользователь root может видеть все запущенные процессы</p>
<p><strong>/etc/rc.d/sysctl restart</strong></p>
<p><strong></strong>Теперь поиграемся с правами доступа к крону</p>
<p><strong>chmod 0600 /etc/crontab </strong># только пользователь root должен иметь доступ к файлу настройки cron</p>
<p>Права доступа к файлам.</p>
<p>При помощи команды chmod 600, мы разрешаем доступ только пользователю root на запись и чтение файла.  При помощи команды chmod 700, мы также даем возможность пользователю root возможность запускать файл.</p>
<p><strong>chmod 0700 /root<br />
chmod 0600 /etc/syslog.conf<br />
chmod 0600 /etc/rc.conf<br />
chmod 0600 /etc/newsyslog.conf<br />
chmod 0600 /etc/hosts.allow<br />
chmod 0600 /etc/login.conf<br />
chmod 0700 /usr/home/*</strong></p>
<p><em>Console Access (доступ к консоли)</em></p>
<p>Запомните что хоть мы и блокируем доступ от неавторизованного доступа в однопользовательском режиме, это не обеспечивает полную защиту вашего сервера. Некто с плохими намерениями может снять жесткий диск с вашего сервера и установить его на другом компьютере. Если сервер не защищен физически, то никакие программные настройки, вас не спасут от взлома вашей системы. Изменение прав доступа к первой консоли означает что вы не сможете войти в систему в однопользовательском режиме, не зная пароля пользователя</p>
<p><strong>vi /etc/ttys</strong><br />
console  none   unknown   off   insecure  # запрашивать пароль пользователя root в однопользовательском режиме.<br />
ttyv0   “/usr/libexec/getty Pc”  cons25   on   insecure<br />
<strong># Virtual terminals<br />
ttyv1   “/usr/libexec/getty Pc”  cons25   on   insecure<br />
ttyv2   “/usr/libexec/getty Pc”  cons25   on   insecure<br />
ttyv3   “/usr/libexec/getty Pc”  cons25   on   insecure<br />
ttyv4   “/usr/libexec/getty Pc”  cons25   on   insecure<br />
ttyv5   “/usr/libexec/getty Pc”  cons25   on   insecure<br />
ttyv6   “/usr/libexec/getty Pc”  cons25   on   insecure<br />
ttyv7   “/usr/libexec/getty Pc”  cons25   on   insecure</strong></p>
<p><em><strong>Некоторые данные, которые необходимы в rc.conf</strong></em></p>
<p><strong>vi /etc/rc.conf</strong><br />
<strong>inetd_enable=”NO” </strong># Better ways to run your daemons<br />
<strong>syslogd_enable=”YES” </strong># Конечно мы хотим вести регистрацию событий. Если вы планируете настроить<br />
# удаленную регистрацию событий, тогда пропустите следующую строку.<br />
# Если файлы регистрации событий будут расположены на локальном диске,<br />
# убедитесь что у вас смонтирован раздел /var.<br />
<strong>syslogd_flags=”-ss” </strong># Этим мы закроем 514 udp порт если мы не хотим использовать удаленную<br />
# регистрацию событий на или с этого сервера. Естественно не нужно добавлять<br />
# эту строчку, если вы планируете настроить удаленную регистрацию событий.<br />
<strong>icmp_drop_redirect=”YES” </strong># Отключаем прием и отправку переадресовующих ICMP пакетов.<br />
<strong>icmp_log_redirect=”YES” </strong># Регистрировать переадресовующие ICMP пакеты в журнальном файле<br />
<strong>clear_tmp_enable=”YES” </strong># Очищать директорию /tmp при загрузке.<br />
<strong>portmap_enable=”NO” </strong># Если не используется <strong>NFS</strong><br />
<strong>icmp_bmcastecho=”NO” </strong># Предотвращает springboarding и smurf атаки, запрещая серверу отвечать<br />
# на широковещательные ping-пакеты.<br />
<strong>fsck_y_enable=”YES” </strong># При ошибках файловой системы на этапе загрузки утилита fsck будет<br />
# запущена с флагом -y (man fsck)<br />
<strong>update_motd=”NO” </strong>#Не обновлять файл с сообщением дня <strong>/etc/motd</strong><br />
<strong>tcp_drop_synfin=”YES” </strong># Отбрасывать synfin пакеты. Смотри ниже, необходимые изменения в ядре.<br />
<strong>log_in_vain=”YES” </strong># Установите эту опцию, если вы хотите записывать все попытки подключения<br />
# к закрытым портам вашего сервера.<br />
<strong>sshd_enable=”YES” </strong># Это позволит сделать удаленный доступ к серверу более защищенным.</p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/freebsd-security/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Консольные команды FreeBSD</title>
		<link>https://server-kiev.com/2013/08/freebsd-console/</link>
		<comments>https://server-kiev.com/2013/08/freebsd-console/#comments</comments>
		<pubDate>Fri, 16 Aug 2013 21:36:24 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[freebsd]]></category>
		<category><![CDATA[команды freebsd]]></category>
		<category><![CDATA[консоль]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=49</guid>
		<description><![CDATA[Здесь я расскажу об основных консольных командах FreeBSD. Это должен знать каждый Unix-админ! quit и exit используются для выхода из программы more основное средство для постраничного вывода на экран текста (содержимое файла или вывода команды). Синтаксис more файл. См. также less и cat. grep фильтр для отображения текста и результатов вывода другой программы. Может использовать регулярные выражения. См. также <a href="https://server-kiev.com/2013/08/freebsd-console/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>Здесь я расскажу об основных консольных командах FreeBSD.<br />
Это должен знать каждый Unix-админ! <img src="https://server-kiev.com/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /><span id="more-49"></span></p>
<p><strong>quit</strong> и <strong>exit</strong></p>
<p>используются для выхода из программы</p>
<p><strong>more</strong></p>
<p>основное средство для постраничного вывода на экран текста (содержимое файла или вывода команды). Синтаксис <em>more файл</em>. См. также less и cat.</p>
<p><strong>grep</strong></p>
<p>фильтр для отображения текста и результатов вывода другой программы. Может использовать регулярные выражения. См. также fgrep и egrep</p>
<p><strong>find</strong></p>
<p>программа поиска файла. Пример поиска файла crontab рекурсивно по всем директориям, начиная с корневого каталога: <em>find / -name crontab</em></p>
<p><strong>locate</strong></p>
<p>быстрый поиск файла по предварительно сформированной базе данных. См. также updatedb</p>
<p><strong>updatedb</strong></p>
<p>обновляет базу данных о файлах для работы команды locate. В новой версии FreeBSD 7.2 для обновления базы данных служит скрипт /usr/libexec/locate.updatedb</p>
<p><strong>man</strong></p>
<p>система справки по командам. Синтаксис <em>man [раздел]</em> команда или <em>man команда</em>. Раздел указывается в виде номера.</p>
<p><strong>pwd</strong></p>
<p>показывает текущую директорию (каталог)</p>
<p><strong>ls</strong></p>
<p>показывает список содержимого директории (каталога). Позволяет просматривать права и владельцев, делать мягкие ссылки (soft или symbolic link) на файлы и папки. Синтаксис <em>ls [-опции] [каталог]</em>. Примеры опций: -F, -laF, -s, -l. См. также команду ln.</p>
<p><strong>ln</strong></p>
<p>делает жесткие ссылки (hard link), а также мягкие (с опцией -s) ссылки. См. также команду ls.</p>
<p><strong>cd</strong></p>
<p>меняет текущую директорию. Синтаксис <em>cd каталог</em>. В качестве каталога может быть также / (корневой каталог), .. (родительский каталог), . (текущий каталог, хотя его указывать для команды cd нет смысла).</p>
<p><strong>halt</strong></p>
<p>команда для остановки системы. Команда <em>halt -n</em> подавляет системный вызов sync приостанове.</p>
<p><strong>shutdown</strong></p>
<p>команда для остановки системы. Примеры: <em>shutdown -h now</em> (выключить компьютер сейчас), <em>shutdown -r 09:30 “Reboot for maintenance”</em>(перегрузить в 9.30 и разослать сообщение пользователям)</p>
<p><strong>reboot</strong></p>
<p>команда для перезагрузки. Аналог shutdown -h now</p>
<p><strong>echo</strong></p>
<p>вывод содержимого переменной или сообщения. Частый гость в скриптах.</p>
<p><strong>dmesg</strong></p>
<p>выдаёт список сообщений загрузки. Очень полезно для просмотра в консоли ssh тех сообщений, которые вываливаются по умолчанию на tty при подключении новых устройств (например USB)</p>
<p><strong>clear</strong></p>
<p>очищает экран консоли</p>
<p><strong>vi</strong></p>
<p>де-факто текстовый редактор. Не для простых пользователей, только для фанатов. Намного приятнее использовать <strong>mcedit</strong> или на худой конец <strong>cat</strong>. См. также <strong>ee</strong> и <strong>touch</strong></p>
<p><strong>boot0cfg</strong></p>
<p>конфигуратор начального загрузчика FBSD</p>
<p><strong>ifconfig</strong></p>
<p>конфигурирование параметров сетевого интерфейса, получение параметров сетевых интерфейсов (имени, состояния, MAC-адреса)</p>
<p><strong>dhclient</strong></p>
<p>DHCP клиент. Его вызов без параметров пытается переконфигурировать все сетевые интерфейсы. Чтобы не поломать систему, в качестве параметра нужно как минимум указывать имя сетевого интерфейса (их узнать можно командой ifconfig без параметров).</p>
<p><strong>fsck</strong></p>
<p>проверка дисков</p>
<p><strong>cp</strong> — копирование, <strong>mv</strong> — перемещение файла, <strong>rm</strong> — удаление файла, папки или группы файлов и папок, <strong>rmdir</strong> — удаление пустого каталога (-p с подкаталогами).</p>
<p><strong>touch</strong></p>
<p>создание пустого нового файла, или изменение даты/времени последнего доступа для существующего файла, или модификация существующего файла.</p>
<p><strong>wc</strong></p>
<p>подсчёт в файле строк, слов и символов</p>
<p><strong>sort</strong><strong></strong></p>
<p>сортировка текстового файла</p>
<p><strong>tr</strong></p>
<p>замена/удаление символов в файле (строки, к сожалению, менять нельзя)</p>
<p><strong>cut</strong></p>
<p>вывод частей строк из текстовых файлов. Пример вырезания только второго поля из строки, разделитель полей — пробел: cut -f2 –delimiter=” ” file1.txt &gt; file2.txt</p>
<p><strong>fmt</strong></p>
<p>простое форматирование и обработка текста. Более сложная обработка текста &#8212; <strong>sed</strong> и <strong>awk</strong>.</p>
<p><strong>uniq</strong> -c file1</p>
<p>подсчёт в файле file1 одинаковых строк и вывод только разных строк с количеством их вхождений</p>
<p><strong>uniq nouniq.txt &gt; uniq.txt</strong></p>
<p>оставляет в файле uniq.txt только уникальные строки (только при условии, если он предварительно отсортирован, например командой sort)</p>
<p><strong>chmod</strong></p>
<p>изменение прав на файлы</p>
<p><strong>killall</strong></p>
<p>посылка сигналов демонам и программам. См. также kill</p>
<p><strong>pkg_add</strong></p>
<p>установка пакета. См. также pkg_info, pkg_delete</p>
<p><strong>ftp</strong></p>
<p>ftp-клиент</p>
<p><strong>make</strong></p>
<p>программа для сборки и установки пакетов</p>
<p><strong>whereis</strong></p>
<p>поиск пакетов и приложений. См. также which и locate</p>
<p><strong>which</strong></p>
<p>показывает, прописана ли программа в переменной среды PATH</p>
<p><strong>mount</strong></p>
<p>монтирование файла устройства в нужную папку. См. также mount_cd9660</p>
<p><strong>smbclient</strong></p>
<p>подключение к общим сетевым папкам Windows (Samba-клиент)</p>
<p><strong>cmp</strong><strong></strong></p>
<p>сравнение файлов. См. также diff</p>
<p><strong>uname</strong></p>
<p>выводит версию операционной системы</p>
<p><strong>tcpdump</strong></p>
<p>снифер. См. также <strong>tethereal</strong></p>
<p><strong>tail</strong></p>
<p>вывод хвоста файла. Чрезвычайно удобно следить за изменениями файла, например, логами. Пример: <em>tail -f файл</em>. См. также head</p>
<p><strong>head</strong></p>
<p>вывод первых строк файла</p>
<p><strong>mail</strong></p>
<p>консольный почтовый клиент. Часто используется для чтения системной почты с разными предупреждающими сообщениями, которую FreeBSD отправляет пользователю root</p>
<p><strong>dd</strong></p>
<p>клонирование дисков</p>
<p><strong>df</strong></p>
<p>просмотр смонтированных дисков. Пример просмотра сколько осталось свободного места: <em>df -m</em>. См. также du</p>
<p><strong>mkdir</strong></p>
<p>создает папку</p>
<p><strong>ssh</strong></p>
<p>ssh-клиент</p>
<p><strong>telnet</strong></p>
<p>telnet-клиент</p>
<p><strong>perl</strong></p>
<p>запуск скриптов на выполнение на языке Perl (расширение .pl)</p>
<p><strong>ps</strong></p>
<p>просмотр запущенных процессов. Опция -ax выводит также список запущенных демонов. Команду <em>ps -ax</em> удобно использовать совместно с grep или more</p>
<p><strong>top</strong></p>
<p>просмотр запущенных процессов, а также сколько они занимают места в памяти. Программа top после выполнения остается загруженной, и постоянно обновляет список процессов. Кроме того, программа показывает загруженность процессора, использование памяти, использование swap-файла.</p>
<p><strong>script</strong></p>
<p>сохранить в файл работу в консоли</p>
<p><strong>ping</strong></p>
<p>определение доступности хоста по IP</p>
<p><strong>traceroute</strong></p>
<p>построение маршрута до хоста по IP</p>
<p><strong>fdformat</strong></p>
<p>форматирование floppy-дисков</p>
<p><strong>bash</strong></p>
<p>более удобный командный интерпретатор, чем использующийся по умолчанию, стандартный sh</p>
<p><strong>hostname</strong></p>
<p>позволяет узнать имя текущей машины</p>
<p><strong>sockstat -4</strong></p>
<p>показывает открытые TCP сокеты</p>
<p><strong>history</strong></p>
<p>просмотр листинга ранее введённых в консоли команд</p>
<p><strong>du</strong></p>
<p>просмотр статистики по использованию диска. Например (-h показать в человеческом формате с глубиной подпапок 2): <em>du -h -d2 | more</em></p>
<p><strong>passwd</strong></p>
<p>смена пароля. Команда chpass запускает vi с открытым файлом информации для root</p>
<p><strong>tar</strong></p>
<p>объединение файлов и каталогов в один файл (обычно для архивирования или записи на ленту)</p>
<p><strong>gzip</strong></p>
<p>архиватор, см. также bzip2</p>
<p><strong>netstat</strong></p>
<p>просмотр информации по сетевой подсистеме. Часто используется для просмотра маршрутов и состояния сетевых интерфейсов. Например, <strong>netstat -a</strong> показывает статистику сетевых соединений, с адресами и портами. С опцией <strong>netstat -na</strong> без символьных имен (работает намного быстрее). Просмотр маршрутов <strong>netstat -rn</strong>.</p>
<p><strong>route</strong></p>
<p>управление маршрутами</p>
<p><strong>date</strong></p>
<p>получение текущей даты и/или времени. Часто используется в скриптах для генерации уникального имени файла, или имени, содерщего информации о дате</p>
<p><strong>mc</strong></p>
<p>Midnight Commander — аналог файлового менеджера Norton Commander. Для новичка — это первейшая программа, которую следует установить</p>
<p><strong>mcedit</strong></p>
<p>удобный текстовый редактор, который устанавливается вместе с Midnight Commander</p>
<p><strong>host</strong></p>
<p>несет в себе функции nslookup от Windows.</p>
<p><strong>nslookup</strong></p>
<p>проверка работы серверов DNS — можно посылать DNS запросы в интерактивном режиме</p>
<p><strong>nmap</strong></p>
<p>сканер портов и хостов. Это вторая программа, которую стоит поставить.</p>
<p><strong>mpd</strong></p>
<p>демон, обслуживающий PPP-соединения. Позволяет устанавливать VPN-соединения, например, с провайдерами Интернет.</p>
<p><strong>logger</strong></p>
<p>средство для занесения записей в syslog с командной строки</p>
<p><strong>sysctl</strong></p>
<p>нужна для просмотра и установки переменных системы</p>
<p><strong>ipnat</strong></p>
<p>утилита, реализующая подсистему NAT</p>
<p><strong>who</strong></p>
<p>посмотреть, кто работает и за какими консолями</p>
<p><strong>whoami</strong></p>
<p>посмотреть, под каким именем я залогинен</p>
<p><strong>su</strong></p>
<p>средство смены логина. Обычно используется для перехода к выполнению административных функций</p>
<p><strong>w</strong></p>
<p>посмотреть, кто залогинен, когда, с какого IP, какая программа выполняется в консоли</p>
<p><strong>time</strong></p>
<p>позволяет измерить время работы скрипта или программы</p>
<p><strong>iconv</strong></p>
<p>мощный перекодировщик (из одной кодировки в другую) текстовых файлов</p>
<p><strong>cat</strong></p>
<p>мощная команда как для вывода файлов на экран (альтернатива more), так и для создания новых файлов. Намного удобнее, чем паленый текстовый редактор vi.</p>
<p><strong>ldd</strong> full_path_to_binary_program_file</p>
<p>показывает зависимости для программы — какие библиотеки или модули использует программа, и где они находятся</p>
<p><strong>adduser</strong></p>
<p>добавление нового пользователя в систему</p>
<p><strong>rmuser</strong></p>
<p>удаление пользователя из системы</p>
<p><strong>service</strong></p>
<p>скрипт в Red Hat Linux, который позволяет посмотреть статус сервисов (service –status-all), а также остановить, запустить и перезапустить их (например service smb restart). Под сервисами понимаются демоны.</p>
<p><strong>scp</strong></p>
<p>secure copy program — утилита для защищенного копирования файлов по протоколу SSH.</p>
<p><strong>tee</strong></p>
<p>перенаправление клавиатурного ввода в файл. Удобная замена текстовому редактору в том случае, когда нужно в putty что-то скопировать из буфера обмена Windows в файл на *nix. Пример: tee имя_файла.txt, после чего жмем Ctl+V (вставка из буфера обмена в консоль putty) и потом Ctrl+C (окончание работы для tee). В результате получаем в текущем каталоге файл имя_файла.txt с содержимым буфера обмена.</p>
<p><strong>chgrp chown chmod</strong></p>
<p>три команды, меняющие у файлового объекта (файла, папки, вложенных папок и файлов) соответсвенно группу (group), владельца (owner), прав доступа (mode). Для того, чтобы команда применялась на вложенные файлы и папки, нужно вызывать команды с опцией -R. Пример смены группы: chgrp -R &lt;группа&gt;. Напомню, что права, группу и владельца на файлы и каталоги можно посмотреть командой ls -l</p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/freebsd-console/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Анализ сетевой активности FreeBSD с помощью nettop</title>
		<link>https://server-kiev.com/2013/08/analiz-setevojj-aktivnosti-freebsd-s-pomoshhyu-n/</link>
		<comments>https://server-kiev.com/2013/08/analiz-setevojj-aktivnosti-freebsd-s-pomoshhyu-n/#comments</comments>
		<pubDate>Fri, 16 Aug 2013 21:26:36 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[freebsd]]></category>
		<category><![CDATA[nettop]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=47</guid>
		<description><![CDATA[Сегодня я еще раз вернусь к теме мониторинга трафика в реальном времени, я уже рассматривал две подобных программы для UNIX (FreeBSD, Linux, NetBSD) мониторинг с помощью trafshow и iftop просмотр сетевой активности. Сегодня речь пойдет о nettop под FreeBSD. Для начала публикую вид который имеет программа в рабочем состоянии : Mon Dec 13 09:33:51 2010       <a href="https://server-kiev.com/2013/08/analiz-setevojj-aktivnosti-freebsd-s-pomoshhyu-n/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>Сегодня я еще раз вернусь к теме мониторинга трафика в реальном времени, я уже рассматривал две подобных программы для UNIX (FreeBSD, Linux, NetBSD) <a title="trashow freeBSD Linux" href="http://ifreebsd.org/linux/trafshow-%D1%81%D0%BF%D0%BE%D1%81%D0%BE%D0%B1-%D0%BF%D1%80%D0%BE%D1%81%D0%BC%D0%BE%D1%82%D1%80%D0%B0-%D1%81%D0%B5%D1%82%D0%B5%D0%B2%D0%BE%D0%B9-%D0%B0%D0%BA%D1%82%D0%B8%D0%B2%D0%BD%D0%BE%D1%81%D1%82/" target="_blank">мониторинг с помощью trafshow</a> и <a title="ftop в реальном времени" href="http://ifreebsd.org/linux/iftop-%D0%BC%D0%BE%D0%BD%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BD%D0%B3-%D1%81%D0%B5%D1%82%D0%B5%D0%B2%D0%BE%D0%B3%D0%BE-%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81%D0%B0/" target="_blank">iftop просмотр сетевой активности</a>. Сегодня речь пойдет о nettop под FreeBSD.<span id="more-47"></span></p>
<p>Для начала публикую вид который имеет программа в рабочем состоянии :</p>
<blockquote>
<div id="_mcePaste">Mon Dec 13 09:33:51 2010                                                 0:01:12</div>
<div id="_mcePaste">%pkts  total    %size   total   sz/pkt    bit/s                          type</div>
<div id="_mcePaste">100.00%        100.00%   21.7k     148     2.8k  21.7k.0    total</div>
<div id="_mcePaste">100.00%        100.00%           148     2.8k               `-ipv4</div>
<div id="_mcePaste">97.31%         97.73%           149     2.8k                 |-tcp</div>
<div id="_mcePaste">97.31%         97.73%           149     2.8k                 | `-ssh</div>
<div id="_mcePaste">2.68%          2.26%           125     0.0                  `-udp</div>
<div id="_mcePaste">2.68%          2.26%           125     0.0                    `-domain</div>
</blockquote>
<p>Как видно из примера – программа имеет иной вывод в отличии от рассмотренных нами iftop и tafshow. Но она тоже весьма информативна, но вывод ее ближе к netstat чем к упомянутым утилитам. Как по мне – по выводу этой утилиты проще отслеживать текущую активность по портам что иногда бывает крайне ценно.   На примере можно отследить общую скорость передачи данных и проценты которые из нее занимают разные порты.  В такой подачи информации есть плюсы именно тогда когда речь идет о противодействии и определению DOS атак.</p>
<p>В установке и использовании программа предельно проста, находиться в портах FreeBSD:</p>
<blockquote><p>ifreebsd#/&gt;cd /usr/ports/net-mgmt/nettop</p>
<p>ifreebsd#…ports/net-mgmt/nettop&gt;make install clean</p></blockquote>
<p>Запускать можно с ключом указания интерфейса, например так :</p>
<blockquote><p>ifreebsd#…ports/net-mgmt/nettop&gt;nettop -i xl0</p></blockquote>
<p>Удачи. Остались вопросы, добро пожаловать в комментарии.</p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/analiz-setevojj-aktivnosti-freebsd-s-pomoshhyu-n/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Таблица CIDR соответствия</title>
		<link>https://server-kiev.com/2013/08/tablica-cidr-sootvetstviya/</link>
		<comments>https://server-kiev.com/2013/08/tablica-cidr-sootvetstviya/#comments</comments>
		<pubDate>Fri, 16 Aug 2013 21:22:22 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[Статьи]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=45</guid>
		<description><![CDATA[Решил вот опубликовать небольшую шпаргалку по CIDR соответствию, понятно что ее много где можно найти, но я хочу находить ее у себя. Не высчитывать же все –  ноликами и единичками? , в памяти, хорошо , но всего списка я конечно не помню. А так все наглядно и под рукой. Возможно кому-то будет полезным. Также можно распечатать и <a href="https://server-kiev.com/2013/08/tablica-cidr-sootvetstviya/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>Решил вот опубликовать небольшую шпаргалку по CIDR соответствию, понятно что ее много где можно найти, но я хочу находить ее у себя. <img src="https://server-kiev.com/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /> Не высчитывать же все –  ноликами и единичками? , в памяти, хорошо , но всего списка я конечно не помню. А так все наглядно и под рукой.<span id="more-45"></span></p>
<p>Возможно кому-то будет полезным. Также можно распечатать и повесить возле рабочего места.</p>
<table id="AutoNumber1" width="81%" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="20%" height="55">префикс CIDR его длинна</td>
<td width="20%" height="55">кол-во адресов (возможное.)</td>
<td width="20%" height="55">кол-во адресов (хостов)</td>
<td width="20%" height="55">маска сети</td>
<td width="20%" height="55">количество сетей в классовом виде</td>
</tr>
<tr>
<td width="20%" height="17">/1</td>
<td width="20%" height="17">2147483648</td>
<td width="20%" height="17">2 147 483 646</td>
<td width="20%" height="17">128.0.0.0</td>
<td width="20%" height="17">128 A</td>
</tr>
<tr>
<td width="20%" height="22">/2</td>
<td width="20%" height="22">1073741824</td>
<td width="20%" height="22">1 073 741 822</td>
<td width="20%" height="22">192.0.0.0</td>
<td width="20%" height="22">64 A</td>
</tr>
<tr>
<td width="20%" height="21">/3</td>
<td width="20%" height="21">536870912</td>
<td width="20%" height="21">536 870 910</td>
<td width="20%" height="21">224.0.0.0</td>
<td width="20%" height="21">32 A</td>
</tr>
</tbody>
</table>
<table id="AutoNumber2" width="81%" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="20%" height="18">/4</td>
<td width="20%" height="18">268435456</td>
<td width="20%" height="18">268 435 454</td>
<td width="20%" height="18">240.0.0.0</td>
<td width="20%" height="18">16 A</td>
</tr>
<tr>
<td width="20%" height="18">/5</td>
<td width="20%" height="18">134217728</td>
<td width="20%" height="18">134 217 726</td>
<td width="20%" height="18">248.0.0.0</td>
<td width="20%" height="18">8 A</td>
</tr>
<tr>
<td width="20%" height="18">/6</td>
<td width="20%" height="18">67108864</td>
<td width="20%" height="18">67 108 862</td>
<td width="20%" height="18">252.0.0.0</td>
<td width="20%" height="18">4 A</td>
</tr>
<tr>
<td width="20%" height="18">/7</td>
<td width="20%" height="18">33554432</td>
<td width="20%" height="18">33 554 430</td>
<td width="20%" height="18">254.0.0.0</td>
<td width="20%" height="18">2 A</td>
</tr>
</tbody>
</table>
<table id="AutoNumber3" width="81%" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="20%">/8</td>
<td width="20%">16777216</td>
<td width="20%">16 777 214</td>
<td width="20%">255.0.0.0</td>
<td width="20%">1 A (256 B)</td>
</tr>
<tr>
<td width="20%">/9</td>
<td width="20%">8388608</td>
<td width="20%">8 388 606</td>
<td width="20%">255.128.0.0</td>
<td width="20%">(1/2 A) 128 B</td>
</tr>
<tr>
<td width="20%">/10</td>
<td width="20%">4194304</td>
<td width="20%">4 194 302</td>
<td width="20%">255.192.0.0</td>
<td width="20%">(1/4 A) 64 B</td>
</tr>
<tr>
<td width="20%">/11</td>
<td width="20%">2097152</td>
<td width="20%">2 097 150</td>
<td width="20%">255.224.0.0</td>
<td width="20%">(1/8 A) 32 B</td>
</tr>
</tbody>
</table>
<table id="AutoNumber4" width="81%" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="20%">/12</td>
<td width="20%">1048576</td>
<td width="20%">1 048 574</td>
<td width="20%">255.240.0.0</td>
<td width="20%">16 B</td>
</tr>
<tr>
<td width="20%">/13</td>
<td width="20%">524288</td>
<td width="20%">524 286</td>
<td width="20%">255.248.0.0</td>
<td width="20%">8 B</td>
</tr>
<tr>
<td width="20%">/14</td>
<td width="20%">262144</td>
<td width="20%">262 142</td>
<td width="20%">255.252.0.0</td>
<td width="20%">4 B</td>
</tr>
<tr>
<td width="20%">/15</td>
<td width="20%">131072</td>
<td width="20%">13 107</td>
<td width="20%">255.254.0.0</td>
<td width="20%">2 B</td>
</tr>
</tbody>
</table>
<table id="AutoNumber5" width="81%" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="20%">/16</td>
<td width="20%">65536</td>
<td width="20%">65 534</td>
<td width="20%">255.255.0.0</td>
<td width="20%">1 B (256 C)</td>
</tr>
<tr>
<td width="20%">/17</td>
<td width="20%">32768</td>
<td width="20%">32 766</td>
<td width="20%">255.255.128.0</td>
<td width="20%">(1/2 B) 128 C</td>
</tr>
<tr>
<td width="20%">/18</td>
<td width="20%">16384</td>
<td width="20%">16 382</td>
<td width="20%">255.255.192.0</td>
<td width="20%">(1/4 B) 64 C</td>
</tr>
<tr>
<td width="20%">/19</td>
<td width="20%">8192</td>
<td width="20%">819</td>
<td width="20%">255.255.224.0</td>
<td width="20%">(1/8 B) 32 C</td>
</tr>
</tbody>
</table>
<table id="AutoNumber6" width="81%" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="20%">/20</td>
<td width="20%">4096</td>
<td width="20%">4 094</td>
<td width="20%">255.255.240.0</td>
<td width="20%">16 C</td>
</tr>
<tr>
<td width="20%">/21</td>
<td width="20%">2048</td>
<td width="20%">2 046</td>
<td width="20%">255.255.248.0</td>
<td width="20%">8 C</td>
</tr>
<tr>
<td width="20%">/22</td>
<td width="20%">1024</td>
<td width="20%">1 022</td>
<td width="20%">255.255.252.0</td>
<td width="20%">4 C</td>
</tr>
<tr>
<td width="20%">/23</td>
<td width="20%">512</td>
<td width="20%">510</td>
<td width="20%">255.255.254.0</td>
<td width="20%">2 C</td>
</tr>
</tbody>
</table>
<table id="AutoNumber7" width="81%" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="20%">/24</td>
<td width="20%">256</td>
<td width="20%">254</td>
<td width="20%">255.255.255.0</td>
<td width="20%">1 C</td>
</tr>
<tr>
<td width="20%">/25</td>
<td width="20%">128</td>
<td width="20%">126</td>
<td width="20%">255.255.255.128</td>
<td width="20%">1/2 C</td>
</tr>
<tr>
<td width="20%">/26</td>
<td width="20%">64</td>
<td width="20%">62</td>
<td width="20%">255.255.255.192</td>
<td width="20%">1/4 C</td>
</tr>
<tr>
<td width="20%">/27</td>
<td width="20%">32</td>
<td width="20%">30</td>
<td width="20%">255.255.255.224</td>
<td width="20%">1/8 C</td>
</tr>
</tbody>
</table>
<table id="AutoNumber8" width="81%" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="20%">/28</td>
<td width="20%">16</td>
<td width="20%">14</td>
<td width="20%">255.255.255.240</td>
<td width="20%">1/16 C</td>
</tr>
<tr>
<td width="20%">/29</td>
<td width="20%">8</td>
<td width="20%">6</td>
<td width="20%">255.255.255.248</td>
<td width="20%">1/32 C</td>
</tr>
<tr>
<td width="20%">/30</td>
<td width="20%">4</td>
<td width="20%">2</td>
<td width="20%">255.255.255.252</td>
<td width="20%">1/64 C</td>
</tr>
<tr>
<td width="20%">/31</td>
<td width="20%">2</td>
<td width="20%">0</td>
<td width="20%">255.255.255.254</td>
<td width="20%">1/128 C</td>
</tr>
</tbody>
</table>
<table id="AutoNumber9" width="81%" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="20%">/32</td>
<td width="20%">1</td>
<td width="20%">1</td>
<td width="20%">255.255.255.255</td>
<td width="20%">1/256 C</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/tablica-cidr-sootvetstviya/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Виртуализация KVM: установка FreeBSD 8.2 – на Linux Debian 6.0</title>
		<link>https://server-kiev.com/2013/08/virtualizaciya-kvm-ustanovka-freebsd-8-2-na-linux-debian-6-0/</link>
		<comments>https://server-kiev.com/2013/08/virtualizaciya-kvm-ustanovka-freebsd-8-2-na-linux-debian-6-0/#comments</comments>
		<pubDate>Fri, 16 Aug 2013 21:06:23 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[Статьи]]></category>
		<category><![CDATA[Виртуализация]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=43</guid>
		<description><![CDATA[Пример установки FreeBSD 8.2 под KVM Debian 6.0. Очень коротко описываем как запустить freeBSD в Linux используя KVM. Обязательно ! Поддержка виртуализации вашем процессором, используется аппаратная виртуализация. Установка : aptitude update &#38;&#38; aptitude upgrade &#38;&#38; aptitude install kvm libvirt-bin virtinst shutdown -r now Проверка &#8212; oot@debian:/IMG# lsmod &#124; grep kvm kvm_intel         <a href="https://server-kiev.com/2013/08/virtualizaciya-kvm-ustanovka-freebsd-8-2-na-linux-debian-6-0/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>Пример установки FreeBSD 8.2 под KVM Debian 6.0.</p>
<p>Очень коротко описываем как запустить freeBSD в Linux используя KVM.</p>
<p>Обязательно ! Поддержка виртуализации вашем процессором, используется аппаратная виртуализация.<span id="more-43"></span></p>
<p>Установка :</p>
<p>aptitude update &amp;&amp; aptitude upgrade &amp;&amp; aptitude install kvm libvirt-bin virtinst</p>
<p>shutdown -r now</p>
<p>Проверка &#8212;</p>
<div id="_mcePaste">oot@debian:/IMG# lsmod | grep kvm</div>
<div id="_mcePaste">kvm_intel              38162  3</div>
<div id="_mcePaste">kvm                   214152  1 kvm_intel</div>
<div>Готовим винт.</div>
<div>dd if=/dev/zero of=./freebsd.img bs=1024k count=12000</div>
<div>Создаем сеть</div>
<div>apt-get install bridge-utils</div>
<div>Настраиваем bridge</div>
<div>vim /etc/network/interfaces</div>
<div>
<div># This file describes the network interfaces available on your system</div>
<div># and how to activate them. For more information, see interfaces(5).</div>
<div># The loopback network interface</div>
<div>auto lo</div>
<div>iface lo inet loopback</div>
<div># The primary network interface</div>
<div>#allow-hotplug eth0</div>
<div>#iface eth0 inet static</div>
<div>#       address 10.1.1.77</div>
<div>#       netmask 255.255.255.0</div>
<div>#       network 10.1.1.0</div>
<div>#       broadcast 10.1.1.255</div>
<div>#       gateway 10.1.1.1</div>
<div>#       # dns-* options are implemented by the resolvconf package, if installed</div>
<div>#       dns-nameservers 10.1.1.21</div>
<div>auto br0</div>
<div>iface br0 inet static</div>
<div>address 10.1.1.77</div>
<div>netmask 255.255.255.0</div>
<div>broadcast 10.1.1.255</div>
<div>gateway 10.1.1.1</div>
<div>bridge_ports    eth0</div>
<div>bridge_stp      off</div>
<div>bridge_maxwait  0</div>
<div>bridge_fd       0</div>
</div>
<div>мак адрес можно получить с помощью такого скрипта :</div>
<div>root@debian:/home/alan# cat mac.sh</div>
<div>
<div>#!/bin/bash</div>
<div># generate a random mac address for the qemu nic</div>
<div>printf ‘DE:AD:BE:EF:%02X:%02X\n’ $((RANDOM%256)) $((RANDOM%256))</div>
</div>
<div>устанавливаем</div>
<div>kvm -m 512 -cdrom ./ISO/FreeBSD-8.2-RELEASE-amd64-bootonly.iso -boot d /IMG/freebsd.img -net nic,macaddr=DE:AD:BE:EF:FB:19 -net tap -vnc :1</div>
<div>Подключаемся на адрес Хост системы  &#8212; VNC viewer .</div>
<div>Запустить после установки можно так</div>
<div>kvm -m 1000 /IMG/freebsd.img -net nic,macaddr=DE:AD:BE:EF:FB:19 -net tap -nographic</div>
<div>или если необходим VNC то</div>
<div>kvm -m 1000 /IMG/freebsd.img -net nic,macaddr=DE:AD:BE:EF:FB:19 -net tap -vnc :1</div>
<div>Дополнение :</div>
<div>Увеличение скорости работы виртуального HDD возможна при использовании драйверов virtio.</div>
<div>В таком случае команда запуска нашего виртуального сервера будет такой :</div>
<div>kvm -m 1000 -drive file=/IMG/freebsd.img if=virtio -net nic,macaddr=DE:AD:BE:EF:FB:19 -net tap -vnc :1 &amp;</div>
<div>Замерить скорости работы внутри FreeBSD можно следующей командой :</div>
<div>diskinfo -c /dev/ad0s1a</div>
<div>Подобная ей команда, но для LINUX</div>
<div>hdparm -tT /dev/md0</div>
<div></div>
<div>Все.</div>
<div>Остались вопросы задавайте – опишу подробнее что необходимо.</div>
<div>Удачи <img src="https://server-kiev.com/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /></div>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/virtualizaciya-kvm-ustanovka-freebsd-8-2-na-linux-debian-6-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Следим за здоровьем жестких дисков. SMART в Linux/FreeBSD</title>
		<link>https://server-kiev.com/2013/08/sledim-za-zdorovem-zhestkikh-diskov-smart-v-l/</link>
		<comments>https://server-kiev.com/2013/08/sledim-za-zdorovem-zhestkikh-diskov-smart-v-l/#comments</comments>
		<pubDate>Fri, 16 Aug 2013 21:04:42 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[freebsd]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=41</guid>
		<description><![CDATA[Короткая запись на тему – как присматривать за здоровьем жестких дисков при помощи smartcl. Установка : поиск #/pkgsrc&#62;./pkglocate smartctl sysutils/smartmontools/DESCR:The smartmontools package contains two utility programs (smartctl установка #/pkgsrc/sysutils/smartmontools&#62;make install clean Просмотреть все данные через smartctl  диски /dev/wd0d ; /dev/wd1d ( в Linux или FreeBSD – только названия устройств будут другие .) smartctl -a /dev/wd0d &#124; <a href="https://server-kiev.com/2013/08/sledim-za-zdorovem-zhestkikh-diskov-smart-v-l/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>Короткая запись на тему – как присматривать за здоровьем жестких дисков при помощи smartcl.<span id="more-41"></span></p>
<p>Установка :</p>
<p>поиск</p>
<div id="_mcePaste"><strong>#/pkgsrc&gt;./pkglocate smartctl</strong></div>
<div id="_mcePaste"><strong>sysutils/smartmontools/DESCR:The smartmontools package contains two utility programs (smartctl</strong></div>
<div></div>
<div>установка</div>
<div></div>
<div><strong>#/pkgsrc/sysutils/smartmontools&gt;make install clean</strong></div>
<div></div>
<div>Просмотреть все данные через smartctl  диски /dev/wd0d ; /dev/wd1d ( в Linux или FreeBSD – только названия устройств будут другие .)</div>
<div></div>
<div><strong>smartctl -a /dev/wd0d | less</strong></div>
<div></div>
<div>перед вами будет полный перечень информации SMART c указанного устройства.</div>
<div></div>
<div>Обратите внимание на информацию которая описана тут !</div>
<div><strong>SMART Error Log</strong></div>
<div></div>
<div>Короткий перечень информации о вашем жестком диске можно вызвать так</div>
<div>
<div>Пример :</div>
<div><strong>smartctl -i /dev/wd0d</strong></div>
<div><strong> </strong></div>
<div><strong>smartctl 5.40 2010-10-16 r3189 [x86_64&#8212;netbsd] (local build)</strong></div>
<div><strong>Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net</strong></div>
<div><strong> </strong></div>
<div><strong>=== START OF INFORMATION SECTION ===</strong></div>
<div><strong>Device Model:     WDC WD5003ABYX-01WERA0</strong></div>
<div><strong>Serial Number:    WD-WMAYP0570586</strong></div>
<div><strong>Firmware Version: 01.01S01</strong></div>
<div><strong>User Capacity:    500,107,862,016 bytes</strong></div>
<div><strong>Device is:        Not in smartctl database [for details use: -P showall]</strong></div>
<div><strong>ATA Version is:   8</strong></div>
<div><strong>ATA Standard is:  Exact ATA specification draft version not indicated</strong></div>
<div><strong>Local Time is:    Wed Oct 26 15:02:12 2011 EEST</strong></div>
<div><strong>SMART support is: Available – device has SMART capability.</strong></div>
<div><strong>SMART support is: Enabled</strong></div>
<div></div>
</div>
<div><strong>smartctl -x /dev/wd0d | less</strong></div>
<div></div>
<div>Выдаст не только SMART информацию – но все прочую которую сможет получить.</div>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/sledim-za-zdorovem-zhestkikh-diskov-smart-v-l/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Синхронизация времени в Unix</title>
		<link>https://server-kiev.com/2013/08/sinkhronizaciya-vremeni-v-unix/</link>
		<comments>https://server-kiev.com/2013/08/sinkhronizaciya-vremeni-v-unix/#comments</comments>
		<pubDate>Fri, 16 Aug 2013 21:01:04 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[freebsd]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=38</guid>
		<description><![CDATA[Короткая заметка о том как настроить отображение правильного времени в Unix подобных системах, и наладить его синхронизация со специальными серверами точного времени. Коротко не разжевывая – по делу. Мы не рассматриваем так называемое аппаратное время (BIOS) а настраиваем его программно. Сначала Linux пример, ниже netbsd и в конце freebsd настройка ntp Пример Debian 6. смотреть <a href="https://server-kiev.com/2013/08/sinkhronizaciya-vremeni-v-unix/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>Короткая заметка о том как настроить отображение правильного времени в Unix подобных системах, и наладить его синхронизация со специальными серверами точного времени. Коротко не разжевывая – по делу. Мы не рассматриваем так называемое аппаратное время (BIOS) а настраиваем его программно.<span id="more-38"></span></p>
<p>Сначала Linux пример, ниже netbsd и в конце freebsd настройка ntp</p>
<p>Пример Debian 6.<br />
смотреть текущее время<br />
date<br />
Настраиваем правильную временную зону –<br />
тут находим необходимую<br />
/usr/share/zoneinfo/<br />
делам на нее ссылку &#8212;<br />
Пример :<br />
ln -sf /usr/share/zoneinfo/Europe/Kiev /etc/localtime<br />
Далее настраиваем синхронизацию :</p>
<p>установим<br />
apt-get install ntpdate</p>
<p>запустим ( пример )<br />
ntpdate 194.186.254.22 195.2.64.5</p>
<p>На постоянной основы это можно сделать двумя способами :<br />
способ раз –<br />
Настроить команду<br />
ntpdate 194.186.254.22 195.2.64.5<br />
на исполнение в cron<br />
способ два –<br />
устанавливаем сервер ntp server ( он будет при каждой загрузке синхронизироваться ).</p>
<p>apt-get install ntp</p>
<p>настройка сервера производится через редактирование /etc/ntp.conf<br />
но default настройки рабочие их и оставим.</p>
<p>На NetBSD.</p>
<p>ln -sf /usr/share/zoneinfo/Europe/Kiev /etc/localtime</p>
<p>На NetBSD ntp клиент и сервер установлены вместе с системой.</p>
<p>синхронизируем время.<br />
ntpdate -b ntp1.inrim.it ntp2.inrim.it</p>
<p>Для того чтобы сервер делал это с перезагрузкой – добавим в rc.conf</p>
<p>ntpdate=YES ntpdate_hosts=”ntp1.inrim.it”</p>
<p>На FreeBSD :</p>
<p>команда идентичная другим Unix собратьям для установки временной зоны :</p>
<p>ln -sf /usr/share/zoneinfo/Europe/Kiev /etc/localtime</p>
<p>синхронизируем</p>
<p>ntpdate -b ntp1.inrim.it ntp2.inrim.it</p>
<p>Добавляем чтобы поднять сервер</p>
<p>ntpdate_enable=”YES” в файл /etc/rc.conf.</p>
<p>файл настройки /etc/ntp.conf – дефалтный вполне рабочий.</p>
<p>Удачи.</p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/sinkhronizaciya-vremeni-v-unix/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ядро FreeBSD 9 &#8212; удаляем все лишнее</title>
		<link>https://server-kiev.com/2013/08/freebsd9-kernel/</link>
		<comments>https://server-kiev.com/2013/08/freebsd9-kernel/#comments</comments>
		<pubDate>Fri, 16 Aug 2013 20:56:59 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[freebsd]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=35</guid>
		<description><![CDATA[Статья о том что можно выбросить из GENERIC ядра FreeBSD 9.0 в случае если вам нужен сервер NAT. ( т.е задача машинки выводить серую сеть LAN в WAN под белым маршрутизируемым адресом.) Хотя это также справедливо и для других видов серверов под FreeBSD c небольшими изменениями. Вообщем все что из ядра выбрасываю описываю почему поэтому <a href="https://server-kiev.com/2013/08/freebsd9-kernel/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>Статья о том что можно выбросить из GENERIC ядра FreeBSD 9.0 в случае если вам нужен сервер NAT. ( т.е задача машинки выводить серую сеть LAN в WAN под белым маршрутизируемым адресом.)</p>
<p>Хотя это также справедливо и для других видов серверов под FreeBSD c небольшими изменениями. Вообщем все что из ядра выбрасываю описываю почему поэтому можно использовать как информацию к размышлению при сборке собственного ядра. В самом конце будет опубликовано то что у меня получилось одним куском.<span id="more-35"></span></p>
<p>Поехали :</p>
<p>Убираем поддержку IPV6 из ядра ( не вижу в ней необходимости в текущих реалиях и на несколько ближайших лет ) тем более что задача данного сервера таки NAT.</p>
<p>Также  SCTP опция работает только с IPV6.</p>
<p><strong>#options        INET6                   # IPv6 communications protocols</strong></p>
<p><strong>#options        SCTP                    # Stream Control Transmission Protocol</strong></p>
<p>Отключаем опцию debug  ( не планируем использовать gdb для отладки .)</p>
<p><strong>#makeoptions    DEBUG=-g</strong></p>
<div>Не планирую монтировать часть ОЗУ ( или виртуальные диски ) как root устройство.</div>
<div><strong>#options        MD_ROOT</strong></div>
<p>Эта файловая система нам скорее всего не понадобится :</p>
<p><strong>#options        MSDOSFS                 # MSDOS Filesystem</strong></p>
<p>SCSI устройств нету – опрашивать нечего <img src="https://server-kiev.com/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /></p>
<p><strong>#options        SCSI_DELAY=5000         # Delay (in ms) before probing SCSI</strong></p>
<p>Трассировка процессов не понадобится.</p>
<p><strong>#options        KTRACE                  # ktrace(1) support</strong></p>
<p><strong>#options        STACK                   # stack(9) support</strong></p>
<p>AUDIT на этой машинке не понадобится убираем</p>
<p><strong>#options        AUDIT</strong></p>
<p>Далее все зависит от того что именно у вас за железо,  у меня получилось так :</p>
<p>не забывайте – всегда можно глянуть dmesg на предмет ваших устройств и исходя из них удалить не нужное.</p>
<p><strong># Floppy drives</strong></p>
<p><strong>#device         fdc</strong></p>
<p>Полностью комментируем # SCSI Controllers</p>
<p>В ATA контроллерах я убрал :</p>
<p># ATA controllers</p>
<p><strong>#device         mvs             # Marvell 88SX50XX/88SX60XX/88SX70XX/SoC SATA</strong></p>
<p><strong>#device         siis            # SiliconImage SiI3124/SiI3132/SiI3531 SATA</strong></p>
<div>В # ATA/SCSI peripherals удаляем  :</div>
<div>сменных SCSI у нас не будет</div>
<div>
<div><strong>#device         ch              # SCSI media changers</strong></div>
</div>
<div>магнитных лент тоже</div>
<div><strong>#device          sa              # Sequential Access (tape etc)</strong></div>
<div><strong> </strong></div>
<div>
<div>отключаем прямой доступ к устройствам SCSI</div>
<div><strong>#device pass</strong></div>
<div>отключаем службу поддержки SCSI окружения</div>
<div><strong>#device ses</strong></div>
</div>
<div>Все что тут  <strong>#RAID controllers interfaced to the SCSI subsystem</strong></div>
<div>и тут  <strong># RAID controllers</strong></div>
<div>отключаем.</div>
<div>Далее, у меня нет AGP шины  :</div>
<div>
<div><strong>#device         agp             # support several AGP chipsets</strong></div>
</div>
<div>Тут тоже все подлежит комментированию</div>
<div>
<div><strong># PCCARD (PCMCIA) support</strong></div>
<div><strong># PCMCIA and cardbus bridge support</strong></div>
</div>
<div>COM порт и serial тоже тушим :</div>
<div>все что здесь</div>
<div><strong># Serial (COM) ports</strong></div>
<div><strong># Parallel port</strong></div>
<div>В <strong># PCI Ethernet NICs</strong>. советую оставить только те карты которые стоят сейчас и те которые возможно придут им на замену в случае выхода из строя первых остальное отключаем.</div>
<div>и отключаем <strong># Wireless NIC cards</strong></div>
<div>Главное оставить это ! device          miibus          # MII bus support</div>
<div>и это !  device          ed              # NE[12]000, SMC Ultra, 3c503, DS8390 cards</div>
<div>Из псевдоустройств я выбросил</div>
<div><strong># Pseudo devices</strong></div>
<div>
<div><strong>#device         md              # Memory “disks”</strong></div>
</div>
<div>
<div><strong>#device         faith           # IPv6-to-IPv4 relaying (translation)</strong></div>
<div><strong>#device         firmware        # firmware assist module</strong></div>
</div>
<div>Также удаляем полностью :</div>
<div><strong># USB support</strong></div>
<div><strong># FireWire support</strong></div>
<div><strong># Sound support</strong></div>
<div>
<p>&nbsp;</p>
<div><strong>Дополнено realb :</strong></div>
<div>
<div>Я бы убрал еще вот это:</div>
<div>options         NFSCL                   # New Network Filesystem Client</div>
<div>options         NFSD                    # New Network Filesystem Server</div>
<div>options         NFSLOCKD                # Network Lock Manager</div>
<div>options         NFS_ROOT                # NFS usable as /, requires NFSCL</div>
<div>device          psm             # PS/2 mouse</div>
<div>device          kbdmux          # keyboard multiplexer</div>
<div>Если только вы не собираетесь использовать на этой машине NFS, мышку и более чем одну клавиатуру :)Снова перечитывая config, в борьбе за байты памяти можно убрать:<br />
<strong>options CD9660 # ISO 9660 Filesystem</strong><br />
как утверждается в руководстве FreeBSD, глава 8, Настройка ядра FreeBSD<br />
необходимый модуль будет загружен автоматически при первом монтировании компакт-диска с данными</p>
</div>
</div>
</div>
<div>Получился такой файл :</div>
<div>
<div>#</div>
<div># GENERIC — Generic kernel configuration file for FreeBSD/amd64</div>
<div>#</div>
<div># For more information on this file, please read the config(5) manual page,</div>
<div># and/or the handbook section on Kernel Configuration Files:</div>
<div>#</div>
<div>#    http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-conf                                              ig.html</div>
<div>#</div>
<div># The handbook is also available locally in /usr/share/doc/handbook</div>
<div># if you’ve installed the doc distribution, otherwise always see the</div>
<div># FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the</div>
<div># latest information.</div>
<div>#</div>
<div># An exhaustive list of options and more detailed explanations of the</div>
<div># device lines is also present in the ../../conf/NOTES and NOTES files.</div>
<div># If you are in doubt as to the purpose or necessity of a line, check first</div>
<div># in NOTES.</div>
<div>#</div>
<div># $FreeBSD: release/9.0.0/sys/amd64/conf/GENERIC 227305 2011-11-07 13:40:54Z mar                                              ius $</div>
<div>cpu             HAMMER</div>
<div>ident           ALAN</div>
<div>#makeoptions    DEBUG=-g                # Build kernel with gdb(1) debug symbols</div>
<div>options         SCHED_ULE               # ULE scheduler</div>
<div>options         PREEMPTION              # Enable kernel thread preemption</div>
<div>options         INET                    # InterNETworking</div>
<div>#options        INET6                   # IPv6 communications protocols</div>
<div>#options        SCTP                    # Stream Control Transmission Protocol</div>
<div>options         FFS                     # Berkeley Fast Filesystem</div>
<div>options         SOFTUPDATES             # Enable FFS soft updates support</div>
<div>options         UFS_ACL                 # Support for access control lists</div>
<div>options         UFS_DIRHASH             # Improve performance on big directories</div>
<div>options         UFS_GJOURNAL            # Enable gjournal-based UFS journaling</div>
<div>#options        MD_ROOT                 # MD is a potential root device</div>
<div>options         NFSCL                   # New Network Filesystem Client</div>
<div>options         NFSD                    # New Network Filesystem Server</div>
<div>options         NFSLOCKD                # Network Lock Manager</div>
<div>options         NFS_ROOT                # NFS usable as /, requires NFSCL</div>
<div>#options        MSDOSFS                 # MSDOS Filesystem</div>
<div>options         CD9660                  # ISO 9660 Filesystem</div>
<div>options         PROCFS                  # Process filesystem (requires PSEUDOFS)</div>
<div>options         PSEUDOFS                # Pseudo-filesystem framework</div>
<div>options         GEOM_PART_GPT           # GUID Partition Tables.</div>
<div>options         GEOM_LABEL              # Provides labelization</div>
<div>options         COMPAT_FREEBSD32        # Compatible with i386 binaries</div>
<div>options         COMPAT_FREEBSD4         # Compatible with FreeBSD4</div>
<div>options         COMPAT_FREEBSD5         # Compatible with FreeBSD5</div>
<div>options         COMPAT_FREEBSD6         # Compatible with FreeBSD6</div>
<div>options         COMPAT_FREEBSD7         # Compatible with FreeBSD7</div>
<div>#options        SCSI_DELAY=5000         # Delay (in ms) before probing SCSI</div>
<div>#options        KTRACE                  # ktrace(1) support</div>
<div>#options        STACK                   # stack(9) support</div>
<div>options         SYSVSHM                 # SYSV-style shared memory</div>
<div>options         SYSVMSG                 # SYSV-style message queues</div>
<div>options         SYSVSEM                 # SYSV-style semaphores</div>
<div>options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extension                                              s</div>
<div>options         PRINTF_BUFR_SIZE=128    # Prevent printf output being interspers                                              ed.</div>
<div>options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev</div>
<div>options         HWPMC_HOOKS             # Necessary kernel hooks for hwpmc(4)</div>
<div>#options        AUDIT                   # Security event auditing</div>
<div>options         MAC                     # TrustedBSD MAC Framework</div>
<div>#options        KDTRACE_FRAME           # Ensure frames are compiled in</div>
<div>#options        KDTRACE_HOOKS           # Kernel DTrace hooks</div>
<div>options         INCLUDE_CONFIG_FILE     # Include this file in kernel</div>
<div>options         KDB                     # Kernel debugger related code</div>
<div>options         KDB_TRACE               # Print a stack trace for a panic</div>
<div># Make an SMP-capable kernel by default</div>
<div>options         SMP                     # Symmetric MultiProcessor Kernel</div>
<div># CPU frequency control</div>
<div>device          cpufreq</div>
<div>#alan-nat-ipfw</div>
<div>options IPFIREWALL</div>
<div>options IPFIREWALL_DEFAULT_TO_ACCEPT</div>
<div>options IPFIREWALL_FORWARD</div>
<div>options IPFIREWALL_VERBOSE</div>
<div>options IPFIREWALL_VERBOSE_LIMIT=100</div>
<div>options IPFIREWALL_NAT</div>
<div>options LIBALIAS</div>
<div>options ROUTETABLES=2</div>
<div>options DUMMYNET</div>
<div>options HZ=”1000″</div>
<div># Bus support.</div>
<div>device          acpi</div>
<div>device          pci</div>
<div># Floppy drives</div>
<div>#device         fdc</div>
<div># ATA controllers</div>
<div>device          ahci            # AHCI-compatible SATA controllers</div>
<div>device          ata             # Legacy ATA/SATA controllers</div>
<div>options         ATA_CAM         # Handle legacy controllers with CAM</div>
<div>options         ATA_STATIC_ID   # Static device numbering</div>
<div>#device         mvs             # Marvell 88SX50XX/88SX60XX/88SX70XX/SoC SATA</div>
<div>#device         siis            # SiliconImage SiI3124/SiI3132/SiI3531 SATA</div>
<div># SCSI Controllers</div>
<div>#device         ahc             # AHA2940 and onboard AIC7xxx devices</div>
<div>#options        AHC_REG_PRETTY_PRINT    # Print register bitfields in debug</div>
<div># output.  Adds ~128k to driver.</div>
<div>#device         ahd             # AHA39320/29320 and onboard AIC79xx devices</div>
<div>#options        AHD_REG_PRETTY_PRINT    # Print register bitfields in debug</div>
<div># output.  Adds ~215k to driver.</div>
<div>#device         esp             # AMD Am53C974 (Tekram DC-390(T))</div>
<div>#device         hptiop          # Highpoint RocketRaid 3xxx series</div>
<div>#device         isp             # Qlogic family</div>
<div>#device         ispfw           # Firmware for QLogic HBAs- normally a module</div>
<div>#device         mpt             # LSI-Logic MPT-Fusion</div>
<div>#device         mps             # LSI-Logic MPT-Fusion 2</div>
<div>#device         ncr             # NCR/Symbios Logic</div>
<div>#device         sym             # NCR/Symbios Logic (newer chipsets + those of `                                              ncr’)</div>
<div>#device         trm             # Tekram DC395U/UW/F DC315U adapters</div>
<div>#device         adv             # Advansys SCSI adapters</div>
<div>#device         adw             # Advansys wide SCSI adapters</div>
<div>#device         aic             # Adaptec 15[012]x SCSI adapters, AIC-6[23]60.</div>
<div>#device         bt              # Buslogic/Mylex MultiMaster SCSI adapters</div>
<div># ATA/SCSI peripherals</div>
<div>device          scbus           # SCSI bus (required for ATA/SCSI)</div>
<div>#device         ch              # SCSI media changers</div>
<div>device          da              # Direct Access (disks)</div>
<div>#device         sa              # Sequential Access (tape etc)</div>
<div>#device         cd              # CD</div>
<div>#device         pass            # Passthrough device (direct ATA/SCSI access)</div>
<div>#device         ses             # SCSI Environmental Services (and SAF-TE)</div>
<div># RAID controllers interfaced to the SCSI subsystem</div>
<div>#device         amr             # AMI MegaRAID</div>
<div>#device         arcmsr          # Areca SATA II RAID</div>
<div>#XXX it is not 64-bit clean, -scottl</div>
<div>#device         asr             # DPT SmartRAID V, VI and Adaptec SCSI RAID</div>
<div>#device         ciss            # Compaq Smart RAID 5*</div>
<div>#device         dpt             # DPT Smartcache III, IV – See NOTES for options</div>
<div>#device         hptmv           # Highpoint RocketRAID 182x</div>
<div>#device         hptrr           # Highpoint RocketRAID 17xx, 22xx, 23xx, 25xx</div>
<div>#device         iir             # Intel Integrated RAID</div>
<div>#device         ips             # IBM (Adaptec) ServeRAID</div>
<div>#device         mly             # Mylex AcceleRAID/eXtremeRAID</div>
<div>#device         twa             # 3ware 9000 series PATA/SATA RAID</div>
<div># RAID controllers</div>
<div>#device         aac             # Adaptec FSA RAID</div>
<div>#device         aacp            # SCSI passthrough for aac (requires CAM)</div>
<div>#device         ida             # Compaq Smart RAID</div>
<div>#device         mfi             # LSI MegaRAID SAS</div>
<div>#device         mlx             # Mylex DAC960 family</div>
<div>#XXX pointer/int warnings</div>
<div>#device         pst             # Promise Supertrak SX6000</div>
<div>#device         twe             # 3ware ATA RAID</div>
<div>#device         tws             # LSI 3ware 9750 SATA+SAS 6Gb/s RAID controller</div>
<div># atkbdc0 controls both the keyboard and the PS/2 mouse</div>
<div>device          atkbdc          # AT keyboard controller</div>
<div>device          atkbd           # AT keyboard</div>
<div>device          psm             # PS/2 mouse</div>
<div>device          kbdmux          # keyboard multiplexer</div>
<div>device          vga             # VGA video card driver</div>
<div>device          splash          # Splash screen and screen saver support</div>
<div># syscons is the default console driver, resembling an SCO console</div>
<div>device          sc</div>
<div>options         SC_PIXEL_MODE   # add support for the raster text mode</div>
<div>#device         agp             # support several AGP chipsets</div>
<div># PCCARD (PCMCIA) support</div>
<div># PCMCIA and cardbus bridge support</div>
<div>#device         cbb             # cardbus (yenta) bridge</div>
<div>#device         pccard          # PC Card (16-bit) bus</div>
<div>#device         cardbus         # CardBus (32-bit) bus</div>
<div># Serial (COM) ports</div>
<div>#device         uart            # Generic UART driver</div>
<div># Parallel port</div>
<div>#device         ppc</div>
<div>#device         ppbus           # Parallel port bus (required)</div>
<div>#device         lpt             # Printer</div>
<div>#device         plip            # TCP/IP over parallel</div>
<div>#device         ppi             # Parallel port interface device</div>
<div>#device         vpo             # Requires scbus and da</div>
<div>#device         puc             # Multi I/O cards and multi-channel UARTs</div>
<div># PCI Ethernet NICs.</div>
<div>#device         bxe             # Broadcom BCM57710/BCM57711/BCM57711E 10Gb Ethe                                              rnet</div>
<div>#device         de              # DEC/Intel DC21×4x (“Tulip”)</div>
<div>device          em              # Intel PRO/1000 Gigabit Ethernet Family</div>
<div>device          igb             # Intel PRO/1000 PCIE Server Gigabit Family</div>
<div>#device         ixgbe           # Intel PRO/10GbE PCIE Ethernet Family</div>
<div>#device         le              # AMD Am7900 LANCE and Am79C9xx PCnet</div>
<div>#device         ti              # Alteon Networks Tigon I/II gigabit Ethernet</div>
<div>#device         txp             # 3Com 3cR990 (“Typhoon”)</div>
<div>#device         vx              # 3Com 3c590, 3c595 (“Vortex”)</div>
<div># PCI Ethernet NICs that use the common MII bus controller code.</div>
<div># NOTE: Be sure to keep the ‘device miibus’ line in order to use these NICs!</div>
<div>device          miibus          # MII bus support</div>
<div>#device         ae              # Attansic/Atheros L2 FastEthernet</div>
<div>#device         age             # Attansic/Atheros L1 Gigabit Ethernet</div>
<div>#device         alc             # Atheros AR8131/AR8132 Ethernet</div>
<div>#device         ale             # Atheros AR8121/AR8113/AR8114 Ethernet</div>
<div>device          bce             # Broadcom BCM5706/BCM5708 Gigabit Ethernet</div>
<div>device          bfe             # Broadcom BCM440x 10/100 Ethernet</div>
<div>device          bge             # Broadcom BCM570xx Gigabit Ethernet</div>
<div>#device         dc              # DEC/Intel 21143 and various workalikes</div>
<div>#device         et              # Agere ET1310 10/100/Gigabit Ethernet</div>
<div>device          fxp             # Intel EtherExpress PRO/100B (82557, 82558)</div>
<div>#device         jme             # JMicron JMC250 Gigabit/JMC260 Fast Ethernet</div>
<div>#device         lge             # Level 1 LXT1001 gigabit Ethernet</div>
<div>#device         msk             # Marvell/SysKonnect Yukon II Gigabit Ethernet</div>
<div>#device         nfe             # nVidia nForce MCP on-board Ethernet</div>
<div>#device         nge             # NatSemi DP83820 gigabit Ethernet</div>
<div>#device         nve             # nVidia nForce MCP on-board Ethernet Networking</div>
<div>#device         pcn             # AMD Am79C97x PCI 10/100 (precedence over ‘le’)</div>
<div>device          re              # RealTek 8139C+/8169/8169S/8110S</div>
<div>device          rl              # RealTek 8129/8139</div>
<div>#device         sf              # Adaptec AIC-6915 (“Starfire”)</div>
<div>#device         sge             # Silicon Integrated Systems SiS190/191</div>
<div>#device         sis             # Silicon Integrated Systems SiS 900/SiS 7016</div>
<div>#device         sk              # SysKonnect SK-984x &amp; SK-982x gigabit Ethernet</div>
<div>#device         ste             # Sundance ST201 (D-Link DFE-550TX)</div>
<div>#device         stge            # Sundance/Tamarack TC9021 gigabit Ethernet</div>
<div>#device         tl              # Texas Instruments ThunderLAN</div>
<div>#device         tx              # SMC EtherPower II (83c170 “EPIC”)</div>
<div>#device         vge             # VIA VT612x gigabit Ethernet</div>
<div>#device         vr              # VIA Rhine, Rhine II</div>
<div>#device         wb              # Winbond W89C840F</div>
<div>device          xl              # 3Com 3c90x (“Boomerang”, “Cyclone”)</div>
<div># ISA Ethernet NICs.  pccard NICs included.</div>
<div>#device         cs              # Crystal Semiconductor CS89×0 NIC</div>
<div># ‘device ed’ requires ‘device miibus’</div>
<div>device          ed              # NE[12]000, SMC Ultra, 3c503, DS8390 cards</div>
<div>#device         ex              # Intel EtherExpress Pro/10 and Pro/10+</div>
<div>#device         ep              # Etherlink III based cards</div>
<div>#device         fe              # Fujitsu MB8696x based cards</div>
<div>#device         sn              # SMC’s 9000 series of Ethernet chips</div>
<div>#device         xe              # Xircom pccard Ethernet</div>
<div># Wireless NIC cards</div>
<div>#device         wlan            # 802.11 support</div>
<div>#options        IEEE80211_DEBUG # enable debug msgs</div>
<div>#options        IEEE80211_AMPDU_AGE # age frames in AMPDU reorder q’s</div>
<div>#options        IEEE80211_SUPPORT_MESH  # enable 802.11s draft support</div>
<div>#device         wlan_wep        # 802.11 WEP support</div>
<div>#device         wlan_ccmp       # 802.11 CCMP support</div>
<div>#device         wlan_tkip       # 802.11 TKIP support</div>
<div>#device         wlan_amrr       # AMRR transmit rate control algorithm</div>
<div>#device         an              # Aironet 4500/4800 802.11 wireless NICs.</div>
<div>#device         ath             # Atheros NIC’s</div>
<div>#device         ath_pci         # Atheros pci/cardbus glue</div>
<div>#device         ath_hal         # pci/cardbus chip support</div>
<div>#options        AH_SUPPORT_AR5416       # enable AR5416 tx/rx descriptors</div>
<div>#device         ath_rate_sample # SampleRate tx rate control for ath</div>
<div>#device         bwi             # Broadcom BCM430x/BCM431x wireless NICs.</div>
<div>#device         bwn             # Broadcom BCM43xx wireless NICs.</div>
<div>#device         ipw             # Intel 2100 wireless NICs.</div>
<div>#device         iwi             # Intel 2200BG/2225BG/2915ABG wireless NICs.</div>
<div>#device         iwn             # Intel 4965/1000/5000/6000 wireless NICs.</div>
<div>#device         malo            # Marvell Libertas wireless NICs.</div>
<div>#device         mwl             # Marvell 88W8363 802.11n wireless NICs.</div>
<div>#device         ral             # Ralink Technology RT2500 wireless NICs.</div>
<div>#device         wi              # WaveLAN/Intersil/Symbol 802.11 wireless NICs.</div>
<div>#device         wpi             # Intel 3945ABG wireless NICs.</div>
<div># Pseudo devices.</div>
<div>device          loop            # Network loopback</div>
<div>device          random          # Entropy device</div>
<div>device          ether           # Ethernet support</div>
<div>device          vlan            # 802.1Q VLAN support</div>
<div>device          tun             # Packet tunnel.</div>
<div>device          pty             # BSD-style compatibility pseudo ttys</div>
<div>#device         md              # Memory “disks”</div>
<div>device          gif             # IPv6 and IPv4 tunneling</div>
<div>#device         faith           # IPv6-to-IPv4 relaying (translation)</div>
<div>#device         firmware        # firmware assist module</div>
<div># The `bpf’ device enables the Berkeley Packet Filter.</div>
<div># Be aware of the administrative consequences of enabling this!</div>
<div># Note that ‘bpf’ is required for DHCP.</div>
<div>device          bpf             # Berkeley packet filter</div>
<div># USB support</div>
<div>#options        USB_DEBUG       # enable debug msgs</div>
<div>#device         uhci            # UHCI PCI-&gt;USB interface</div>
<div>#device         ohci            # OHCI PCI-&gt;USB interface</div>
<div>#device         ehci            # EHCI PCI-&gt;USB interface (USB 2.0)</div>
<div>#device         xhci            # XHCI PCI-&gt;USB interface (USB 3.0)</div>
<div>#device         usb             # USB Bus (required)</div>
<div>#device         udbp            # USB Double Bulk Pipe devices (needs netgraph)</div>
<div>#device         uhid            # “Human Interface Devices”</div>
<div>#device         ukbd            # Keyboard</div>
<div>#device         ulpt            # Printer</div>
<div>#device         umass           # Disks/Mass storage – Requires scbus and da</div>
<div>#device         ums             # Mouse</div>
<div>#device         urio            # Diamond Rio 500 MP3 player</div>
<div># USB Serial devices</div>
<div>#device         u3g             # USB-based 3G modems (Option, Huawei, Sierra)</div>
<div>#device         uark            # Technologies ARK3116 based serial adapters</div>
<div>#device         ubsa            # Belkin F5U103 and compatible serial adapters</div>
<div>#device         uftdi           # For FTDI usb serial adapters</div>
<div>#device         uipaq           # Some WinCE based devices</div>
<div>#device         uplcom          # Prolific PL-2303 serial adapters</div>
<div>#device         uslcom          # SI Labs CP2101/CP2102 serial adapters</div>
<div>#device         uvisor          # Visor and Palm devices</div>
<div>#device         uvscom          # USB serial support for DDI pocket’s PHS</div>
<div># USB Ethernet, requires miibus</div>
<div>#device         aue             # ADMtek USB Ethernet</div>
<div>#device         axe             # ASIX Electronics USB Ethernet</div>
<div>#device         cdce            # Generic USB over Ethernet</div>
<div>#device         cue             # CATC USB Ethernet</div>
<div>#device         kue             # Kawasaki LSI USB Ethernet</div>
<div>#device         rue             # RealTek RTL8150 USB Ethernet</div>
<div>#device         udav            # Davicom DM9601E USB</div>
<div># USB Wireless</div>
<div>#device         rum             # Ralink Technology RT2501USB wireless NICs</div>
<div>#device         run             # Ralink Technology RT2700/RT2800/RT3000 NICs.</div>
<div>#device         uath            # Atheros AR5523 wireless NICs</div>
<div>#device         upgt            # Conexant/Intersil PrismGT wireless NICs.</div>
<div>#device         ural            # Ralink Technology RT2500USB wireless NICs</div>
<div>#device         urtw            # Realtek RTL8187B/L wireless NICs</div>
<div>#device         zyd             # ZyDAS zd1211/zd1211b wireless NICs</div>
<div># FireWire support</div>
<div>#device         firewire        # FireWire bus code</div>
<div># sbp(4) works for some systems but causes boot failure on others</div>
<div>#device         sbp             # SCSI over FireWire (Requires scbus and da)</div>
<div>#device         fwe             # Ethernet over FireWire (non-standard!)</div>
<div>#device         fwip            # IP over FireWire (RFC 2734,3146)</div>
<div>#device         dcons           # Dumb console driver</div>
<div>#device         dcons_crom      # Configuration ROM for dcons</div>
<div># Sound support</div>
<div>#device         sound           # Generic sound driver (required)</div>
<div>#device         snd_es137x      # Ensoniq AudioPCI ES137x</div>
<div>#device         snd_hda         # Intel High Definition Audio</div>
<div>#device         snd_ich         # Intel, NVidia and other ICH AC’97 Audio</div>
<div>#device         snd_uaudio      # USB Audio</div>
<div>#device         snd_via8233     # VIA VT8233x Audio</div>
<div><strong> </strong></div>
</div>
<div>Рад комментариям <img src="https://server-kiev.com/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /></div>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/freebsd9-kernel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD и mount_smbfs</title>
		<link>https://server-kiev.com/2013/08/freebsd-i-mount_smbfs/</link>
		<comments>https://server-kiev.com/2013/08/freebsd-i-mount_smbfs/#comments</comments>
		<pubDate>Fri, 16 Aug 2013 20:55:04 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[freebsd]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=33</guid>
		<description><![CDATA[Монтирование общего ресурса (smb) во FreeBSD без запроса пароля: mount_smbfs -N -I &#60;ip_адрес_сервера&#62; //&#60;имя_пользователя&#62;@&#60;имя_сервера&#62;/&#60;общий ресурс&#62; &#60;каталог_монтирования&#62; N – указывает, что учетные данные берутся из файла настроек I  – позволяет задать адрес сервера, без разрешения по имени Соответсвенно задать учетные данные можно в /etc/nsmb.conf. Либо в пользовательском каталоге в ~/.nsmbrc. Формат простой: [ИМЯ СЕРВЕРА:ПОЛЬЗОВАТЕЛЬ] password=пароль Самые главные <a href="https://server-kiev.com/2013/08/freebsd-i-mount_smbfs/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>Монтирование общего ресурса (smb) во FreeBSD без запроса пароля:</p>
<p>mount_smbfs -N -I &lt;ip_адрес_сервера&gt; //&lt;имя_пользователя&gt;@&lt;имя_сервера&gt;/&lt;общий ресурс&gt; &lt;каталог_монтирования&gt;</p>
<p>N – указывает, что учетные данные берутся из файла настроек</p>
<p>I  – позволяет задать адрес сервера, без разрешения по имени</p>
<p>Соответсвенно задать учетные данные можно в /etc/nsmb.conf. Либо в пользовательском каталоге в ~/.nsmbrc.</p>
<p>Формат простой:</p>
<p>[ИМЯ СЕРВЕРА:ПОЛЬЗОВАТЕЛЬ]<br />
password=пароль</p>
<p>Самые главные грабли – имя пользователя должно быть задано прописными буквами. В противном случае, например, если написать backup, вместо BACKUP, можно долго и упорно пытаться понять, почему же выдается ошибка авторизации (вида – mount_smbfs: unable to open connection: syserr = Authentication error  ).</p>
<p>Детальное описание:</p>
<p><a href="http://www.freebsd.org/cgi/man.cgi?query=nsmb.conf&amp;apropos=0&amp;sektion=0&amp;manpath=FreeBSD+8.2-RELEASE&amp;arch=default&amp;format=html">http://www.freebsd.org/cgi/man.cgi?query=nsmb.conf&amp;apropos=0&amp;sektion=0&amp;manpath=FreeBSD+8.2-RELEASE&amp;arch=default&amp;format=html</a></p>
<p><a href="http://www.freebsd.org/cgi/man.cgi?query=mount_smbfs&amp;apropos=0&amp;sektion=0&amp;manpath=FreeBSD+8.2-RELEASE&amp;arch=default&amp;format=html">http://www.freebsd.org/cgi/man.cgi?query=mount_smbfs&amp;apropos=0&amp;sektion=0&amp;manpath=FreeBSD+8.2-RELEASE&amp;arch=default&amp;format=html</a></p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/freebsd-i-mount_smbfs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Compress your files faster with pbzip2</title>
		<link>https://server-kiev.com/2013/08/compress-your-files-faster-with-pbzip2/</link>
		<comments>https://server-kiev.com/2013/08/compress-your-files-faster-with-pbzip2/#comments</comments>
		<pubDate>Fri, 16 Aug 2013 20:53:55 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[freebsd]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=30</guid>
		<description><![CDATA[Everybody uses tgz (tar + gzip) to compress files. Some use bzip2 because it gives higher compress ratio per archived files. A faster solution is pbzip2 which make use of every core of your CPU, and/or every CPU of your system.If you benchmark a bzip2 archieving procees and in the mean time you use top -P <a href="https://server-kiev.com/2013/08/compress-your-files-faster-with-pbzip2/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>Everybody uses tgz (tar + gzip) to compress files. Some use bzip2 because it gives higher compress ratio per archived files.<br />
A faster solution is pbzip2 which make use of every core of your CPU, and/or every CPU of your system.<span id="more-30"></span>If you benchmark a bzip2 archieving procees and in the mean time you use top -P you will see that your system load will<br />
not pass over 1 even if you have multiple cores. That means bzip2 does not scale. Try the same archieving step with<br />
pbzip2 and you&#8217;ll see the difference in load and in time that will take to compress/decompress files.</p>
<p>pbzip2 -z file.iso # or &#8212;compress, it will archieve file.iso file<br />
pbzip2 -d file.tbz # or &#8212;decompress, it will unarchive file.tbz into file.iso</p>
<p><strong>If you want to use pbzip2 with tar ( instead of bzip2) you have the following choices:</strong><br />
1. create an alias from tar to tar &#8212;use-compress-prog=pbzip2<br />
alias tar tar &#8212;use-compress-prog=pbzip2</p>
<p>2. move bzip2 binary and create a symlink to pbzip2<br />
mv /usr/bin/bzip2 /usr/bin/bzip2.old<br />
ln -s /usr/local/bin/pbzip2 /usr/bin/bzip2</p>
<p>3. use pipe<br />
tar -cf &#8212; . | pbzip2 &gt; ../file.tbz</p>
<p>4. use &#8212;use-compress-prog parameter of tar (which will also pipe to pbzip2<br />
tar &#8212;use-compress-prog=pbzip2 -cf file.tbz .</p>
<p>There is also pigz &#8212; parallell gzip &#8212; multi thread gzip compression utility.</p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/compress-your-files-faster-with-pbzip2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Резервное копирование FreeBSD при помощи DUMP и RESTORE</title>
		<link>https://server-kiev.com/2013/08/rezervnoe-kopirovanie-freebsd-pri-pomoshhi-dump-i-re/</link>
		<comments>https://server-kiev.com/2013/08/rezervnoe-kopirovanie-freebsd-pri-pomoshhi-dump-i-re/#comments</comments>
		<pubDate>Fri, 16 Aug 2013 20:48:39 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[freebsd]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=28</guid>
		<description><![CDATA[Старая грустная шутка делит пользователей на тех, кто резервные копии еще не делает и тех, кто уже делает. Даже если вы сам себе администратор, то цените свое время и деньги, делайте резервные копии! Это не так сложно, как многие думают. Ваша система FreeBSD уже готова делать резервные копии ваших данных. Я рассмотрю самый простой вариант, <a href="https://server-kiev.com/2013/08/rezervnoe-kopirovanie-freebsd-pri-pomoshhi-dump-i-re/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>Старая грустная шутка делит пользователей на тех, кто резервные копии еще не делает и тех, кто уже делает. Даже если вы сам себе администратор, то цените свое время и деньги, делайте резервные копии! Это не так сложно, как многие думают. Ваша система FreeBSD уже готова делать резервные копии ваших данных. Я рассмотрю самый простой вариант, который позволит сберечь вам ваши данные, нервы и деньги (восстановление данных порой стоит очень дорого) в случае каких-либо сбоев в системе.<span id="more-28"></span></p>
<p>Моя дисковая система выглядит так</p>
<pre lang="bash">hotfreebsd# df -h
Filesystem            Size    Used   Avail Capacity  Mounted on
/dev/mirror/gm0s1a    1.9G    589M    1.2G    32%    /
devfs                 1.0K    1.0K      0B   100%    /dev
/dev/mirror/gm0s1d     19G    1.5G     16G     9%    /cache
/dev/mirror/gm0s1h     26G    786M     23G     3%    /home
/dev/mirror/gm0s1g    4.8G     20K    4.5G     0%    /tmp
/dev/mirror/gm0s1e     29G    1.3G     25G     5%    /usr
/dev/mirror/gm0s1f     58G    967M     53G     2%    /var
devfs                 1.0K    1.0K      0B   100%    /var/named/dev</pre>
<p>Собран RAID1 при помощи gmirror. У вас картина может быть другой, например что-то вроде</p>
<pre lang="bash">hotfreebsd# df -h
Filesystem     Size    Used   Avail Capacity  Mounted on
/dev/da0s1a    989M    183M    728M    20%    /
devfs          1.0K    1.0K      0B   100%    /dev
/dev/da0s1d     12G    8.2G    2.5G    76%    /cache
/dev/da0s1f    989M     26K    910M     0%    /tmp
/dev/da0s1g     13G    4.5G    7.3G    38%    /usr
/dev/da0s1e    4.8G    976M    3.5G    21%    /var
devfs          1.0K    1.0K      0B   100%    /var/named/dev</pre>
<p>Это другая машина, где просто 1 SCSI HDD. Для SATA/PATA диск прсото будет не<br />
/dev/<strong>da</strong>0s1a<br />
а<br />
/dev/<strong>ad</strong>0s1a</p>
<p>В создании резервных копий нам поможет старая, но вполне рабочая утилита dump.</p>
<p>Создадим папку для резервных копий. Вообще резервные копии необходимо хранить в идеале в другом физическом месте, или хотя бы на другом компьютере. Но например при возникновении пожара вы можете потерять оба компьютера и данные вам восстановить будет неоткуда.<br />
Поэтому решайте сами насколько ценные данные у вас хранятся.</p>
<p>Для простоты я создал папку на этом же диске</p>
<pre lang="bash">mkdir /home/backup/</pre>
<p>в неё и буду складывать резервные копии, там они всеравно не задержатся и будут перемещены. В общем не будем усложнять пример. С полученой резервной копией вы сможете сделать что хотите – утащить на другой комп, записать на внешний HDD или записать DVD диск.</p>
<p>По моему первому варианту (с массивом gmirror)</p>
<p>Я написал простенький скриптик</p>
<pre lang="bash">#!/bin/sh
# резервное копирование основных разделов за исключением home
echo 'Начал копирование корневого раздела'
DATE=`date +%Y.%m.%d`
 echo 'Начато копирование корневого раздела'
dump -0 -L -f - / | gzip -9  &gt;  /home/backup/root.${DATE}.img.gz
 echo 'Корневой раздел скопирован, жду 4 секунды'
sleep 4
dump -0 -L -f - /usr | gzip -9  &gt;  /home/backup/usr.${DATE}.img.gz
 echo 'Раздел usr скопирован, жду 4 секунды'
sleep 4
dump -0 -L -f - /var | gzip -9  &gt;  /home/backup/var.${DATE}.img.gz
 echo 'Раздел var скопирован. Все задачи резервного копирования выполнены.'

поместил это в отдельный файлик</pre>
<pre lang="bash">/root/backup.sh</pre>
<p>даю права на выполнение</p>
<pre lang="bash">chmod 700 /root/backup.sh</pre>
<p>и просто его запускаю (в системе как root)<br />
hotfreebsd# ~/backup.sh</p>
<p>и жду пока все скопируется.</p>
<p>Можно запустить и руками.</p>
<p>Например строка в скрипте</p>
<pre lang="bash">dump -0 -L -f - /usr | gzip -9  &gt;  /home/backup/usr.${DATE}.img.gz</pre>
<p><strong>Примечание</strong>: эта строка в shell не сработает, для запуска команды в консоли нужно набрать</p>
<pre lang="bash">dump -0 -L -f - /usr | gzip -9  &gt;  /home/backup/usr.`date +%Y.%m.%d`.img.gz</pre>
<p>запускает утилиту dump для раздела /usr с полным копирование данных (-)<br />
-L говорит о том, что это “живая файловая система” т.е. она смонтирована в режиме запись/чтение<br />
-f запись копии в файл (по умолчанию dump пишет данные на стример – это такой накопитель внешний для резервных копий, нам нужно в файл, поэтому опцию нужно указать)</p>
<p>Затем мы передаем результат работы dump на вход утилите сжатия gzip с параметром сжатия -9 (максимальное сжатие) и потом идет сама запись в файл по пути /home/backup/usr.${DATE}.img.gz<br />
Переменная ${DATE} превратится в текущую дату. Сжатие наверное у меня чрезмерное, но компьютер достаточно мощный, и я не спешу, если не хотите сжимать резервную копию, то можете сразу в файл писать или поставьте степень сжатия поменьше, например gzip -2.</p>
<p>Для второго варианта (без массива gmirror)</p>
<p>Подойдет что-то вроде</p>
<pre lang="bash">hotfreebsd# dump -0 -L -f - /dev/da0s1a &gt; /home/backup/root.`date +%Y.%m.%d`.img</pre>
<p>В этом примере я не сжимаю резервную копию, соответственно и расширение у конечного файла просто img</p>
<p>Восстановить данные можно при помощи другой программы – <strong>restore</strong></p>
<p>В случае, если у вас применялось gzip сжатие образа при создании, то работает конструкция вроде</p>
<p><strong>Внимание! Опасная команда!</strong></p>
<pre lang="bash">hotfreebsd# gzip -d  /home/backup/root.2009.05.06.img.gz  | ( cd / ; restore -rf - )</pre>
<p>Что происходит при запуске этой команды<br />
&#8212; мы запускаем gzip с параметром -d (это значить распаковать архив)<br />
&#8212; мы указываем файл, который содержит резервную копию<br />
&#8212; переходим в раздел, в который нужно восстановить нашу копию (в этом примере восстанавливаем корневой раздел)</p>
<p>или вот так для восстановления /usr</p>
<pre lang="bash">gzip -d  /home/backup/usr.2009.05.06.img.gz  | ( cd /usr ; restore -rf - )</pre>
<p>Если даные не сжаты, то делаем так (восстановление /usr)</p>
<pre lang="bash">cat /home/backup/usr.2009.05.06.img.gz  | ( cd /usr ; restore -rf - )</pre>
<p><strong>Внимание! </strong>Существующие данные при восстановлении уничтожаются! Поэтому экспериментируйте осторожно. Важно освоить этот простой механизм резервного копирования и восстановления в спокойной, штатной обстановке, чтобы потом быть уверенным в том, что вы все делаете правильно, и ваши резервные копии действительно работают.</p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/rezervnoe-kopirovanie-freebsd-pri-pomoshhi-dump-i-re/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Руссификация FreeBSD (UTF-8)</title>
		<link>https://server-kiev.com/2013/08/russifikaciya-freebsd-utf-8/</link>
		<comments>https://server-kiev.com/2013/08/russifikaciya-freebsd-utf-8/#comments</comments>
		<pubDate>Fri, 16 Aug 2013 20:47:13 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[freebsd]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=26</guid>
		<description><![CDATA[Однажды я осознал что многобайтовым кодировкам принадлжеит будущее и решил не изобретать кастыли с koi8-r. Почему utf8: &#8212; это удобно &#8212; это кроссплатформенно (я, например, работаю на многих разных системах: freebsd, linux, windows и хочу везде иметь возможность беспроблемного доступа к своим файлам) &#8212; utf8 это родная кодировка во многих системах (linux), а также в <a href="https://server-kiev.com/2013/08/russifikaciya-freebsd-utf-8/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p>Однажды я осознал что многобайтовым кодировкам принадлжеит будущее и решил не изобретать кастыли с koi8-r.<br />
<b>Почему utf8:</b><br />
&#8212; это удобно<br />
&#8212; это кроссплатформенно (я, например, работаю на многих разных системах: freebsd, linux, windows и хочу везде иметь возможность беспроблемного доступа к своим файлам)<br />
&#8212; utf8 это родная кодировка во многих системах (linux), а также в файловых системах.<br />
&#8212; в базах данных давно самая беспроблемная кодировка &#8212; utf8 (особенно когда есть необходимость работы с несколькими языками)<br />
&#8212; я думаю рано или поздно во freebsd все равно будет utf8 по умолчанию.<br />
<span id="more-26"></span>так что приступим:</p>
<p><tt>/etc/login.conf:</tt></p>
<pre>russian|Russian Users Accounts:\
:charset=UTF-8:\
:lang=ru_RU.UTF-8:\
:tc=default:</pre>
<p><tt># cap_mkdb /etc/login.conf<br />
# pw usermod -n $username -L russian<br />
</tt><br />
Собственно, этого достаточно &#8212; вот так все просто <img src="https://server-kiev.com/wp-includes/images/smilies/icon_wink.gif" alt=";)" class="wp-smiley" /><br />
Альтернативно, либо дополнительно к вышеприведенному способу, можно прописать переменные в используемом шеле:<br />
<tt>/etc/csh.cshrc:</tt></p>
<pre>setenv LANG ru_RU.UTF-8
setenv LC_CTYPE ru_RU.UTF-8
setenv LC_COLLATE POSIX
setenv LC_ALL ru_RU.UTF-8</pre>
<p><tt>/etc/profile:</tt> (опционально, для тех кто любит баш.)</p>
<pre>LANG="ru_RU.UTF-8"; export LANG
LC_CTYPE="ru_RU.UTF-8"; export LC_CTYPE
LC_COLLATE="POSIX"; export LC_COLLATE
LC_ALL="ru_RU.UTF-8"; export LC_ALL</pre>
<p><tt>/root/.cshrc:</tt> (руту русификации не положены)</p>
<pre>setenv LANG C
setenv LC_CTYPE C
setenv LC_COLLATE POSIX
setenv LC_ALL C</pre>
<p><tt>/etc/fstab:</tt></p>
<pre># NTFS data
/dev/ad0s4      /mnt/data2 ntfs-3g  default,rw,locale=ru_RU.UTF-8 0 0</pre>
<p>Из консоли можно так:</p>
<p><tt># mount_ntfs -C UTF-8 /dev/ad0s4 /mnt/winda # ro mount<br />
# mount_ntfs-3g /dev/ad0s4 /mnt/winda -o deafult,rw,locale=ru_RU.UTF-8 # right way; portinstall sysutils/fusefs-ntfs<br />
</tt></p>
<p><b>update 280609:</b><br />
Хотел сказать что вышеприведенный спрособ руссификации не затрагивает системную консоль, но этого достаточно, чтобы в юзерском шеле был utf8<br />
Также о процессе перевода и системной консоли на utf8 можно посмотреть тут: <a href="http://www.opennet.ru/tips/info/1448.shtml">http://www.opennet.ru/tips/info/1448.shtml</a></p>
<h3>Переключение раскладки клавиатуры в X11:</h3>
<p><tt>/etc/X11/xorg.conf:</tt><br />
(в принципе, можно обойтись и без этого, если вы настроите переключение в соотвествующем оконном менеджере, но данный вариант более универсален.)</p>
<pre>Section "InputDevice" 
Identifier "Keyboard0" 
Driver "keyboard" 
Option "XkbModel" "microsoftpro" 
Option "XkbLayout" "us,ru" 
Option "XkbOptions" "grp:ctrl_shift_toggle,grp:lwin_switch,grp_led:scroll" 
Option "XkbVariant" ",winkeys" 
EndSection</pre>
<p>&nbsp;</p>
<h3>Переключение раскладки клавиатуры в KDE:</h3>
<p>Тут можно все сделать через kcontrol типа (Пуск -&gt; Настройка -&gt; Региональные и спец.настройки -&gt; Настройка клавиатуры) но это не по джидайски. Посему идем классическим unix way:</p>
<p><tt>~/.kde/share/config/kdeglobals</tt> должна быть строчка</p>
<pre>Switch to Next Keyboard Layout=Ctrl+Shift_L;</pre>
<p>Вообще я крайне рекомендую поизучать и сохранять этот файл. Потом настроить рабочую среду на другом компе &#8212; дело 2 минут.</p>
<p><b>xxkb индикатор раскладки</b> c привязкой к приложению:</p>
<p><tt>~./.kde/share/config/kxkbrc</tt></p>
<pre>[Layout]
DisplayNames=
EnableXkbOptions=true
IncludeGroups=ru(winkeys):us
LayoutList=us,ru(winkeys)
Model=pc104
Options=grp:lctrl_lshift_toggle,grp_led:scroll
ResetOldOptions=true
ShowFlag=true
ShowSingle=false
StickySwitching=false
StickySwitchingDepth=2
SwitchMode=WinClass
Use=true</pre>
<p><b>Usefull links:</b></p>
<p>http://www.lissyara.su/?id=1444 FreeBSD как десктопная система<br />
http://community.livejournal.com/ru_linux/1147523.html русификация аудиопроигрывателей (конвертация mp3 тегов).</p>
<p>http://pcbsd.ru/doc/statyi/article21-2008-03-23.html PC-BSD 1.5: установка, настройка, русификация. (utf-8)<br />
http://www.pcbsd.ru/forum/index.php/topic,93.0.html Руссификация компонентов системы<br />
http://forum.pcbsd.org.ua/viewtopic.php?t=120 Русификация системы (koi8-r)</p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/russifikaciya-freebsd-utf-8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Установка тестового ядра, FreeBSD</title>
		<link>https://server-kiev.com/2013/08/freebsd-test-kernel-nextboot/</link>
		<comments>https://server-kiev.com/2013/08/freebsd-test-kernel-nextboot/#comments</comments>
		<pubDate>Fri, 16 Aug 2013 20:43:31 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[freebsd]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=23</guid>
		<description><![CDATA[Не так давно появились данные о новых уязвимостях в некоторых версиях ядер, и мне пришлось обновить несколько критичных серверов. О том, как собирать и устанавливать ядро в FreeBSD я уже писал не один раз, со всякими приметками и конфигурациями. Главное о чём я хочу написать в статье — это, как себя обезопасить — если вы это делаете <a href="https://server-kiev.com/2013/08/freebsd-test-kernel-nextboot/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p><strong>Не так давно появились данные о новых уязвимостях в некоторых версиях ядер, и мне пришлось обновить несколько критичных серверов.</strong></p>
<p>О том, <a title="Пересборка ядра FreeBSD" href="/2013/08/freebsd-kernel-compilation/">как собирать и устанавливать ядро в FreeBSD</a> я уже писал не один раз, со всякими приметками и конфигурациями. Главное о чём я хочу написать в статье — это, как себя обезопасить — если вы это делаете удалённо.</p>
<p>Для этого нужно всего лишь что бы под рукой был KVM свич или кто-либо имел возможность физически нажать на сервере ‘reset’.</p>
<p>Идея в заголовке этой статьи — это сборка и установка ядра в «песочнице» или простыми словами, которые более правильно объясняют идею — это установка в отдельную директорию, не затрагивающую нынешнее «рабочее» ядро с последующей попыткой загрузки с него. А в случае неудачи — после ‘reseta’ — возвратом на старое ядро.<span id="more-23"></span></p>
<p>Итак, на этапе команд:</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># cd /usr/src
# make buildkernel KERNCONF=MYKERNEL</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>Следующей командой будет создание тестовой директории и установка ядра в неё:</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># mkdir /boot/test_kernel
# make -s installkernel KERNCONF=MYKERNEL DESTDIR=/boot/test_kernel</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>Теперь, после того как тестовое ядро установлено, нужно сделать так что бы система единоразово загрузилась с него при следующей загрузке. Для этого выполним такую команду:</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># nextboot -k test_kernel/boot/kernel</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>!!! Обратите внимание на то, что в использовании команды <strong>nextboot</strong> — необходимо вводить путь относительно каталога /boot/.</p>
<p>После чего производим перезагрузку системы:</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># shutdown -r now</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>Проверим имя ядра:</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># uname -i
MYKERNEL</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>Далее, смотрим на стабильность новоиспеченного ядра. Гоняем, тестируем.<br />
Если всё, ок — Бекапим рабочее ядро. И подсовываем на место основного ядра — тестовое:</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># mv /boot/kernel /boot/kernel_work
# mv /boot/test_kernel/boot/kernel /boot/kernel
# reboot</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>После загрузки — у нас по умолчанию будет загружено наше бывшее «тестовое» ядро, как основное ядро которое будет загружаться всегда.</p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/freebsd-test-kernel-nextboot/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Пересборка ядра FreeBSD</title>
		<link>https://server-kiev.com/2013/08/freebsd-kernel-compilation/</link>
		<comments>https://server-kiev.com/2013/08/freebsd-kernel-compilation/#comments</comments>
		<pubDate>Fri, 16 Aug 2013 20:37:32 +0000</pubDate>
		<dc:creator><![CDATA[Алексей]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[freebsd]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[пересборка ядра]]></category>
		<category><![CDATA[собираем ядро]]></category>
		<category><![CDATA[фрибсд]]></category>
		<category><![CDATA[ядро]]></category>

		<guid isPermaLink="false">http://server-kiev.com/?p=20</guid>
		<description><![CDATA[Ядро — это основная часть операционной системы FreeBSD. Оно ответственно за управление памятью, параметры безопасности, работу с сетью, доступ к дискам и многое другое. Зачем необходимо пересобирать собственное ядро? Вопрос вполне вменяем, ведь с развитием системы — чем дальше, тем она динамичнее и более самодостаточна, но всё же. Представим ситуацию, когда у нас есть старенькое <a href="https://server-kiev.com/2013/08/freebsd-kernel-compilation/"> читать дальше <span class="meta-nav"></span></a>]]></description>
				<content:encoded><![CDATA[<p><strong>Ядро — это основная часть операционной системы FreeBSD. Оно ответственно за управление памятью, параметры безопасности, работу с сетью, доступ к дискам и многое другое.<br />
</strong></p>
<p>Зачем необходимо пересобирать собственное ядро?</p>
<p>Вопрос вполне вменяем, ведь с развитием системы — чем дальше, тем она динамичнее и более самодостаточна, но всё же. <span id="more-20"></span>Представим ситуацию, когда у нас есть старенькое железо например:</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre>CPU: 200Mhz
Memory: 128Mb
HDD: 4Mb
на борту есть 3 PCI слота в которые установлены две супер модные
и современные сетевые карты. Одна (на входе) - оптическая, вторая
(на выходе) - под витую пару в домашний супер свич.</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>Мы все это железо хотим использовать для домашнего роутера, а точнее шлюза, но….</p>
<p>когда мы инсталлируем систему, карточки не определяются.<br />
Благо, производители железа побеспокоились о драйверах и написали их для широкого круга людей с инструкцией по их установке.</p>
<p>Вот и получается, что нам теперь нужно вкомпилить драйвера в нашу свежую систему, и попутно убрать из ядра неиспользуемое железо, что бы не забирало лишнюю память.</p>
<p>Кроме того, заранее планируем использование netgraph и включим firewall.</p>
<p>Приступим к нашей затее.</p>
<p>Первым делом, нам нужно убедится в наличии исходных кодов ядра в папке /usr/src</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># ls -la /usr/src/
total 4
drwxr-xr-x   22 root  wheel     512 Oct 29 13:22 .
drwxr-xr-x   18 root  wheel     512 Oct 29 14:20 ..</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>Пусто. Значит у нас есть задача сюда положить исходники ядра. Данную операцию можно выполнить как минимум 2мя способами, в нашем случае — это будет через меню sysinstall из диска, так как сети у нас еще нет.</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre>#sysinstall</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>далее:<br />
Configure, Distributions, src, здесь выбираем «sys» (/usr/src/sys) и выходим из меню, выходим еще раз и у нас спросят откуда ставить — выбираем CD/DVD и жмем «OK»</p>
<p>Второй вариант, занести их через флешь <img src="http://noted.org.ua/wp-includes/images/smilies/icon_smile.gif" alt=":)" /><br />
Но можно и ухитрится, временно поставить какую-нибудь попроще сетевую карточку, что бы появилась сеть и воспользоваться утилитой cvsup (а вдруг уже добавили наше железо в исходники <img src="http://noted.org.ua/wp-includes/images/smilies/icon_wink.gif" alt=";)" /> ):</p>
<p>Создаем файл supfile-src-sys</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># cat /other/work/supfile-src-sys
#
# Kernel source supfile
#
  *default host=cvsup5.FreeBSD.org
  *default base=/var/db
  *default prefix=/usr
  *default release=cvs tag=RELENG_6_3_0_RELEASE
  *default delete use-rel-suffix
  *default compress
  src-sys</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>PS. На наше железо стала версия 6.3, если на вашем другое — то tag= должно быть <a href="http://noted.org.ua/redirect.php?http://www.freebsd.org/doc/handbook/cvs-tags.html">другое</a>.</p>
<p>Запустим:</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># cvsup -g -L 2  /other/work/supfile-src-sys</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>и спустя несколько минут (5-25), всё зависит от машинки и скорости интернета с узла cvsup5.FreeBSD.org.</p>
<p>перепроверим еще раз папку и /usr/src и убедимся, что теперь она не пуста.</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># ls -la /usr/src/
total 5
drwxr-xr-x   22 root  wheel     512 Oct 29 13:22 .
drwxr-xr-x   18 root  wheel     512 Oct 29 14:20 ..
drwxr-xr-x   56 root  wheel    1024 Oct 28 10:12 sys</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>Теперь можем приступать к конфигурации нашего ядра.<br />
Заходим:</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># cd /usr/src/sys/i386/conf/
также можно зайти по симлинку, кому как удобнее
# cd /sys/i386/conf/

# ls -l | grep GENERIC
-rw-r--r--  1 root  wheel  12472 Oct 28 10:12 GENERIC
-rw-r--r--  1 root  wheel   1745 Oct 28 10:12 GENERIC.hints</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>далее, делаем копию GENERIC во что нибудь свое.</p>
<p><strong>PS. ВНИМАНИЕ!!!! GENERIC ПРАВИТЬ НЕ НУЖНО. На форумах часто встречаются глупые вопросы, я правлю GENERIC и почему вот у меня нифига не получается. Ругань и прочее..</strong></p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># cp GENERIC MYKERNEL</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>И уж потом правим MYKERNEL</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># mcedit MYKERNEL</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>Вспоминая нашу изначальную задачу — заставить нашу железку работать с суперновыми сетевыми картами, дописываем на диск в наше залитое ядро файлы, которые предоставил производитель. И добавляем соответствующие строки в MYKERNEL (соблюдая инструкцию от производителя)</p>
<p>Попутно, оптимизируем — добавляя необходимое и убирая лишнее..</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre>machine i386        # Тип платформы. 
cpu I586_CPU       # Тип процессора, с которыми будет работать ОС. 
cpu I686_CPU       # Здесь можно указать несколько значений. 
ident	   MYKERNEL # Название файла который мы правим :)
maxusers 32         # Максимальное число пользователей. 

Коментим лишнее
#options 	INET6 # Я обычно коменчу, пока что мы не юзаем IPv6 протокол
#options 	NFSSERVER # Я не собираюсь на такой тачке делать NFSSERVER

options EXT2FS    # Включаем поддержку файловой системы Ext2 (Linux)
device apm0        # Поддержка автоматического управления питанием 
(меняем c #device apm0 at nexus? disable flags 0x20 )</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>Добавляем стандартный набор, как правило для нашего домашнего роутера он будет выглядеть так:</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre>options         EXT2FS
options         DEVICE_POLLING
options         HZ=1000
#options         IPFILTER
#options         IPFILTER_LOG
options         IPFIREWALL
options         IPFIREWALL_VERBOSE
options         IPFIREWALL_VERBOSE_LIMIT=200
options         IPFIREWALL_DEFAULT_TO_ACCEPT
options         IPFIREWALL_FORWARD
options         IPFIREWALL_NAT
options         DUMMYNET
options         IPDIVERT
options         QUOTA
options         LIBALIAS
options         ROUTETABLES=2
options         ACCEPT_FILTER_DATA
#options         TCP_DROP_SYNFIN
#options         ICMP_BANDLIMIT
#options         TCP_RESTRICT_RST
#####NETGRAPH##### Эту часть не обязательно добавлять, мы ее добавляем 
#только в том случае, если будем использовать NETGRAPH.
options         NETGRAPH
options         NETGRAPH_PPP
options         NETGRAPH_PPPOE
options         NETGRAPH_PPTPGRE
options         NETGRAPH_BPF
options         NETGRAPH_ETHER
options         NETGRAPH_IFACE
options         NETGRAPH_VJC
options         NETGRAPH_SOCKET
options         NETGRAPH_KSOCKET
options         NETGRAPH_TEE
options         NETGRAPH_RFC1490
options         NETGRAPH_MPPC_ENCRYPTION
#######Если у Вас на этой машинке есть пишущий привод, то сразу добавим:
device          atapicam
###В секцию: # SCSI peripherals</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>Коментим по описанному принципу лишнее, только не переусердствуйте (что бы не получилось как у меня в первый раз, я совсем все лишнее отключил <img src="http://noted.org.ua/wp-includes/images/smilies/icon_smile.gif" alt=":)" /> )</p>
<p>Но если всё таки вы переусердствуете, и у вас ничего не запуститься после перезапуска системы — не переживайте, всё нормально, жизнь на этом не остановилась.. У нас есть выход:<br />
Жмем RESET и на этапе загрузчика жмакаем на ESC.<br />
появится запрос, мы в него напишем:<br />
boot kernel.old и нажмем ENTER, тем самым загрузив старое ядро.<br />
<strong>PS. Важно знать!!! После каждой пересборки ядра — в ее процессе создается директория /boot/kernel.old которая за каждым разом заменяется файлами из /boot/kernel. Поэтому, рекомендую сделать такую хитрость: скопируйте себе сразу же рабочее ядро например в директорию /boot/generic:</strong></p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># cd /boot
# cp -r kernel.old generic</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p><strong>Тем самым вы обезопасите себя, если у вас и во второй раз не заведется система, вы просто наберете boot /boot/generic<br />
</strong></p>
<p>Теперь вернемся к нашему процессу сборки.<br />
Проверяем, убеждаемся что броде бы все правильно, лишнее убрано, недостающее — дописано. Переходим к процессу компиляции.</p>
<p>Сейчас рекомендуют делать так:</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># cd /usr/src
# make buildkernel KERNCONF=MYKERNEL
# make installkernel KERNCONF=MYKERNEL
# shutdown -r now</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>Раньше было так:</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># cd /sys/i386/conf/
# config MYKERNEL #При этом вам выдадут дальнейшие инструкции,
 и подскажут о ваших ошибках (если они есть)
# cd ../compile/MYKERNEL
# make cleandepend; make depend &amp;&amp; make install &amp;&amp; reboot
И ждем...</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>После сборки нового ядра, перезагружаемся и смотрим, завелось или нет, если нет — читаем примечание выше, если да — радуемся и попиваем пивко.</p>
<p>PS. Если вам нужно чего-то еще добавить в ядро, можем пройтись еще раз по уже накатанной дороге, но можем сделать и немного по другому.. Мы можем подгрузится модулем ядра:<br />
(попутно вспомнил анекдот:<br />
&#8212; Любимый, ты борщ умеешь варить?<br />
&#8212; секундочку… kldload borsh, теперь да!!!!)</p>
<p>так вот, для того что бы подгрузить модуль можно пользоваться утилитой kldload, для того что бы просмотреть уже подгруженное: kldstat, а для того что бы отгрузить модуль (забыть про то как варить борщ): kldunload borsh.</p>
<p>Также можно дописать в файл лоадера, что подгружать ядром (не будем же мы всё время ручками это делать)</p>
<div>
<table>
<tbody>
<tr>
<td>
<pre># cat /boot/loader.conf
accf_http_load="YES"
bridge_load="YES"
snd_driver_load="YES"</pre>
</td>
</tr>
</tbody>
</table>
</div>
<p>Удачного и стабильного вам ядра…</p>
<p><em>Источник: <a title="Пересборка ядра FreeBSD" href="http://noted.org.ua/255" rel="bookmark"><span style="color: blue;">http://noted.org.ua/255</span></a></em></p>
]]></content:encoded>
			<wfw:commentRss>https://server-kiev.com/2013/08/freebsd-kernel-compilation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
