Опубликован: 04.07.2008 | Уровень: специалист | Доступ: платный | ВУЗ: Европейский Университет в Санкт-Петербурге
Лекция 2:

Настройка ядра, добавление оборудования, установка программ и обновлений

< Лекция 1 || Лекция 2: 1234 || Лекция 3 >

Установка программ и обновлений

Существует несколько способов установить программу или пакет программ в UNIX. Способ, который выберете вы, зависит от того, в каком виде доступен пакет программ, который вам требуется. Если пакет доступен только в виде набора исполняемых файлов, уже скомпилированных для вашей платформы, то выбор невелик: придется устанавливать то, что имеется.

Найти пакет. Например, хочется иметь более наглядное средство наблюдения за процессами, чем ps. На sunfreeware.com ищем top и загружаем его на свой компьютер. Если прямо с sunfreeware его получить не удается, набираем имя файла top-3.5-sol9-intel-local.gz в строке поиска Google и получаем достаточное количество ссылок на ftp-серверы, где он лежит. Такое бывает часто: сервер sunfreeware перегружен и не всегда готов принять посетителя.

Теперь распаковываем подарочек...

gunzip top-3.5-sol9-intel-local.gz

Распакованное представляет собой файл пакета. Надо указать команде pkgadd, что именно отсюда мы будем пакет устанавливать:

pkgadd -d top-3.5-sol9-intel-local
The following packages are available:
1 SMCtop top
(intel) 3.5
Select package(s) you wish to process (or 'all' to process
all packages). (default: all) [?,??,q]: y
ERROR: Entry does not match available menu selection. Enter the
number of the menu item you wish to select, or the token which is
associated with the menu item, or a partial string which uniquely
identifies the token for the menu item. Enter ?? to reprint the
menu.
Select package(s) you wish to process (or 'all' to process
all packages). (default: all) [?,??,q]: all

Ошибка вызвана тем, что мы поторопились ввести y в ответ на вопрос: привычка сказывается. Честно напишем all, чтобы установить все программы, которые доступны в пакете. После этого получаем:

Processing package instance <SMCtop> from </export/home/top-3.5-
sol9-intel-local>
top
(intel) 3.5
William LeFebvre
Using </usr/local> as the package base directory.
## Processing package information.
## Processing system information.
4 package pathnames are already properly installed.
## Verifying disk space requirements.
## Checking for conflicts with packages already installed.
## Checking for setuid/setgid programs.
The following files are being installed with setuid and/or setgid
permissions:
/usr/local/bin/top <setgid sys>

Наконец, вопрос, на который как раз следует ответить утвердительно:

Do you want to install these as setuid/setgid files [y,n,?,q] y
Installing top as <SMCtop>
## Installing part 1 of 1.
/usr/local/bin/top
/usr
/usr/local/doc/top/Changes
/usr/local/doc/top/FAQ
/usr/local/doc/top/INSTALL
/usr/local/doc/top/Porting
/usr/local/doc/top/README
/usr/local/doc/top/SYNOPSIS
/usr/local/man/man1/top.1
[ verifying class <none> ]
Installation of <SMCtop> was successful.

Можно проверить, удачно ли установился пакет, командой

# pkginfo | grep top
application SMCtop top
system SUNWdtcor Solaris Desktop /usr/dt filesystem anchor
system SUNWdtdst CDE Desktop Applications
system SUNWdtdte Solaris Desktop Login Environment
system SUNWdtezt Solaris Desktop Extensions Applications
system SUNWdthez Desktop Power Pack Help Volumes
system SUNWdtlog System boot for Desktop Login
system SUNWdtmaz Desktop Power Pack man pages
system SUNWeuodf UTF-8 Core OPENLOOK Desktop Files
system SUNWsadmi Solstice Enterprise Agents 1.0.3 Desktop
Management Interface

Как видно, пакетов, в названиях которых имеется подстрока top, установлено немало, и наш свежий – на самом первом месте.

Удалить пакет можно командой pkgrm, например:

pkgrm SMCtop.

Иногда бывает необходимо не просто установить пакет, который получен в виде набора исполняемых файлов и документации, а собрать его из исходных текстов. В этом случае надо следовать инструкциям по установке, которые обычно находятся в файлах README и INSTALL дистрибутива пакета. В любом случае вам понадобится программа make (поставляется в комплекте с Solaris).

