Сервер на базе FreeBSD. Настройка portsnap
В прошлой статье Сервер на базе FreeBSD. III. Добавление пользователя мы научились добавлять в систему пользователей. Для более удобной работы с повышением прав будем использовать утилиту sudo. Однако для того, чтоб воспользоваться утилитой, нам необходимо ее сначала установить:).
Вспомним, что изначально мы использовали минимальную конфигурацию установки, соответственно устанавливать нам придется много. Также мы должны иметь доступ к Интернету. Однако, поскольку мы ставили FreeBSD с главного FTP-сервера, то доступ к Интернет мы должны иметь. Sysinstall конфигурирует сетевую карту после установки так же, как мы это делали в процессе установки.
В FreeBSD есть два варианта установки ПО. Первый — из так называемых пакетов (packages), которые представляют собой уже скомпилированные бинарники, а второй — из «портов» (ports). Порт FreeBSD — это совокупность нескольких текстовых файлов, в которых содержится информация о приложении, путь к исходным текстам в Интернете и make-файл с информацией для сборки. Я предпочитаю именно этот вид установки.
Для управления базой портов в системе есть утилита portsnap. Синтаксис и настройка предельно просты. Первый запуск:
#portsnap fetch extract
После выполнения этой команды создается директория /usr/ports и в нее распаковывается дерево портов.
Последующие запуски portsnap выполняются следующим образом:
#portsnap fetch update
Однако, чтоб не вводить эти команды каждый день вручную, следовало бы добавить вызов portsnap в файл /etc/crontab, для регулярного выполнения системой. Однако тут есть своя тонкость. portsnap не будет работать по cron’y просто так, а только по специальной команде portsnap cron. Это сделано разработчиками специально для снижения нагрузки на центральные сервера. Итак, открываем файл /etc/crontab:
#ee /etc/crontab
И в самом низу дописываем следующую строку:
* 3 * * * root portsnap -I cron update
Теперь каждую ночь в 3 часа (+случайно выбранное количество часов) наше дерево портов будет обновляться и утром ждать нас в актуальном состоянии.
Далее: Сервер на базе FreeBSD. Установка sudo.


