The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Обновление локального дерева портов в FreeBSD (freebsd upgrade port install)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: freebsd, upgrade, port, install,  (найти похожие документы)
From: Евгений А. Беденко <bedenko@cbor.ru> Subject: Обновление локального дерева портов в FreeBSD Обновление локального дерева портов. Программное обеспечение для FreeBSD постоянно усовершенствуется. И чтобы идти в ногу со временем, нужно хотя бы раз в месяц обновлять его. В данной статье мы рассмотрим обновление локального дерева портов и немного затронем обновление программ при помощи набора портов. Порт - это один из очень удобных способов установки программного обеспечения для FreeBSD. Чтобы установить нужную программу достаточно войти в директорию с нужным портом и дать всего одну команду make install. Что же происходит при выполнении make install? 1. Если в каталоге /usr/ports/distfiles не обнаружен устанавливаемый пакет, то выполняется команда make fetch. Загружается с ftp сервера исходный tar-архив и копируется в каталог /usr/ports/distfiles. Проверяются зависимость от других пакетов, нужные скачиваются. 2. Выполняется команда make checksum. Т.е. проверяется подлинность архива tar. 3. Далее архив расспаковывается в рабочий каталог work (make extract). 4. В исходный код вносятся исправления из каталога files (make patch). 5. Выполняется сценарий конфигурирования make configure. 6. Компилируется исходный код (make build) 7. Копирование файлов в соответствующие каталоги (make install). После инсталляции порта, запись о нем создается в каталоге /var/db/pkg/. Ну чтож за дело! Для обновления локального дерева портов нам понадобится пакет cvsup. Установим его. # cd /usr/ports/net/cvsup/ # make install Создадим конфигурацию при помощи псевдо-порта cvsupit # cd /usr/ports/net/cvsupit/ # make # make install На экране должно появится меню псевдо-порта cvsupit. Выберите пункт меню The 5.0-current branch (.=HEAD). В остальных меню примите все по умолчанию (не устанавливайте исходники /src) и откажитесь от обновления CVSup. В каталоге /etc должен появится файл cvsupfile. Откройте его и закоментируйте все строки начинающиеся с src. Должно получится примерно следующее: *default host=cvsup.ru.FreeBSD.org *default base=/usr *default prefix=/usr *default release=cvs *default tag=. *default delete use-rel-suffix # src-all *default tag=. ports-all doc-all А теперь самое главное - обновляем порты: # /usr/local/bin/cvsup -g -L 2 /etc/cvsupfile Я обновляю дерево портов каждую неделю через cron. Я создал файлик cvsup_up.sh в /usr/local/sbin/ и поместил в него команду обновления портов (см. выше). В /etc/crontab добавил следующую строчку 35 23 * * 6 root /usr/local/sbin/cvsup_up.sh Чтобы посмотреть какие программы мне нужно обновить, я использую команду # pkg_version -v > /tmp/newport Для обновления какой-либо программы заходим в нужный порт и последовательно выполняем следующие команды: # make clean # make # pkg_delete -f имя_пакета # make install clean имя_пакета - это название установленного ранее пакета (например cvsup-6.1_3)

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

