Купить сервер в Киеве. Cерверы и рабочие станции в Украине
Продажа мощных серверов по низким ценам. Серверы Dell, HP, Supermicro. Мощные рабочие станции из США. В наличии новые и б/у за наличку и по безналу.
  • Главная
  • Серверы
  • Рабочие станции
  • Комплектующие
  • Статьи
  • Контакт
  • Главная
  • Серверы
  • Рабочие станции
  • Комплектующие
  • Статьи
  • Контакт

Обновление мира («world») FreeBSD

Рассматривается переход с версии 8.2 на 9.0.

Во FreeBSD имеется две ветки разработки: FreeBSD-CURRENT и FreeBSD-STABLE. FreeBSD-CURRENT является последними рабочими версиями исходных кодов FreeBSD и предназначена в первую очередь для разработчиков, тестеров и просто интересующихся людей. В отличие от FreeBSD-CURRENT ветка FreeBSD-STABLE является разработкой, из которой делаются основные релизы. Соответственно для использования на ответственных серверах рекомендуется FreeBSD-STABLE.Для того чтобы иметь самые последние версии исходных текстов системы необходимо провести синхронизацию с любым из серверов проекта FreeBSD. Для этих целей воспользуемся утилитой cvsup с sup-файлом stable-supfile из каталога /usr/share/examples/cvsup. Это наиболее рекомендуемый метод, так как он позволяет вам загрузить набор исходных текстов один раз полностью, а затем загружать только произошедшие изменения. Если интернет трафик ограничен, то имеет смысл перенести исходные тексты с установочного диска и затем провести синхронизацию.

Копируем stable-supfile и приводим его содержание к следующему виду:

# cp /usr/share/examples/cvsup/stable-supfile /etc/
# vi /etc/stable-supfile

Выбираем cvsup сервер. Кому какой ближе. Для российских пользователей: cvsup2.ru.FreeBSD.org или cvsup3.ru.FreeBSD.org

*default host=cvsup2.ru.FreeBSD.org
*default base=/var/db
*default prefix=/usr

 

Загружаем исходные тексты 9.0 ветки. Если необходимо 5, 4, 3 или 2.2, то меняем на «RELENG_5″, «RELENG_4″, «RELENG_3″, «RELENG_2_2″ соответственно.
Если не указывать версию в ветке (RELENG_9_0), то будут скачиваться исходники последней доступной версии, которая не обязательно может быть STABLE. На момент правки статьи это 9.0).

*default release=cvs tag=RELENG_9_0
*default delete use-rel-suffix
# Включаем сжатие трафика
*default compress
# Качаем полное дерево исходников
src-all

Запускаем cvsup и ждем пока закончится обновление.

server# cvsup -g -L2 /etc/stable-supfile

Переходим в /usr/scr и начинаем процесс обновления. Запаситесь терпением, так как это занимает 1-2 часа на Core2Duo.

# cd /usr/src/
# rm -rf /usr/obj
# make -j4 buildworld

 

Где j4 — компилировать в 4 потока. Рекомендуется для однопроцессорных машин, т.к. компиляция в большей степени требовательная к системе ввода-вывода, а не процессору. Для многопроцессорных это значение можно увеличить.

!!!ВАЖНО!!! Не используйте опцию -j для слабых машин (менее 300МГц). Это может привести к ошибкам при компиляции.

Для настройки системы можно использовать make.conf. Пример смотрите здесь /usr/share/examples/etc/make.conf

# make -j4 buildkernel KERNCONF=MYKERNEL

Где MYKERNEL — ваше ядро. Без KERNCONF=MYKERNEL собирается с ядром GENERIC. В следующей строке поступаем соответственно.

# make installkernel KERNCONF=MYKERNEL

Перезагрузимся

# reboot

 

Перейдем в однопользовательский режим. При загрузке жмем 4, либо из основного режима следующей командой:

# shutdown now

Монтируем разделы файловой системы.

# mount -u /
# mount -a
# mergemaster -p

Устанавливаем мир

# cd /usr/src
# make installworld

 

Удаляем временные файлы

# make delete-old

 

# mergemaster

 

Несколько слов о работе этой утилиты. Она сравнивает уже установленные файлы конфигурации с теми которые предлагаются новой версией FreeBSD. Если есть отличия, то на экране появляется сообщение об этом. Первой строкой в нем идет имя файла, который не соответствует новым требованиям, а ниже сами отличия. Знаком «-» помечаются строки, которые утилита собирается удалить, а «+» — которые будут добавлены.

В конце предлагаются следующие варианты:
d — удалить предлагаемый вариант и оставить старый;
i — установить предлагаемый вариант, удалив старый;
m — сравнить построчно старый и предлагаемый вариант;
v — посмотреть отличия в файлах снова.

Чаще всего можно жать i, но иногда это может привести к замене ваших настроек на дефолтные. Так что будте внимательны. Например, у меня установлен exim, а mergemaster предложил вернуть файл /etc/mail/mailer.conf в первоначальное состояние. Это мне не нужно, поэтому выбираю m.
Начинается построчное сравнение файлов. Экран делится на две части, слева строки из старого файла, а справа из предлагаемого. При нажатии на «Enter» выводятся возможные варианты последующих действий:
l — использовать вариант слевой стороны;
r — использовать вариант справой стороны;

и т.д.

В моем случае, чтобы оставить старые настройки жмем «l». После того как сравнение кончилось, предлагаются следующие варианты:
i — установить получившийся файл;
r — повторить сравнение снова;
v — просмотреть получивщийся файл.

Возможен так же вариант, когда с новой версией системы появляются новые файлы, которых до этого не было. В таком случае предлагается только 2 варианта:
d — удалить предлагаемый вариант и оставить старый;
i — установить предлагаемый вариант, удалив старый.
И в таком же духе сравниваются все файлы.

Перезагрузимся

# reboot
# cd /usr/src/
# make delete-old-libs

 

Все. Проверяем.

 

# uname -a
...9.0-RELEASE FreeBSD 9.0-RELEASE #0...

 

До обновления было FreeBSD 8.2-RELEASE

Для создания материала использована страница: http://www.lissyara.su/articles/freebsd/tuning/make_buildworld/


Локальное и удаленное обновление FreeBSD

Написал краткую справку об обновлении локальных и удаленных серверов в пределах одной ветки.

Обновление csup

Сначала вам нужно обновить исходные коды системы, и мы будем использовать штатные средства операционной системы csup. Конфигурационный файл готов, его необходимо скопировать и изменить, он находится в директории:

# cd /usr/share/examples/cvsup/
# ls
README           gnats-supfile    refuse.README    www-supfile
cvs-supfile      ports-supfile    stable-supfile
doc-supfile      refuse           standard-supfile

 

Укажем нужную версию операционной системы.
В существующем конфигурационном файле стоит текущая версия.

# 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

 

Скопируем файл и немного изменим:

# 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

 

Теперь нам необходимо синхронизировать src делается просто:

# /usr/bin/csup -h cvsup4.ru.freebsd.org -g -L 2 \
/usr/share/examples/cvsup/standard-supfile-RELENG_8_2

 

Когда синхронизация завершилась, приступим к обновлению системы (не забываем прочитать файл UPDATING чтобы все прошло гладко). Предупреждаю, что сначала мы будем устанавливать, ядро GENERIC и если все пройдет гладко и вы протестируете хотя бы один день сервер то можете, скомпилируйте свое ядро.
Очистим директории, от предыдущего мусора соберем мир и ядро и установим ядро:

# cd /usr/obj  ;chflags -R noschg * ;rm -rf *
# cd /usr/src
# make -j4 buildworld
# make -j4 buildkernel KERNCONF=GENERIC
# make installkernel KERNCONF=GENERIC

 

Теперь начинаются различия обновления локального и удаленного серверов. Рассмотрим два этих варианта:

Локальный сервер

Для безопасного и корректного обновления необходимо ввести машину в single mode можно сделать двумя способами:

  • Перезагрузкой и выбором в стартовом меню загрузку в single mode (номер 4).
    # shutdown -r now
  • Или напрямую активировать данный режим:
    # shutdown now

 

Удаленный сервер

При удаленном обновлении вы не должны вводить машину в single mode, если вы случайно это сделаете, то потеряете связь с машиной.
В виду вышесказанного необходимо действовать так:

  • Отключить в /etc/rc.conf все службы, в которых нет необходимости для запуска системы это СУБД, FTP, Apache и т.д. (sshd не выключать!)
  • Перезагрузить сервер

Можно и самим остановить эти службы без перезагрузки системы.

Продолжаем обновление

При запуске системы в нашем случае это локальный сервер необходимо смонтировать корневой каталог и остальные разделы, а при удаленном сервере нет необходимости в монтировании каталогов. А так же запустим mergemaster для создания начальной точки работы:

# /sbin/mount -u /
# /sbin/mount -a
# csh
# su
# mergemaster -p

 

Установим мир и удалим старые файлы.

# cd /usr/src
# make installworld
# make delete-old

Для автоматизации удаления старых версий выполните:

# yes | make delete-old

 

mergemaster

Запустим mergemaster для синхронизации файлов, библиотек, конфигурационных файлов с новыми версиями.

# mergemaster -cv (c-контекстный diffs вместо унифицированного)

mergemaster сравнивает существующие конфигурационные файлы с теми, которые предлагаются новой версией FreeBSD. И если существуют отличия, то появляется сообщение об этом. Первой строкой в нем идет имя файла, который не соответствует новым требованиям, а ниже сами отличия.
Знаки:

 

  • - — этим знаком помечаются строки, которые mergemaster собирается удалить.
  • + — этим знаком помечаются строки, которые будут добавлены.

Есть несколько вариантов управления и в низу mergemaster предлагают следующие варианты работы с текущим файлом:

  • d — удалить предлагаемый вариант оставить старый.
  • i — установить предлагаемый вариант, удалив старый.
  • m — сравнить и объединить при необходимости построчно старый и новый вариант.
  • v — посмотреть отличия в файлах снова.

При построчном сравнивании экран делится на две части, слева строки из старого файла, а справа из предлагаемого. При нажатии на «Enter» выводятся возможные варианты последующих действий:

  • l — использовать вариант с левой стороны.
  • r — использовать вариант с правой стороны.

и т.д.

После того как сравнение файла закончилось, предлагаются следующие варианты:

  • i — установить получившийся файл.
  • r — повторить сравнение снова.
  • v — просмотреть получившийся файл.

Бывает, что с новой версией системы появляются новые файлы, которых до этого не было. В таком случае предлагается 2 варианта:

  • d — удалить предлагаемый вариант и оставить старый.
  • i — установить предлагаемый вариант, удалив старый.

И так сравниваются все файлы.

Завершение

Когда закончите, объединять файлы перезапустите систему и удалите старые библиотеки, а так же проверьте версию системы:

# 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

 

Обновление портов FreeBSD

 

# 
/usr/bin/csup -h cvsup4.ru.freebsd.org -g -L 2 /usr/share/examples/cvsup/ports-supfile \
&&  cd /usr/ports/ && make fetchindex

 

Обновление по крону

# crontab -l | grep csup
1  8  *  *  *  (/usr/bin/csup -h cvsup4.ru.freebsd.org -g -L 2 \
/usr/share/examples/cvsup/ports-supfile \
&&  cd /usr/ports/ && make fetchindex) >/dev/null 2>&1

 

Проблемы

В. Не запускаются программы требуют старые библиотеки
О. Есть два варианта. Пересобрать ПО или установить библиотеки нужной версии ОС:

# /usr/ports/misc/compat
compat3x/ compat4x/ compat5x/ compat6x/ compat7x/
Опубликовано 19.08.2013
4
Как пропатчить KDE под FreeBSD?
Dell PowerEdge C6100 8x X5650 192GB

Смотрите также:

Программе установки не удалось создать новый или найти существующий системный раздел

Решение проблем с установкой Windows 10 (8.1, 8, 7) с USB флешки (Программе установки не удалось создать новый или найти существующий системный раздел)

Mysql

Журналы (logs) в MySQL

ddosattack

Полезные команды, которые могут пригодиться при DDoS и не только

netstat

Использование netstat

    Контакт

    e-mail  sales@server-kiev.com
    skype  l_o_t_u_s33
    skype  +38 (068) 784-3255

    Комплектующие

    • Процессоры (CPU) (0)
    • Блоки питания (3)
    • Жесткие диски (HDD) (7)
    • Видеокарты (0)
    • Контроллеры (4)
    • Материнские платы (7)
    • Оперативная память (2)
    • Радиаторы / Кулеры (0)
    • Мониторы (2)
    • Проекторы (0)
    • SSD (0)
    • Сетевое оборудование (0)

    Новые поступления

    • Gigabyte 7PESH2MS-00 Intel C602 Chipset Rev 1.0 LGA2011 E-ATX
    • Сервер HP DL560p Gen8 4×E5-4650 48GB RAM
    • Acer ET322QU 32″ Black Freesync 75Hz LED IPS Monitor 2560×1440
    • Dell Precision T5600 2x Xeon E5-4650L 64GB HDD 1TB
    • LG 32UK50T-W 32″ Class 4K UHD (3840 x 2160)
    • HP Z420 6-ти ядерный Xeon E5-1650 3,2 GHZ 32GB RAM 120GB SSD 3000GB HDD
    • Supermicro PWS-1K62P-1R 1620 Watt Power Supply — 180-240 V
    • Серверный блок питания SUPERMICRO Ablecom 560W/600W 1U PWS-563-1H
    • SUPERMICRO Ablecom PWS-521-1H 520W Watt Switching Power Supply
    • HP DL580 Gen8 E7-4880v2 2.80GHz 120 потоков 256Gb DDR3 16x16GB
    • Рабочая станция E5-2697v3 28/56 Ядер-Потоков Intel Xeon / 256GB DDR4 / 3/3TB SSD/HDD / GTX 1080 / 1300W
    • 1C Сервер Supermicro 1-2U 2PS Xeon 32x 2.6GHz 128GB DDR3 ECC SAS-SATA
    • Монитор Dell S2817Q
    • Twin Сервер Supermicro 6027TR-DTRF 2U 2PS 4x Xeon 32x 2.9GHz 4x E5-4650L 128GB DDR3 ECC SAS-SATA
    • Supermicro X9DRi-LN4F+ v1.20 Dual LGA 2011 DDR3 Xeon v1. v2
    • Рабочая станция SuperMicro Xeon E5-4650L 96GB DDR3 SSD 240GB 3TB HDD Quadro
    • Рабочая станция GIGABYTE Xeon E5-4650L 64GB DDR3 SSD 240GB 3TB HDD GTX
    • DELL SAS 1GB 9265-8I 6GB/S Raid DNKYM 6GB/S LSI MEGARAID
    • MSI Z97 Gaming 5
    • HP ProLiant DL370 G6 ML370 G6

    Translate:

    Метки

    1С бухгалтерия 1С предприятие 10600R avocent binary log c6100 command line ddos dell error log freebsd IPKVM kernel linux log mysql netstat nettop networking poweredge query log slow query log snippets sysadmin tcp/ip unix windows 10 windows 10 setup troubleshooting Виртуализация Программе установки не удалось создать новый или найти существующий системный раздел команды freebsd консоль лог всех запросов mysql оперативная память память для серверов полезные мелочи проблемы с установкой windows продажа сервер сисадмин сниппеты установка windows установщик не может найти раздел фрибсд ядро
Яндекс.Метрика
e-mail  sales@server-kiev.com
skype  server-kiev
Купить сервер в Киеве
Купить рабочую станцию в Киеве
Серверы Dell купить
Серверы Supermicro купить
Недвижимость Киева и Украины