Выполняем команду
# portversion -v
Получаем список установленного программного обеспечения в виде:
название программы-версия программы статус состояние
статус имеет следующие обозначения
= не нуждается в обновлении
< нуждается в обновлении
> установленная версия ПО выше чем в дереве портов
Для вывода списка ПО только со старыми номерами версий, выполнить команду
# portversion -v | grep "<"
Если в результате не выведено ни одной строки - значит все ПО в актуальном состоянии.
Для обновления программы нужно выполнить команду
# portupgrade название программы
Комментарии
Актуальная тема. И собственно
Актуальная тема.
И собственно по ней же вопрос, а как бы автоматизировать процесс обновления? ну в смысле выяснил я что в обновлении нуждается целая куча программ как бы их все разом обновить.
<- Водка - враг солдата, а солдат врагов не боится! ->
На самом деле у команды
На самом деле у команды portupgrade есть ключи, с помощью которых можно обновить как зависимости "вниз" (т.е., которые зависят от данной программы), так и зависимости "вверх" (те, от которых зависит эта программа).
Иногда можно дав команду на обновление одного порта обновить все, по цепочкам зависимостей. Но делать это нужно крайне осторожно. В некоторых случаях даже не рекомендуется.
1) При обновлении софта происходит остановка соответствующей службы. Как отнесутся к этому пользователи сервиса, если будет остановлен файловый сервер (самба), а если с ним работают бухгалтеры в 1С? На сколько критична остановка сервера баз данных? А если это какая-то платежная система? Поэтому обновление программ требует вдумчивой осторожности.
2) После обновления может оказаться устаревшим синтаксис конфигурационных файлов. В таком случае соответствующая служба не запустится и потребуется некоторое время администратору на приведение конфигурационных файлов в соответствие с требованиями обновленной программы.
3) Во время обновления может возникнуть нештатная ситуация, когда произойдет рассинхронизация версий разных программ, работающих в одном комплексе.
На тестовом сервере можно как угодно экспериментировать, но в любом случае перед применением какой-то программы необходимо изучить документацию.
Поэтому лично я ни о какой автоматизации речи не веду и вести не буду. Только ручками, только под наблюдением. Но скрипты подобной автоматизации встречал. Гугл наверняка про них знает.