Устнановка программ  pkg_add ports И из изходных текстов

 1. pkg_add

Для установки пакета со всеми его зависимостями достаточно дать команду: 

$ pkg_add -r pkg_name 

причем не нужно указывать не только путь, но и номер версии/ревизии.

 2. ports

 Если вы знаете точное имя порта, и хотите определить, в какой категории он находится, используйте команду whereis(1). Просто наберите в приглашении ''whereis file'', где file - программа, которую вы хотите установить. И если она имеется в системе, об этом будет сообщено, как показано ниже:

#whereis lsof lsof: /usr/ports/sysutils/lsof

Это говорит о том, что lsof (системная утилита) находится в каталоге /usr/ports/sysutils/lsof.

 Ещё одним способом поиска некоторого порта является использование встроенной возможности поиска в Коллекции Портов. Чтобы ею воспользоваться, вы должны находиться в каталоге /usr/ports. Очутившись в этом каталоге, выполните команду make search name=program-name, где program-name - это название программы, которую вы хотите найти. Например, если вы ищете lsof:

#cd /usr/ports

#make search name=lsof Port: lsof-4.56.4

 Port: lsof-4.56.4

Path: /usr/ports/sysutils/lsof

Info: Lists information about open files (similar to fstat(1))

Maint: obrien@FreeBSD.org

Index: sysutils

B-deps:

R-deps:

Вам следует обратить особое внимание на строчку  ''Path:'', так как в ней указывается, где найти порт. Остальная сообщаемая информация для установки порта не нужна, поэтому здесь она описываться не будет.

 3.  из изходных текстов

Скачиваем архив

  •  tar xzf blablala.tgz              -надо разархивировать
  •  cd blablabla                       -переходим в каталог
  •  ee README/blablabla        -читаем README файл
  •  ./configure                          -запускаем 
  •  make                                 -

переходим к УСТАНОВКи ПРОГРАММЫ  на примере

cd /usr/ports/net/cvsup (это пример)

make config                 Это файл  создает в этой директории /var/db/ports/имя/options (запонился в этом файле)

make                           все компиляционные действия и скомилрованные файлы находяться  тут /usr/ports/net/cvsup/work

make test

make install 

make install clean        удаляет файл /usr/ports/net/cvsup/work

make distclean             удаляеться файлы с /usr/ports/diskfiles

 

myserver# cd /usr/ports

myserver# ls
.cvsignore benchmarks hungarian print
CHANGES biology irc russian
COPYRIGHT cad japanese science
GIDs chinese java security
INDEX-8 comms korean shells
KNOBS converters lang sysutils
LEGAL databases mail textproc
MOVED deskutils math ukrainian
Makefile devel mbone vietnamese
Mk distfiles misc www
README dns multimedia x11
Templates editors net x11-clocks
Tools emulators net-im x11-drivers
UIDs finance net-mgmt x11-fm
UPDATING french net-p2p x11-fonts
accessibility ftp news x11-servers
arabic games palm x11-themes
archivers german polish x11-toolkits
astro graphics ports-mgmt x11-wm
audio hebrew portuguese

/usr/ports/distfiles   тут находяться файлы когда скачиваються и они прописанны в makefile

myserver# ls -l /usr/ports/distfiles/
total 4074
-rw-r--r-- 1 root wheel 1381988 Sep 23 2010 autoconf-2.68.tar.bz2
-rw-r--r-- 1 root wheel 1066685 Dec 9 2009 automake-1.11.1.tar.bz2
-rw-r--r-- 1 root wheel 7693 Jun 1 2005 gettext-1.05.tar.gz
-rw-r--r-- 1 root wheel 149314 Dec 28 2010 help2man-1.38.4.tar.gz
-rw-r--r-- 1 root wheel 1151445 Apr 1 2006 make-3.81.tar.bz2
-rw-r--r-- 1 root wheel 30588 Nov 13 2010 mime-support_3.51-1.tar.gz
drwxr-xr-x 2 root wheel 512 Feb 19 15:25 mutt
-rw-r--r-- 1 root wheel 275360 May 30 2008 zh-autoconvert-0.3.16.tar.gz

