Обновление сервера

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Обновление сервера

Непрочитанное сообщение Reken » 2016-09-06 20:57:38

Здравствуйте
Подскажите пожалуйста советом...
Когда начал "изучать" FreeBSD, первая версия на которую наткнулся была 9.2 , потом уже 9.3 поставил. В итоге собрал сервер (шлюз) на FreeBSD 9.3. Сервер этот выполняет немного задач:
Связующее звено между ИНЕТОМ и компами (firewall с таблицей NAT)
Прокси сервер squid (прозрачный)
ЛОКАЛЬНЫЙ почтовый сервер
сервер jabber

Вопрос такой, знаю что в конце декабря 9.3 снимают с поддержки. Как бы Вы поступили? Обновили бы до более новой версии FreeBSD. Или поступили бы по принципу "работает не трогай"...

Я думаю лучше обновить...

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

densan
ст. сержант
Сообщения: 370
Зарегистрирован: 2007-12-06 10:02:02
Откуда: Penza
Контактная информация:

Обновление сервера

Непрочитанное сообщение densan » 2016-09-12 8:08:48

Сервер смотрит во вне я бы обновился.
У меня на всех важных серверах стоит зеркало. Выдергиваю один из винтов, обновляюсь, если при обновлении косяки и нет времени разбираться - гружусь с другого винта.

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Обновление сервера

Непрочитанное сообщение Reken » 2016-09-12 8:33:15

densan писал(а):Сервер смотрит во вне я бы обновился.
У меня на всех важных серверах стоит зеркало. Выдергиваю один из винтов, обновляюсь, если при обновлении косяки и нет времени разбираться - гружусь с другого винта.
Да, если не обновить будет уязвим...Буду обновлять. У меня нет зеркала на серваке FreeBSD, буду подстраховываться бэкапом...

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Обновление сервера

Непрочитанное сообщение xM » 2016-09-12 19:35:07

Reken писал(а): Вопрос такой, знаю что в конце декабря 9.3 снимают с поддержки
Много лет придерживаюсь политики обновления системы и прикладного софта на последние актуальные стабильные версии.
Сейчас буду мигрировать на 11.0-RELEASE.
IT voodoo blog https://kostikov.co

snorlov
подполковник
Сообщения: 3929
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Обновление сервера

Непрочитанное сообщение snorlov » 2016-09-12 21:04:25

А я думаю о переходе только после выхода *.1, а так..., он же работает и дырки в последнее время не в самой ос, а в прикладном софте и как он сконфигурирован, у меня где-то стоит 7.4, и ее пытались, но так и не смогли нагнуть...

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Обновление сервера

Непрочитанное сообщение Reken » 2017-01-17 11:05:01

Подскажите пожалуйста мне. Я первый раз обновлял FreeBSD сервер с 9.3 до 10.3. Правильно ли я сделал обновление? Или что то упустил?
Проделанные действия:
1) Backup FreeBSD
2) freebsd-update upgrade -r 10.3-RELEASE
3) freebsd выдал сообщение:

Код: Выделить всё

The following file could not be merged automatically: /etc/newsyslog.conf
Press Enter to edit this file in vi and resolve the conflicts manually... 
More (byte 12254)
Никаких изменений после этого сообщения, я не вносил в файлы конфигураций, просто подтверждал , когда FreeBSD спрашивал подтверждения...
4) После нужно было пересобрать всё, что установлено из портов, я сделал так:

Код: Выделить всё

portsnap fetch update
portupgrade -ra
Вначале во время пересборки freebsd ругался "pkg-static install -f pkg", но спустя какое то время "во время пресборки", перестал ругаться
5) freebsd-update install (как я понял зачистка остатков 9.3)

Правильно ли сделал обновление? Когда freeBSD просил внести изменения вручную, что это имеется в виду? Файлы конфигурации, которые были изменены мною ранее, до момента установки?

Аватара пользователя
Neus
майор
Сообщения: 2005
Зарегистрирован: 2008-09-08 21:59:56

Обновление сервера

Непрочитанное сообщение Neus » 2017-01-17 12:01:59

