2020-10 upd: we reached the first fundraising goal and rented a server in Hetzner for development! Thank you for donating !
Внимание! Данные страницы описывают CBSD версии 13.0.x. Если вы используете более раннюю версию, рекомендуется сначала обновиться.
Работа с ПО и pkg(7) в jail через CBSD
Команда pkg
% cbsd pkg
Описание:
cbsd pkg - это обертка вокруг стандартного FreeBSD pkg(7) для использования аргумента jname для более комфортной работы с ПО клетки из мастер-хоста.
Через аргумент mode= указывается необходимое действие. Значения могут быть:
- add,install - установить ПО
- remove - удалить ПО
- bootstrap - проинициализировать pkg (обычно делается при создании клетки 1 раз)
- info, query - выполнить соответствующие запросы info или query с аналогичным pkg синтаксисом
- update - выполнить pkg update
- upgrade - выполнить upgrade
Имейте ввиду, что вначале должны указываться параметры mode и jname. Все что идет после - не анализируется и относиться к pkg(7) как есть.
Кроме этого, учтите, что все операции выполняются с аргументом -y для подавления интерактивности, что в основном, необходимо для работы в автоматизированных сценариях.
Пример1: Получить список установленного ПО в клетке jail1:
% cbsd pkg mode=query jname=jail1 %o
Пример2: Установить bash, mc, wget в клетку mytest1:
% cbsd pkg mode=install jname=mytest1 bash mc wget
или, что гораздо лучше (во избежание одинаковых имен в разных категориях), указывать origin пакета, а не имя:
% cbsd pkg mode=install jname=mytest1 shells/bash ftp/wget misc/mc
Пример3: Обновить пакет mc в клетке jail1:
% cbsd pkg mode=upgrade jname=jail1 mc
Пример4: Обновить все пакеты jail1:
% cbsd pkg mode=upgrade jname=jail1
Пример5: Удалить пакеты wget и lsof:
% cbsd pkg mode=remove jname=jail1 wget lsof