FreeBSD+ipfw+Squid+SquidGuard+… часть 5

Дополнительные программы

Следующий этап нашей работы — установка вспомогательных программ, без которых можно бы и обойтись… но не стоит 😉 Перво-наперво обеспечим себя средствами для загрузки и установки программ.

Программы на компьютере с FreeBSD появляются двумя способами. Один из них — ручная сборка из исходников («ручная», это, пожалуй, громко сказано — чаще всего требуется набрать три-четыре команды). Другой — установка из портов (гигантской коллекции сценариев, в которых определено, что именно нужно загрузить, как установить и настроить). При установке ОС мы выбрали, в числе прочего, и коллекцию портов. Так что она у нас есть. Однако, прежде чем пользоваться, не мешает ее обновить… А средство обновления будет установлено из той самой коллекции, которая у нас есть. Переходим в каталог нужного нам порта (не забывая предварительно перейти под рута):

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

Ах, да. Забыл сказать: программу, которую мы сейчас будем собирать, зовут CVSup, и нужна нам ее версия без графического интерфейса (without GUI). Далее запускаем сборку:

# make install

Теперь компьютер автоматически загрузит требуемые компоненты, скомпилирует их и установит в нужное место дерева каталогов. Мы же можем немного отдохнуть.

Чтобы указать CVSup, откуда брать данные обновленных портов и все ли оттуда нам нужно, напишем конфигурационный файл:

# ee /etc/cvsupfile

Выглядеть он будет примерно вот так:

*default host=cvsup.ru.freebsd.org
*default base=/usr
*default prefix=/usr
*default release=cvs
*default tag=.
*default delete=use-rel-suffix
# можно было бы обновить все порты разом:
# ports-all
# но мы обновляем только необходимые
# некоторые строчки я закомментировал,
# поскольку сейчас они мне не нужны
#ports-archivers
#ports-converters
#ports-databases
ports-devel
#ports-dns
#ports-editors
#ports-graphics
ports-ftp
ports-lang
#ports-mail
#ports-net
#ports-net-mgmt
ports-russian
#ports-security
#ports-shells
#ports-sysutils
ports-www

Теперь запустим обновление портов:

# /usr/local/bin/cvsup -g -L 2 /etc/cvsupfile

Использованные ключи команды cvsup, во-первых, отключают попытки использовать графический интерфейс (-g), а во-вторых, устанавливают подробный вывод информации о каждом обновленном файле (-L 2). Если поставить цифру 1 (или вообще убрать ключ L), обновленные файлы будут просто перечисляться. Ноль вообще отключит всякий вывод, кроме информации об ошибках. На будущее, вполне возможно, Вы предпочтете именно этот, последний, вариант.

Если обновляющихся портов выбрано много, а канал в Интернет сравнительно медленный, процесс может затянуться не на один десяток минут. Зато он не требует никаких действий со стороны пользователя, и по окончании у Вас будет полностью обновленное дерево портов. Установим из него несколько полезных программ.

Во-первых, совершенно необходимым для нас будет wget. Это утилита для загрузки файлов из Интернет (а нам нужно будет, помимо всяких мелочей, регулярно обновлять базу «нехороших» сайтов). Действуем практически так же, как и с CVSup:

# cd /usr/ports/ftp/wget

# make install

Далее тем же самым способом ставим браузер links:

# cd /usr/ports/www/links1

# make install

Поначалу гулять по Сети в текстовом режиме несколько непривычно, тем не менее, это совсем несложно. На красоты дизайна, конечно же, полюбоваться не удастся, но получать информацию можно не хуже, чем с IE или FF.

Несколько сложней будет установить файловый менеджер Midnight Commander (по своему назначению и интерфейсу он очень похож на хорошо известный Norton Commander и его родственников). Из дерева портов мы сможем установить только необходимую для его работы библиотеку glib:

# cd /usr/ports/devel/glib12

# make install

А вот саму программу придется собирать из исходников. Для выполнения большей части действий права суперпользователя нам сейчас не нужны, так что вернемся к своему обычному статусу (помните команду exit?). В своем домашнем каталоге создадим подкаталог, куда будем скачивать исходники программ, и перейдем в него:

$ cd ~

$ mkdir install

$ cd install

Запускаем отсюда links и заходим на сайт http://www.ibiblio.org/mc/

$ links http://www.ibiblio.org/mc/

Скачиваем исходники (source) последней стабильной версии (у меня это была версия 4.6.1). Затем выходим из links, разворачиваем загруженный архив, переходим в получившийся каталог и настраиваем, какой вариант программы нужно собрать.

$ tar xzfv mc-4.6.1.tar.gz

$ cd mc-4.6.1

$ ./configure --with-edit --without-x --enable-charset=yes

Обратите внимание на эту характерную особенность unix-подобных систем: мы можем не только выбрать набор программ по своему вкусу, но и многие из этих программ оптимизировать под свои нужды. Мнения на этот счет есть прямо противоположные. Кто-то предпочитает строить рабочий процесс из большого числа программ, каждая из которых выполняет одну задачу, зато максимально эффективно. Кого-то такой подход приводит в ужас: пусть будет несколькосотмегабайтный монстр, 99% функций которого в повседневной работе совершенно не нужны, но если вдруг что-то понадобится…

Теперь выполняем сборку и, если все завершилось нормально (т.е. без сообщений об ошибках — строк со словами ERROR), вновь становимся суперпользователем и устанавливаем готовую программу.

$ make

$ su

# make install

Теперь можно включить наш файловый менеджер… Стоп! По умолчанию он запускается в черно-белом режиме, однако у Вас, я думаю, монитор — цветной, так что отказываться от цвета было бы глупо. Чтобы Midnight Commander работал в полноцветном режиме, его нужно запускать с ключом -c… или создать новую команду, написав файл сценария. Это совсем просто:

# ee /usr/local/bin/midc

Файл будет состоять из единственной строки:

mc -c

А чтобы компьютер понял, что это не какие-то там данные, а программа, которую нужно исполнять, мы просто соответствующим образом выставляем права доступа:

С командой chmod (Change Mode = сменить режим) рекомендую очень хорошо разобраться. Она бывает нужна регулярно. Пока поясню, что число 755 обозначает, что владелец файла (в данном случае, root) может делать с файлом всё, что угодно (первая цифра — 7); члены административной группы wheel (вторая цифра) и все остальные (третья цифра) — просматривать файл и запускать его (но не изменять).

# chmod 755 /usr/local/bin/midc

Пока что для запуска нашего командного файла придется указывать полный путь:

$ /usr/local/bin/midc

Но уже после следующего входа в систему эта команда будет действовать абсолютно также, как и все существовавшие ранее, т.е. запускать Midnight Commander мы будем просто набирая

$ midc

Add a Comment