Reken писал(а): Правильно ли я сделал обновление?
https://www.freebsd.org/doc/en_US.ISO88 ... pdate.html
# freebsd-update -r 10.3-RELEASE upgrade
# freebsd-update install
# shutdown -r now
# freebsd-update install
# pkg-static upgrade -f (or # portmaster -af)
# freebsd-update install
# shutdown -r now
Physics is mathematics with the constraint of reality.
Engineering is physics with the constraint of money.

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Обновление сервера

Непрочитанное сообщение Reken » 2017-01-17 14:05:31

пересобрать все установленные порты через portupgrade, после обновления допустимо?
В инструкции говорится только про:
# pkg-static upgrade -f
# portmaster -af

snorlov
подполковник
Сообщения: 3929
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Обновление сервера

Непрочитанное сообщение snorlov » 2017-01-17 14:14:18

Необходимо, особенно при обновлении на след.ветку...

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Обновление сервера

Непрочитанное сообщение xM » 2017-01-17 14:40:58

Reken писал(а): пересобрать все установленные порты через portupgrade, после обновления допустимо?
Способ обновления любой, который вы используете.
Главное при смене старшей версии (например с 10 на 11) делать полную пересборку софта т.к. меняется ABI. При смене младших версий (например, с 10.1 на 10.2) я не припоминаю, чтобы такое требовалось.
IT voodoo blog https://kostikov.co

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Обновление сервера

Непрочитанное сообщение Reken » 2017-01-18 8:53:36

Подскажите пожалуйста ещё в двух моментах...
1) После обновления, у меня пропала ссылка на /etc/namedb/named.conf , и вообще пропал named.conf . Я так понимаю, потому что с 10-й версии DNS не входит в состав? У меня в named.conf были следующие изменения в строках:

Код: Выделить всё

listen-on       { 127.0.0.1; 192.168.10.4; };       # IP-адреса интерфейсов сервера, на котором будет запущена служба named
forwarders { 127.0.0.1;  8.8.8.8; };                 # Включаем форвардинг с прокси сервера
Так как мне ещё предстоит обновлять другой сервак, который служит шлюзом, и у него squid как то завязан с named.conf (нужно свою зону добавлять)

Код: Выделить всё

zone "domen.local" {
        type master;
        file "/etc/namedb/master/domen.local";              # Моя зона
};
То думаю после обновления шлюза, у всех пользователей локальной сети, пропадет интернет, пока не верну файл named.conf
Теперь что бы вернуть DNS нужно bind из портов ставить? Подскажите пожалуйста

2) Второй момент, после обновления, мне на почту EXIM начал присылать письма, каждый час, с содержанием:

Код: Выделить всё

newsyslog: error in config file; bad premission:
<<<<<<<<<< current version
Я так понимаю, это из-за того что в момент обновления я проигнорировал сообщение сервера:

Код: Выделить всё

The following file could not be merged automatically: /etc/newsyslog.conf
Press Enter to edit this file in vi and resolve the conflicts manually...
More (byte 12254)
FreeBSD просит что бы я внес изменения вручную? Подскажите пожалуйста...

snorlov
подполковник
Сообщения: 3929
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Обновление сервера

Непрочитанное сообщение snorlov » 2017-01-18 9:41:56

1. место bind'а в системе занял unbound... Если не хотите заморачиваться, то поставьте bind из портов/пакаджей
2. отредактируйте /etc/newsyslog.conf ручками, просто вы его подредактировали ручками до обновления, а при обновлении, когда вам было предложено взять <старую/новую/смесь из старой+новой/отредактировать>, вы что-то сделали/добавили в результате демон не может его разобрать...

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Обновление сервера

Непрочитанное сообщение Reken » 2017-01-18 9:58:41

Попробую из портов поставить bind, думаю версия без разницы...А после файл named.conf приведу к тому виду, в котором он у меня был на 9.3
А вот по поводу newsyslog.conf проблема в том, что к сожалению я не помню, что я там редактировал до обновления...Теперь не могу понять, что именно там нужно руками подправить...
P.S. Если я раньше что то менял в файле newsyslog, то наверное только строки относящиеся к DOVECOT, больше наверное мне было незачем там что либо редактировать...

