Статистика
Сегодня: 105 Онлайн: 0
Опрос

Помог ли наш сайт решить Вашу проблему?

View Results

Загрузка ... Загрузка ...

Друзья и коллеги

Технология жизни - технология будущего

#Записки сисадмина

Denis Tulyakov

PostHeaderIcon Порты (ports) FreeBSD

Ну-с, сегодня я наконец-то осилил установку FreeBSD :)) Ну если честно — осилил я её уже давно, но всё никак не хватало времени довести её до конца (ибо компик дохленький был:( да и нужды особо не было).

И вот после русификации консоли (чёртова KOI8-R :( ), я приступил к самому главному … к более глубокому изучению работы системы портов в FreeBSD (сразу извиняюсь за возможные неточности ибо сам новичёк, но чтоб не забыть — записываю тута).
Чем мне нравится Gentoo ? Ну да, сборка live версий из SVN — это отдельный разговор (буду учиться делать такой же финт и во фряхе ^_^). Но ещё мне очень сильно нравится тамошняя система portage (которая кстати берёт своё начало, а точнее основы, с системы портов) — всё очень удобно и логично в ней (несколько постов назад я уже рассказывал о ней). И вот решил я навести такой же порядок и в системе портов FreeBSD … и что же я вижу когда пытаюсь поставить какую-либо программу? Ну да, она качается, ставится, даже соблюдает все зависимости, но вот только делает она это всё сама и совсем без моего участия (и фиг знает сколько она пакетов собирается ставить …). В Gentoo перед установкой какой-либо проги сразу выводится список зависимостей которые надо поставить или обновить. Вот и здесь я искал подобный функционал … и нашёл!
Переходим от слов к делу:

1
porteasy - A tool for fetching and building ports.

Но не так она проста как кажется … и вот основные фишки:

1
2
3
4
5
6
7
8
9
  - automatically update the necessary files (and only the necessary
files) using CVS (including anoncvs support)
- list all of a port's dependencies, optionally hiding those that
are already installed
- fetch all the necessary distfiles right away, in a single batch,
so you don'
t have to wait for one dependency to build before
fetching the next one's distfile.  Dialup users will love this.
- build and install arbitrary ports.
- build packages.

Особенно радует пункт №2. То что нужно.

Не много о флагах программы:

1
2
3
-e - Убрать из списка порты, которые уже установлены в системе
-l - Показать выбранные порты (в данном случае они как зависимости от одного порта)
-s - Показать индикатор статуса (см. ниже) рядом с каждым выбранным (см.выше) портом

Статусы:

1
2
3
4
`!` - Не установлено
` ` - Стоит последняя версия
`<` - Стоит, но старее, чем версия в портах
`>` - Стоит, но новее, чем версия в портах

Вывод зависимостей, которые не установлены в системе, для определённой версии программы (которую мы собираемся ставить) на примере mplayer:

1
porteasy -le mplayer-0.99.11_14 | less

А эта команда покажет полный список зависимостей mplayer, но с пометками (статусы) рядом с некоторыми зависимостями (например которые не установлены или которые можно обновить):

1
porteasy -ls mplayer-0.99.11_14 | less

На этом пока что всё — по возможности буду пополнять список.

И вот ещё, пока не забыл (жосский копи-паст):

1
2
3
4
5
6
porteasy will also assist in keeping your software up-to-date. I create a script like this:
echo "Updating installed ports skeletons"
porteasy -uI

echo "The following ports need upgrading:"
porteasy -s |grep "<"

Оставить комментарий

PR-CY.ru