Установленные программы находяться /usr/local/etc/*.conf   запускаться  /usr/local/etc/rc.d/программа

Программы установленные  с системой находяться тут /etc/*.conf  запускаються /etc/rc.d/программа

УСТАНОВКИ ПРОГРАММЫ из портов  НА ПРИМЕРЕ cvsup-without-gui

myserver# whereis cvsup-without-gui               -поиск программы

cvsup-without-gui: /usr/ports/net/cvsup-without-gui

myserver# cd /usr/ports/net/cvsup-without-gui

myserver# make config
===> No options to configure

myserver# make test
make: don't know how to make test. Stop

myserver# make

===> Vulnerability check disabled, database not found
===> License check disabled, port has not defined LICENSE
=> cvsup-snap-16.1h.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
=> Attempting to fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/development/CVSup/snapshots//cvsup-snap-16.1h.tar.gz
cvsup-snap-16.1h.tar.gz 100% of 420 kB 120 kBps
===> Extracting for cvsup-without-gui-16.1h_4
=> SHA256 Checksum OK for cvsup-snap-16.1h.tar.gz.

 myserver# make install

 myserver# ls /usr/share/examples/cvsup/ports-supfile

/usr/share/examples/cvsup/ports-supfile
myserver# cp /usr/share/examples/cvsup/ports-supfile /root

myserver# ee /root/ports-supfile

 

$FreeBSD: src/share/examples/cvsup/ports-supfile,v 1.38.10.1.6.1 2010/12/21 17
#
# This file contains all of the "CVSup collections" that make up the
# FreeBSD-current ports collection.
#
# CVSup (CVS Update Protocol) allows you to download the latest CVS
# tree (or any branch of development therefrom) to your system easily
# and efficiently (far more so than with sup, which CVSup is aimed
# at replacing). If you're running CVSup interactively, and are
# currently using an X display server, you should run CVSup as follows
# to keep your CVS tree up-to-date:
#
# cvsup ports-supfile


#cvsup -g -L 2 ports-supfile

#
# You may wish to change some of the settings in this file to better
# suit your system:
#
# host=CHANGE_THIS.FreeBSD.org
# This specifies the server host which will supply the
# file updates. You must change it to one of the CVSup
mirror sites listed in the FreeBSD Handbook at
# http://www.freebsd.org/doc/handbook/mirrors.html.
# You can override this setting on the command line
# with cvsup's "-h host" option.


# If not running X, or invoking cvsup from a non-interactive script, then
# run it as follows:

# Defaults that apply to all the collections
#
# IMPORTANT: Change the next line to use one of the CVSup mirror sites
# listed at http://www.freebsd.org/doc/handbook/mirrors.html.
*default host=cvsup5.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=.
*default delete use-rel-suffix

И чуть ниже порты которые хотим обновить

#ports-math
#ports-mbone
#ports-misc
ports-multimedia
#ports-net


[test@myserver ~]$ head -20 /root/ports-supfile    -это показывает первые 20 строк от файла ports-supfile

myserver# cvsup -g -L 2 /root/ports-supfile        -приступаем к обновлению потортов в моем случае обновляем дерево портов ports-multimedia

  

 

Это пример make config cvsup

myserver# make config      

FreeBSD 64-bit-2012-02-24-20-48-17

 

В директрории порта: если 
make fetch-recursive
make all-depends-list
make run-depends-list
make build-depends-list
make pretty-print-build-depends-list
make pretty-print-run-depends-list

И man ports  читаем маны.

КОМПИЛИРУЕМ ПРОГРАММУ ИЗ ИЗХОДНЫХ ТЕКСТОВ


myserver# pwd
/root
myserver# fetch http://www.sai.msu.su/apache//httpd/apache_1.3.42.tar.gz
apache_1.3.42.tar.gz 100% of 2598 kB 1015 kBps

myserver# tar xzf apache_1.3.42.tar.gz

myserver# cd apache_1.3.42

myserver# ls

ABOUT_APACHE NWGNUmakefile conf
INSTALL NWGNUtail.inc config.layout
LICENSE README configure
Makefile.tmpl README-WIN.TXT htdocs
NOTICE README.configure icons
NWGNUenvironment.inc WARNING-WIN.TXT logs
NWGNUhead.inc cgi-bin src


myserver# ee INSTALL

Installing the Apache 1.3 HTTP server with APACI
================================================

1. Overview for the impatient
--------------------------

$ ./configure --prefix=PREFIX
$ make
$ make install
$ PREFIX/bin/apachectl start

NOTE: PREFIX is not the string "PREFIX". Instead use the Unix
filesystem path under which Apache should be installed. For
instance use "/usr/local/apache" for PREFIX above.

myserver# ./configure

myserver# ls    -появился Makefile
ABOUT_APACHE NWGNUmakefile config.layout
INSTALL NWGNUtail.inc config.status
LICENSE README configure
Makefile README-WIN.TXT htdocs
Makefile.tmpl README.configure icons
NOTICE WARNING-WIN.TXT logs
NWGNUenvironment.inc cgi-bin src
NWGNUhead.inc conf

myserver# make test       -но не обязательно
make: don't know how to make test. Stop

myserver# make install

В конце компиляции

]
+--------------------------------------------------------+
| You now have successfully built and installed the |
| Apache 1.3 HTTP server. To verify that Apache actually |
| works correctly you now should first check the |
| (initially created or preserved) configuration files |
| |
| /usr/local/apache/conf/httpd.conf
| |
| and then you should be able to immediately fire up |
| Apache the first time by running: |
| |
| /usr/local/apache/bin/apachectl start
| |
| Thanks for using Apache. The Apache Group |
| http://www.apache.org/ |
+--------------------------------------------------------+

myserver# /usr/local/apache/bin/apachectl start
/usr/local/apache/bin/apachectl start: httpd started
myserver# sockstat -4
USER COMMAND PID FD PROTO LOCAL ADDRESS FOREIGN ADDRESS
nobody httpd 17406 16 tcp4 *:80 *:*
nobody httpd 17405 16 tcp4 *:80 *:*
nobody httpd 17404 16 tcp4 *:80 *:*
nobody httpd 17403 16 tcp4 *:80 *:*
nobody httpd 17402 16 tcp4 *:80 *:*
root httpd 17401 16 tcp4 *:80 *:*
root sshd 14784 3 tcp4 192.168.138.100:22 192.168.138.1:55800
test sshd 1104 3 tcp4 192.168.138.100:22 192.168.138.1:53411
root sshd 1102 3 tcp4 192.168.138.100:22 192.168.138.1:53411
root sshd 1084 3 tcp4 192.168.138.100:22 192.168.138.1:53055
root sendmail 936 3 tcp4 127.0.0.1:25 *:*
root sshd 928 4 tcp4 *:22 *:*
root syslogd 639 7 udp4 *:514

Открываем в браузере  http://192.168.138.100/   http://вашip