snorlov
подполковник
Сообщения: 3929
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Обновление сервера

Непрочитанное сообщение snorlov » 2017-01-18 10:09:06

Reken писал(а): А вот по поводу newsyslog.conf проблема в том, что к сожалению я не помню, что я там редактировал до обновления...Теперь не могу понять, что именно там нужно руками подправить...
P.S. Если я раньше что то менял в файле newsyslog, то наверное только строки относящиеся к DOVECOT, больше наверное мне было незачем там что либо редактировать...
Ну так посмотрите /etc/newsyslog.conf, там наверняка строка

Код: Выделить всё

<<<<<<<<<< current version
которую демон не может понять, уберите ее или закомментируйте...

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Обновление сервера

Непрочитанное сообщение Reken » 2017-01-18 12:33:58

Спасибо за советы
Закоментировал строки:

Код: Выделить всё

>>>>>>> current version
========
>>>>>>> 10.3-RELEASE
После чего EXIM перестал слать предупреждения... Подскажите пожалуйста, FreeBSD сам нарисовал эти строки в момент обновления? Или это он заменил "непонятные" ему строки с версии 9.3?

Установил bind911, далее сделал по инструкции:

Код: Выделить всё

# делаем директорию песочницы в /var
# mkdir -p /var/named/usr/local/etc/
# переносим в песочницу конфиг из /usr/local/etc
# mv /usr/local/etc/namedb /var/named/usr/local/etc/
# делаем ссылку на namedb из /var/named/usr/local/etc в /usr/local/etc
# cd /usr/local/etc
# ln -s /var/named/usr/local/etc/namedb
После добавил в /usr/local/etc/namedb/named.conf изменения, которые были в 9.3 версии:

Код: Выделить всё

listen-on       { 127.0.0.1; 192.168.10.4; };       # IP-адреса интерфейсов сервера, на котором будет запущена служба named
forwarders { 127.0.0.1;  8.8.8.8; };                 # Включаем форвардинг с прокси сервера
Теперь когда запускаю FreeBSD вижу ошибки:

Код: Выделить всё

free named[585]: socket.c: 5680: unexpected error:
free named[585]: setsockopt(21, TCP_FASTOPEN) failed with Protocol not available
free named[585]: socket.c: 5680: unexpected error:
free named[585]: setsockopt(22, TCP_FASTOPEN) failed with Protocol not available
free named[585]: socket.c: 5680: unexpected error:
free named[585]: setsockopt(23, TCP_FASTOPEN) failed with Protocol not available
free named[585]: socket.c: 5680: unexpected error:
free named[585]: setsockopt(24, TCP_FASTOPEN) failed with Protocol not available
free named[585]: socket.c: 5680: unexpected error:
free named[585]: setsockopt(25, TCP_FASTOPEN) failed with Protocol not available
Но named стартует...
Сможете пожалуйста подсказать, что это за ошибки такие?

Charlz_Klug_
проходил мимо

Обновление сервера

Непрочитанное сообщение Charlz_Klug_ » 2017-01-18 13:42:58

Reken писал(а):Спасибо за советы
Закоментировал строки:

Код: Выделить всё

>>>>>>> current version
========
>>>>>>> 10.3-RELEASE
После чего EXIM перестал слать предупреждения... Подскажите пожалуйста, FreeBSD сам нарисовал эти строки в момент обновления? Или это он заменил "непонятные" ему строки с версии 9.3?
Нет, это не FreeBSD рисует строки. Рисованием строк занимается программа обновления. Просто алгоритм не смог определить как осуществить слияние старой версии файла (то, что было во FreeBSD 9.3) с новой версией (то, что стало во FreeBSD 10.3). Поэтому исправление проблемы он оставил на Вас. Похожая вещь есть и в Git (а может это делал сам Git - не знаю). Подробно почитать можете здесь.

Аватара пользователя
BirdGovorun
лейтенант
Сообщения: 878
Зарегистрирован: 2009-10-20 20:27:13
Откуда: Харьков.

Обновление сервера

Непрочитанное сообщение BirdGovorun » 2017-01-18 13:58:44