Обсуждение [ Линейный режим | Показать все | RSS ]
  • 1.1, Аноним (1), 13:40, 01/04/2003 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Для обновления какого-либо порта лучше юзать /usr/ports/sysutils/portupgrade!
    Возможно это и IMHO, но я настоятельно рекомендую именно portupgrade.

    Андрей

     
  • 1.2, Аноним (1), 18:09, 08/04/2003 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Маленькое замечание!
    > Что же происходит при выполнении make install?  

    > 1. Если в каталоге /usr/ports/distfiles не обнаружен устанавливаемый
      пакет...

    После этого, перед "make fetch", проверяется наличие исходников в /cdrom/ports/distfiles

    И ещё вопрос. Можно ли работать с CVS через http или socks прокси? Я сижу за корпоративным firewall'ом и могу ходить в Интернет только через прокси.

    С уважением
    Алексей

     
  • 1.3, TruthSeeker (?), 09:26, 15/04/2003 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    2Алексей: можно. Через socks. Юзай runsocks из NEC socks5 или socksify из dante.
     
  • 1.4, Рысь (?), 11:33, 02/06/2003 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    2Алексей:
    так же можно юзать в настройках:

    '.cshrc':
    setenv  SOCKS_SERVER    192.168.1.1:1080  
    setenv  HTTP_PROXY      192.168.1.1:3128  
    setenv  HTTP_PROXY_AUTH "basic:*:login:pass"

     
  • 1.5, ESTAF (?), 14:12, 19/07/2003 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А интересно
    Какой клиент работает в роли закачки файлов не при апдейте а при "make" в портах?
    И можно ли подменить его на "wget":)?

    ==============
    Ибо, стопор бывает жуткий.

     
     
  • 2.6, ert (?), 16:47, 20/07/2003 [^] [^^] [^^^] [ответить]  
  • +/
    man make.conf
    FETCH_CMD=...........
     

  • 1.7, TheSam (?), 21:09, 19/08/2003 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    а как сделать аутентификацию для socks сервера???
     
  • 1.8, Dary (?), 03:48, 06/04/2004 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Берем Фрю 4.8 > там уже стоит cvsup.
    Берем 5.2
    >cd /usr/ports/net/cvsupit/
    su: cd: /usr/ports/net/cvsupit/: No such file or directory
    Хотя, все порты с диска стоят.
     
     
  • 2.10, Pascal1 (?), 11:37, 12/05/2004 [^] [^^] [^^^] [ответить]  
  • +/
    >su: cd: /usr/ports/net/cvsupit/: No such file or directory
    можно так:
    cp /usr/share/examples/cvsup /etc/cvsupfile

     

  • 1.9, Dary (?), 03:56, 06/04/2004 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    portupgrade видимо нужно настраивать на инет ибо:
    root:portupgrade>portupgrade mc
    root:portupgrade>
    При этом модем молчал, хотя midnight у меня древнейший.
     
  • 1.11, EsTaF (??), 07:16, 07/11/2004 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/

    ))
    Видимо, эти порты вообще н&& никоме не сдались ...)
    столько времени прошло.. а ни одного обсуждения
    Как я понял, вопрос открыт остался
     
  • 1.12, lissyara (?), 19:20, 06/03/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Просто обновление их никому не надо. Потом по полдня ковыряешься - а почему что-то престало работать.... А вот до обновления работало (имеется ввиду при совместном использовании portupgrade&&portaudit)
     
  • 1.13, iroma (?), 19:33, 17/03/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    У меня при обновлении портов не проходит команда
    make install
    # make install
    *****************************************************
    * To build CVSup without X11 (and without the GUI), *
    * use the "net/cvsup-without-gui" port.             *
    *****************************************************
    >> cvsup-snap-16.1h.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
    >> Attempting to fetch from ftp://ftp.ukr.net/pub/FreeBSD/ports/distfiles/.
    fetch: ftp://ftp.ukr.net/pub/FreeBSD/ports/distfiles/cvsup-snap-16.1h.tar.gz: Operation timed out
    >> Attempting to fetch from ftp://ftp.lucky.net/pub/FreeBSD/ports/distfiles/.Operation timed out

    где прописана ссылка на FTP - в каком файле?
    спасибо

     
  • 1.14, Даниил (?), 07:12, 06/08/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вопрос нимного не потоме но всеравно. я очень долго пытался настроить fetch ,чтобы он работал с авторизацией на прокси сервере в мане написано что надо установить переменнные:
    setenv HTTP_PROXY=HTTP_PROXY=http://proxy.example.com:8080

    HTTP_PROXY_AUTH=basic:*:<user>:<pwd>
    я прописывал все как надо но ниче неработало, тока после прочтения вашего совета все настроил, но ваш синтаксис немного отличается. обьясните почему?? неужели маны не рулят??

     
  • 1.15, Valery S. (?), 22:11, 02/09/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Сам сижу за ПроксиСервером. Пробраться через него, оказывается не сложно:
    в /etc/make.conf надо прописать
    HTTP_PROXY="http://PROXY_IP:PROXY_PORT"
    FTP_PROXY="http://PROXY_IP:PROXY_PORT"

    а в переменные среды вписать что-то типо

    setenv HTTP_PROXY "http://username:passwd@PROXY_IP:PROXY_PORT"
    FTP_PROXY "http://username:passwd@PROXY_IP:PROXY_PORT"

    ну, понятно, что user и passwd - это те, с которыми Ты авторизуешься на PROXY

     
  • 1.16, Valery S. (?), 22:14, 02/09/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    а ё! последние 2 значащие строки у меня должны были быть такие!

    setenv HTTP_PROXY "http://username:passwd@PROXY_IP:PROXY_PORT"
    setenv FTP_PROXY "http://username:passwd@PROXY_IP:PROXY_PORT"

     
  • 1.17, Вячеслав (??), 12:44, 10/12/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Мне вот интересно, нужно ли удалять все установленные пакеты, перед тем, как запустить CVSUP? У меня заработало только после того, как удялали все установленные паккаджи.
     
  • 1.18, wp2 (?), 20:16, 09/03/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Ну чтож за дело!

    после "чтож" надо запятую поставить)))

     
  • 1.19, Павел (??), 10:55, 15/10/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Кстати, при установке или обновлении портов, Hyperthreading лучше отключить. Компилятор работает в один поток, а включеный гипертреадинг ополовинивает производительность доступную одному потоку.
     
  • 1.21, onlineoffice.dn.ua (?), 17:08, 15/09/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вопрос нимного не потоме но всеравно. я очень долго пытался настроить fetch ,чтобы он работал с авторизацией на прокси сервере в мане написано что надо установить переменнные:
    setenv HTTP_PROXY=HTTP_PROXY=http://true-false.net/ :8080 и ничего не получается, подскажите что делать?
     

    игнорирование участников | лог модерирования

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру