<?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>Mick - Информационный ресурс &#187; cvsup</title>
	<atom:link href="http://mick.in.ua/tag/cvsup/feed/" rel="self" type="application/rss+xml" />
	<link>http://mick.in.ua</link>
	<description>Практический опыт системного администратора</description>
	<lastBuildDate>Tue, 23 Sep 2025 12:49:35 +0000</lastBuildDate>
	<language>ru-RU</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=4.0</generator>
	<item>
		<title>Обновление OS FreeBSD до актуального состояния</title>
		<link>http://mick.in.ua/2011-11-30/update_system/</link>
		<comments>http://mick.in.ua/2011-11-30/update_system/#comments</comments>
		<pubDate>Wed, 30 Nov 2011 12:37:00 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Моя работа]]></category>
		<category><![CDATA[cvsup]]></category>
		<category><![CDATA[freebsd]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[обновление]]></category>

		<guid isPermaLink="false">http://test.icc-ukraine.com.ua/?p=18</guid>
		<description><![CDATA[Есть установленная с CD FreeBSD 6.1 RELEASE. Обновлять будем до версии STABLE. Для начала проверим установлены ли исходные коды в системе, они находятся в /usr/src/sys. Если такого каталога нет или он пустой, необходимо исходники доустановить. Правильно это делается из sysinstall: Запускаем sysinstall от имени root; Выбираем Configure; Выбираем Distribution; Отмечаем галочками src, потом sys. Или [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Есть установленная с CD FreeBSD 6.1 RELEASE. Обновлять будем до версии <strong>STABLE</strong>. Для начала проверим установлены ли исходные коды в системе, они находятся в /usr/src/sys. Если такого каталога нет или он пустой, необходимо исходники доустановить. Правильно это делается из sysinstall:<br />
Запускаем <strong>sysinstall</strong> от имени <strong>root</strong>;<br />
<span id="more-18"></span><br />
Выбираем Configure;<br />
Выбираем Distribution;<br />
Отмечаем галочками src, потом sys.</p>
<p>Или так:</p>
<p><strong>#mount /mnt/cdrom</strong><br />
<strong> #cd /mnt/cdrom/src</strong><br />
<strong> #./install.sh all</strong></p>
<p>Перед обновлением системы сохраним старое (работающее) ядро на всякий случай. Если новое окажется неработоспособным можно будет загрузиться со старого.</p>
<p><strong># cp -Rp /boot/kernel /boot/kernel.good</strong></p>
<p>Теперь имея исходники, будем их обновлять. Для это воспользуемся системой <strong>CVSup</strong>. Она связывается с указаным в конфиге CVSup-сервером, сравнивает файлы, имеющиеся в системе с теми, что выложены на CVSup-сервере и закачает изменения. Сам процесс может длиться несколько часов, однако закачивает немного по трафику. Проверить установлена ли данная программа в системе можно с помощью which:</p>
<p><strong>#which cvsup</strong></p>
<p>Если она установлена система покажет путь к ней /usr/local/bin/cvsup, если нет &#8211; command no found. Устанавливаем ее из портов:</p>
<p><strong>#cd /usr/ports/net/cvsup-without-gui</strong><br />
<strong> #make install clean</strong></p>
<p>При работе под X-ми, необходимо устанавливать из /usr/ports/net/cvsup. Установили программу, настраиваем конфиг. Примеры берем отсюда /usr/share/examples/cvsup. Нам нужен stable-supfile для обновления до версии STABLE, standart-supfile используется для обновления до CURRENT-версии. Копируем stable-supfile в свою выбранную папку, например /usr/my_config. Отредактируем /usr/my_config/stable-supfile:</p>
<p><strong>*default host=cvsup7.ua.freebsd.org # Имя CVSup-сервера, откуда будем тянуть обновления.</strong><br />
<strong> *default base=/var/db # Тут хранится история обновлений.</strong><br />
<strong> *default prefix=/usr # Размещение полученных обновлений в папке /usr/src.</strong><br />
<strong> *default release=cvs tag=RELENG_6 # Обновляется 6-я версия (тег ревизии)с главного CVS-сервера.</strong><br />
<strong> *default delete use-rel-suffix # delete &#8211; удалить ненужные (старые) файлы, use-rel-suffix &#8211; нужно указать, но зачем, не знаю(man).</strong><br />
<strong> *default compress # Использование компрессии при передачи данных.</strong><br />
<strong> src-all # Получение всего дерева исходников.</strong></p>
<p>Следует заметить, что cvsup работает на высоких портах (1024-65535), поэтому, если работает firewall, необходимо в его конфиг внести соответствующее правило. Конфиг есть, теперь запускаем из под root процесс обновления:</p>
<p><strong>#cvsup -g -L 2 /usr/my_config/stable-supfile</strong></p>
<p>Ждем пока все загрузится ( &#8220;Shutting down connection to server Finished successfully&#8221; ). В /usr/src находятся обновленные исходники, которые можно скопировать на аналогичную машину и с них обновлять систему. Заходим в /usr/src и перестраиваем бинарные файлы:</p>
<p><strong>#cd /usr/src</strong><br />
<strong> #make buildworld</strong></p>
<p>Эта команда полностью строит новое дерево в /usr/obj. Процесс компиляции будет длиться от часа до двух в зависимости от мощности компьютера. Если что-то пойдет не так всегда можно загрузиться со старой версии, нажав любую клавишу, кроме Enter и набрать в командной строке boot /boot/kernel.old .</p>
<p>После компиляции пересобираем ядро системы. Рекомендуется устанавливать ядро GENERIC, т.к. это будет проверкой на правильность работы новой системы. Также можно на этом этапе установить и собственное ядро, кому как нравится. Процесс устаноки собственного ядра описан здесь.</p>
<p><strong>#cd /usr/src</strong><br />
<strong> #make buildkernel KERNCONF=GENERIC &amp;&amp; make installkernel KERNCONF=GENERIC</strong></p>
<p>После установки ядра переходим в однопользовательский режим, дав команду shutdown now или выбрав Single mode после перезагрузки сиситемы. Далее:</p>
<p><strong>#fsck -p</strong><br />
<strong> #mount -u /</strong><br />
<strong> #mount -a -t ufs</strong><br />
<strong> #swapon -a</strong></p>
<p>Эти команды проверяют файловые системы, повторно монтируют /, монтируют файлове системы из /etc/fstab и включают подкачку.</p>
<p><strong>#cd /usr/src</strong><br />
<strong> #make installworld</strong></p>
<p>Теперь бинарные файлы будут заменены новыми. В новой версии могут измениться конфигурационные файлы в /etc и записи устройств /dev. Вручную сравниваться измения неудобно, для этого служит программа mergemaster &#8211; это скрипт, который сравнивает файлы настроек, например из /etc/. При запуске создается папка /var/tmp/temproot, в которой будут расположено дерево новых настроечных файлов, они будут сравниваться с теми, что в /etc. На всякий случай необходимо сохранить все файлы из /etc:</p>
<p><strong>#cp -Rp /etc /etc.old</strong></p>
<p>Запускаем mergemaster в автоматическом режиме, однако оставляем файлы, которые правили нетронутыми &#8211; mergemaster -a -p, в результате получаем папку /var/tmp/temproot с файлами, которые не были установлены в автоматическом режие. Далее запускаем mergemaster -p получаем результат сравнения, возможные действия:<br />
<strong>i &#8211; подтвердить установку новой версии файла</strong><br />
<strong> d &#8211; оставить старый вариант</strong><br />
<strong> m &#8211; объединить(склеить) новый и старый вариант ( не рекомендую)</strong></p>
<p>В ходе работы mergemaster -p может быть вариант, когда в новой системе отсутствуют файлы, которые были в старой. Если эти файлы не редактировались, их можно смело удалять. Если ситема новая и нет редактируемых ранее конфигурационных файлов, можно запустить mergemaster c опцией -i, будут автоматически установлены новые версии файлов.</p>
<p><strong>Источники информации:</strong><br />
1. <a href="http://www.freebsd.org/doc/ru_RU.KOI8-R/books/handbook/makeworld.html" target="_blank">http://www.freebsd.org/doc/ru_RU.KOI8-R/books/handbook/makeworld.html</a><br />
2. <a href="http://www.kazna.spb.ru/~Annie/tips/free-renew.html" target="_blank">http://www.kazna.spb.ru/~Annie/tips/free-renew.html</a><br />
3. <a href="http://web.opennet.ru/docs/BSD/cvsup_makeworld/index.html" target="_blank">http://web.opennet.ru/docs/BSD/cvsup_makeworld/index.html</a></p>
<p><strong>© mick, 2006.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://mick.in.ua/2011-11-30/update_system/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