Reken писал(а): Теперь когда запускаю FreeBSD вижу ошибки:

Код: Выделить всё

free named[585]: socket.c: 5680: unexpected error:
free named[585]: setsockopt(21, TCP_FASTOPEN) failed with Protocol not available
free named[585]: socket.c: 5680: unexpected error:
free named[585]: setsockopt(22, TCP_FASTOPEN) failed with Protocol not available
free named[585]: socket.c: 5680: unexpected error:
free named[585]: setsockopt(23, TCP_FASTOPEN) failed with Protocol not available
free named[585]: socket.c: 5680: unexpected error:
free named[585]: setsockopt(24, TCP_FASTOPEN) failed with Protocol not available
free named[585]: socket.c: 5680: unexpected error:
free named[585]: setsockopt(25, TCP_FASTOPEN) failed with Protocol not available
Но named стартует...
Сможете пожалуйста подсказать, что это за ошибки такие?

Код: Выделить всё

#sysctl -a | grep net.inet.tcp.fastopen
??
https://github.com/freebsd/freebsd/blob ... fastopen.c

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Обновление сервера

Непрочитанное сообщение Reken » 2017-01-18 14:14:01

Всем спасибо
Про строки <<<<<< current version теперь примерно понятно...
А вот про named к сожалению не смог понять...Почему сыпятся ошибки...

guest
проходил мимо

Обновление сервера

Непрочитанное сообщение guest » 2017-01-18 14:53:20

Reken писал(а):Всем спасибо
Про строки <<<<<< current version теперь примерно понятно...
А вот про named к сожалению не смог понять...Почему сыпятся ошибки...
так Вам же "без разницы какой" - детский сад, взрослых людей "приходится водить за ручку"

bind 9.11 build with TFO (TCP FAST OPEN) if enabled
https://www.opennet.ru/opennews/art.shtml?num=45277

если:

# sysctl net.inet.tcp.fastopen.enabled=1

не поможет, ставьте bind99

ps. иногда послезно думать, голова для этого и дана человеку

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Обновление сервера

Непрочитанное сообщение Reken » 2017-03-17 8:43:28

Подскажите пожалуйста. Мне предстоит обновить ещё один сервер FreeBSD с версии 9.3 до 10.3
Только там такой момент, что на сервере присутствует perl5.20... Я буду обновлять следующим образом:
1) Обновлю FreeBSD
2) Пересоберу все порты, через portupgrade

Подскажите, как сделать правильно? Что бы при пересборке всех портов, perl пересобрался уже на версию 5.24 ?
Раньше я делал так:
1) В make.conf прописывал

Код: Выделить всё

DEFAULT_VERSIONS+=perl5=5.24
2) pkg set -o lang/perl5.20:lang/perl5.24 # Вот этот момент не понятен... Перед тем как выполнять эту команду, нужно pkg пересобрать?
3) portupgrade -rf perl5.20

P.S. Я так про pkg спрашиваю, так как в прошлый раз, когда я обновлял сервер. После команды portupgrade -ra около 3-4 часов, в тексте обновления, всё время фигурировало предупреждение: pkg-static install -f pkg

guest
проходил мимо

Обновление сервера

Непрочитанное сообщение guest » 2017-03-17 9:09:32

Reken писал(а):Подскажите пожалуйста. Мне предстоит обновить ещё один сервер FreeBSD с версии 9.3 до 10.3
Только там такой момент, что на сервере присутствует perl5.20... Я буду обновлять следующим образом:
1) Обновлю FreeBSD
2) Пересоберу все порты, через portupgrade

Подскажите, как сделать правильно? Что бы при пересборке всех портов, perl пересобрался уже на версию 5.24 ?
в смысле на default?
Он сам по себе default и без всяких make.conf определен в /usr/ports/Mk/* - разумеется, если Вы обновляете
порты.

Как бы в /usr/ports/UPDATING - расписано по пунктам:
- что делать при апгрейде из портов через
a) portupgrade
b) portmaster

и что делать, если Вы обновляетесь через пакетный менеджер pkg с репо freebsd
Раньше я делал так:
1) В make.conf прописывал

Код: Выделить всё

DEFAULT_VERSIONS+=perl5=5.24
в /etc/make.conf определяется версия которая отлична от DEFAULT в портах
2) pkg set -o lang/perl5.20:lang/perl5.24 # Вот этот момент не понятен... Перед тем как выполнять эту команду, нужно pkg пересобрать?
Что здесь непонятно? Был в системе до поры до времени perl5.20 - был default'ным, затем порты
переехали на новую версию perl'а в качестве default, соответственно ВСЕ зависимости от default'ного
perl'а - должны быть переопределены.
Именно это и делает pkg set -o name newname - правит локальную базу установленных пакетов
заменяя зависимость c версии "name" на "newname"

pkg-static - это статически собранный pkg менеджер, для аварийных работ, если Вы или Ваши
действия грохнули сам "pkg", можно воспользоваться статически собранным пакетом pkg == pkg-static,
он не требует динамических библиотек, ибо слинкован статически, все подпрограммы, obj - слинкованы
в один модуль:
# ldd /usr/local/sbin/pkg-static
3) portupgrade -rf perl5.20

P.S. Я так про pkg спрашиваю, так как в прошлый раз, когда я обновлял сервер. После команды portupgrade -ra около 3-4 часов, в тексте обновления, всё время фигурировало предупреждение: pkg-static install -f pkg
Пора бы уже самостоятельно учиться, за два года можно было бы и установку пакетов и апгрейд.

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Обновление сервера

Непрочитанное сообщение Reken » 2017-03-18 11:21:01

Я обновил сервер с 9.3 до 10.3
Но к сожалению, не прошло всё "гладко"
На FreeBSD присутствует ошибка:

Код: Выделить всё

/etc/defaults/rc.conf: =======: not found
Сможете пожалуйста подсказать, как её можно исправить?

snorlov
подполковник
Сообщения: 3929
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Обновление сервера

Непрочитанное сообщение snorlov » 2017-03-18 11:26:20

Заменить его на /usr/share/examples/etc/defaults/rc.conf... Причем полностью...

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Обновление сервера

Непрочитанное сообщение Reken » 2017-03-18 11:27:59

snorlov писал(а):Заменить его на /usr/share/examples/etc/defaults/rc.conf... Причем полностью...
Спасибо, попробую
А что могло произойти? Почему так могло случиться?

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Обновление сервера

Непрочитанное сообщение Reken » 2017-03-18 18:44:49

Всё равно что то не правильно я сделал...
Так как присутствуют ошибки.... Такие как:

Код: Выделить всё

freebsd dovecot: pop3-login: shared object "libssl.so.6" not found
Shared object "libkrb5.so.10" not found required by fetchmail
В инете пишут, что поможет если создать линки....

Код: Выделить всё

# ln -s /usr/lib/libssl.so /usr/lib/libssl.so.6 
P.S. После последнего запуска freebsd-update install выдал ошибку

Код: Выделить всё

src component not installed, skiped
далее наругался на отсутствие каталогов в /var/namedb/
done
Может из-за этого что то... Bind99 уже поставил и настроил...

Отправлено спустя 17 минут 6 секунд:
В каталоге /usr/lib/
У меня libssl.so ссылается на libssl.so.7

Отправлено спустя 53 минуты 15 секунд:
Выполнил команду:

Код: Выделить всё

# ln -s /usr/lib/libkrb5.so.11 /usr/lib/libkrb5.so.10
Не помогло....

Отправлено спустя 2 часа 22 минуты 45 секунд:
Когда у меня пересобирались порты, возникла ошибка:

Код: Выделить всё

===>  Applying FreeBSD patches for libevent-2.1.8
2 out of 3 hunks failed--saving rejects to evdns.c.rej

=> FreeBSD patch patch-evdns.c failed to apply cleanly.
*** Error code 1

Stop.
make[3]: stopped in /usr/ports/devel/libevent
*** Error code 1

Stop.
make[2]: stopped in /usr/ports/devel/libevent
*** Error code 1
Для её устранения я удалил дерево портов...
Далее portsnap fetch extract update
После установил libevent через make install clean
Далее повторно запустил portupgrade -ra