Коммерческая версия компилятора С фирмы Sun в версиях до Solaris 9 включительно не поставлялась с бесплатным набором компакт-дисков дистрибутива Solaris. Его надо было покупать отдельно. Однако начиная с версии Solaris 10, компиляторы с языков C, C++ и FORTRAN входят в бесплатно распространяемый пакет Sun Studio. Этот пакет можно получить бесплатно на диске с дистрибутивом Solaris Express Developer Edition (он устанавливается автоматически при выборе установки в графическом режиме) или загрузить из Сети отдельно. Кроме того, его всегда можно установить с дистрибутивного диска Solaris Express Developer Edition. Имя пакета Sun Studio – SUNWspro.

В комплект дистрибутива Solaris начиная с версии 10 входит компилятор gcc, но предположим, что мы хотим взять оригинальный пакет с веб-сайта разработчика gcc и загрузим файл gcc_small-3.3.2-sol9-intellocal.gz, после чего установим пакет gcc для последующей компиляции программы из исходных текстов. Разумеется, если у нас уже установлен Sun Studio, мы можем воспользоваться им. Вернемся пока к установке пакетов на примере gcc:

pkgadd gcc_small-3.3.2-sol9-intel-local.gz
pkgadd: ERROR: no packages were found in </var/spool/pkg>

Ошибка: файл пакета сжат, ему требуется декомпрессия, кроме того, имя файла пакета надо указывать с ключом d

gunzip gcc_small-3.3.2-sol9-intel-local.gz
ls
gcc_small-3.3.2-sol9-intel-local
pkgadd -d gcc_small-3.3.2-sol9-intel-local
The following packages are available:
1 SMCgcc gcc
(intel) 3.3.2
Select package(s) you wish to process (or 'all' to process
all packages). (default: all) [?,??,q]:

Далее действуем, как в предыдущем примере.

При установке программ из исходных текстов следует руководствоваться инструкциями из файлов README и INSTALL, которые присутствуют в дистрибутиве.

Проверка содержимого пакетов и перечня установленного ПО

pkginfo
application SMCtop top
system SUNW1251f Russian 1251 fonts
ALE SUNW5ttf Traditional Chinese BIG5 True Type
Fonts Package
ALE SUNW5xmft Traditional Chinese (BIG5) X Windows
Platform minimum required Fonts Package
system SUNWGlib GLIB - Library of useful routines f
or C programming
system SUNWGtkr GTK - The GIMP Toolkit (Root)
system SUNWGtku GTK - The GIMP Toolkit (Usr)
system SUNWTcl Tcl - Tool Command Language
system SUNWTiff libtiff - library for reading and w
pkginfo -l SMCtop
PKGINST: SMCtop
NAME: top
CATEGORY: application
ARCH: intel
VERSION: 3.5
BASEDIR: /usr/local
VENDOR: William LeFebvre
PSTAMP: Steve Christensen
INSTDATE: Апр 21 2004 14:47
EMAIL: steve@smc.vnet.net
STATUS: completely installed
FILES: 13 installed pathnames
4 shared pathnames
5 directories
1 executables
1 setuid/setgid executables
258 blocks used (approx)

Загрузка пакетов с BlastWave.org

Кроме стандартного диспетчера пакетов pkgadd/pkginfo в Solaris допустимо использование диспетчера пакетов стороннего производителя. С веб-сайта blastwave.org можно скачать программу pkg-get, которая служит для автоматического скачивания, удовлетворения зависимостей и установки пакетов и всех пакетов, от которых устанавливаемый пакет зависит. Для корректной работы pkg-get следует выполнить следующее (все делается при работе в роли администратора root ):

  • если требуется использовать прокси-сервер, создать и экспортировать соответствующую переменную среды окружения:
    export http_proxy="http://my.proxy.server.com:3128"
  • установить pkg-ge t с веб-сайта blastwave:
    pkgadd -d http://www.blastwave.org/pkg_get.pkg

После того как pkg-get установится ровно так, как было описано в предыдущем разделе, следует открыть страницу с полным списком доступных на blastwave.org пакетов (http://www.blastwave.org/packages.php), найти нужный вам пакет и в окне терминала вашего компьютера дать команду pkg-get -i имя_пакета

< Лекция 1 || Лекция 2: 1234 || Лекция 3 >
Александр Тагильцев
Александр Тагильцев

Где проводится профессиональная переподготовка "Системное администрирование Windows"? Что-то я не совсем понял как проводится обучение.

Анатолий Натрусов
Анатолий Натрусов
Россия
Виктор Саркисов
Виктор Саркисов
Россия, Нижний Новгород, НГТУ, 2001