Конфигурирование установленной программы

FreeBSD, NetBSD, OpenBSD, DragonFly и т. д.

Модератор: arachnid

Аватара пользователя
Trojan
Сообщения: 359
Статус: Системный ламер
ОС: CentOS 7

Конфигурирование установленной программы

Сообщение Trojan »

Ребята, разъясните пожалуйста два вопроса по конфигурированию уже установленной и настроенной программы:

1. Если после установки переконфигурировать программу не затирается ли уже настроенный конфиг программы?
Например, если после установки и конфигурирования squid, не собьется ли squid.conf до дефолтных настроек после ./configure --enable-delay-pools?

2. Как правильно конфигурировать ./configure --опция make install clean или ./configure --опция && make all && make install или можно просто ./configure --опция?
Всегда думай то, что говоришь и никогда не говори то, что думаешь.

Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4471
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Конфигурирование установленной программы

Сообщение Rootlexx »

Trojan писал(а):
28.05.2010 20:20
Если после установки переконфигурировать программу не затирается ли уже настроенный конфиг программы?

configure - это скрипт. Так что в общем случае всё может быть. Но для основной массы ПО это маловероятно.
Trojan писал(а):
28.05.2010 20:20
2. Как правильно конфигурировать ./configure --опция make install clean или ./configure --опция && make all && make install или можно просто ./configure --опция?

Первый вариант вообще непонятен. Второй просто последовательно выполняет конфигурирование, сборку и установку (с учётом кода выхода предыдущей команды), "просто ./configure --опция" в данном случае в контексте конфигурирования ничем не отличается.
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Конфигурирование установленной программы

Сообщение watashiwa_daredeska »

Trojan писал(а):
28.05.2010 20:20
два вопроса по конфигурированию уже установленной и настроенной программы
У меня сложилось некоторое подозрение, что Вы не понимаете, что на самом деле делаете. Поясните, пожалуйста, что Вы делаете, с вашей точки зрения?
Спасибо сказали:
Аватара пользователя
Trojan
Сообщения: 359
Статус: Системный ламер
ОС: CentOS 7

Re: Конфигурирование установленной программы

Сообщение Trojan »

watashiwa_daredeska писал(а):
28.05.2010 21:26
У меня сложилось некоторое подозрение, что Вы не понимаете, что на самом деле делаете. Поясните, пожалуйста, что Вы делаете, с вашей точки зрения?

Изначально squid устанавливался просто для работы как прокси сервер. Без необходимости дополнительных настроек.
Сейчас появилась необходимость в шейпинге скорости. Для этого нужно сконфигурировать squid с опцией --enable-delay-pools.
Но т.к. как изначально у меня squid был установлен без этой опции то сейчас приходится этот самый squid так сказать доконфонфигурировать.
В связи с этим собственно и вопрос, если на установленную программу добавляется какая то дополнительная опция, ну например тот же --enable-delay-pools, не затирается ли при этом уже настроенный файл конфигурации программы.
Всегда думай то, что говоришь и никогда не говори то, что думаешь.

Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Конфигурирование установленной программы

Сообщение watashiwa_daredeska »

Ну, начнем с того, что ./configure не имеет никакого абсолютно отношения ни к каким файлам конфигурации. Это часть сборки из исходников. ./configure определяет, что и как будет собираться. Поэтому конфигурационный файл этот скрипт не тронет. Более того, этот скрипт не трогает «установленную программу», он вообще к ней отношения не имеет. ./configure && make && make install собирают и устанавливают новую программу поверх старой. Если пути (--prefix) совпадают. Если пути не совпадают, то будет установлена ещё одна копия squid. Ну, и т.д.

Моя телепатия мне подсказывает, что та версия, которая сейчас установлена, устанавливалась не ./configure && make && make install, а из пакетов дистрибутива. Я прав?
Спасибо сказали:
Аватара пользователя
Trojan
Сообщения: 359
Статус: Системный ламер
ОС: CentOS 7

Re: Конфигурирование установленной программы

Сообщение Trojan »

watashiwa_daredeska писал(а):
29.05.2010 12:22
Ну, начнем с того, что ./configure не имеет никакого абсолютно отношения ни к каким файлам конфигурации. Это часть сборки из исходников. ./configure определяет, что и как будет собираться. Поэтому конфигурационный файл этот скрипт не тронет. Более того, этот скрипт не трогает «установленную программу», он вообще к ней отношения не имеет. ./configure && make && make install собирают и устанавливают новую программу поверх старой. Если пути (--prefix) совпадают. Если пути не совпадают, то будет установлена ещё одна копия squid. Ну, и т.д.

Моя телепатия мне подсказывает, что та версия, которая сейчас установлена, устанавливалась не ./configure && make && make install, а из пакетов дистрибутива. Я прав?

Начну с того что с помощью ./configure мне ничего сделать не удалось. Выходило сообщение no such file or directory.
А вообще этот процесс я нашел на одном из форумов:

Есть FreeBSD 7.2 RELEASE.
Из портов установлен squid (3.0.STABLE14).
Далее последовательность ./configure --enable-delay-pools && make all && make install

В итоге пришлось сносить сквид и ставить его заново но уже с нужной мне опцией --enable-delay-pools.

Старый сквид устанавливал не я, но на 99,9% уверен что устанавливался из портов.

И хоть решил проблему, но не покидает чувство того что ее можно было решить не прибегаю к переустановке.
Можно ли было это сделать?
Всегда думай то, что говоришь и никогда не говори то, что думаешь.

Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Конфигурирование установленной программы

Сообщение watashiwa_daredeska »


Trojan писал(а):
29.05.2010 13:00
с помощью ./configure мне ничего сделать не удалось. Выходило сообщение no such file or directory.
Потому что это надо делать не абы где, а в каталоге с исходными текстами, в котором и лежит скрипт configure.

Trojan писал(а):
29.05.2010 13:00
И хоть решил проблему, но не покидает чувство того что ее можно было решить не прибегаю к переустановке.
Можно ли было это сделать?
Ну, кроме последнего пункта этого рецепта, у Вас уже всё было сделано. Видимо, можно было не сносить, а сразу начать с последнего пункта :) Хотя, с BSDшной системой портов я не знаком, поэтому могу ошибаться, и не знаю, насколько корректно делать ./configure && make && make install вручную с т.з. системы портов.
Спасибо сказали:
Mydvane
Сообщения: 113
ОС: freebsd

Re: Конфигурирование установленной программы

Сообщение Mydvane »

мда...
4.5.2.3 Reconfiguring Ports

When building certain ports, you may be presented with a ncurses-based menu from which you can select certain build options. It is not uncommon for users to wish to revisit this menu to add, remove, or change these options after a port has been built. There are many ways to do this. One option is to go into the directory containing the port and type make config, which will simply present the menu again with the same options selected. Another option is to use make showconfig, which will show you all the configuration options for the port. Yet another option is to execute make rmconfig which will remove all selected options and allow you to start over. All of these options, and others, are explained in great detail in the manual page for ports(7).

прочитайте уже наконец handbook
Спасибо сказали:
Аватара пользователя
Trojan
Сообщения: 359
Статус: Системный ламер
ОС: CentOS 7

Re: Конфигурирование установленной программы

Сообщение Trojan »

Так?

делаете make и появляется табличка, где надо отметить опции, там же и надо delay pools отметить
Всегда думай то, что говоришь и никогда не говори то, что думаешь.

Спасибо сказали:
Mydvane
Сообщения: 113
ОС: freebsd

Re: Конфигурирование установленной программы

Сообщение Mydvane »

Что Вам не понятно из моего предыдущего сообщения? Трудности с английским языком? Ну давайте вместе.
One option is to go into the directory containing the port and type make config, which will simply present the menu again with the same options selected.
Какое слово Вам здесь не понятно?
Спасибо сказали:
Аватара пользователя
Trojan
Сообщения: 359
Статус: Системный ламер
ОС: CentOS 7

Re: Конфигурирование установленной программы

Сообщение Trojan »

И еще такой вопрос: допустим у меня squid 2.6. Если я хочу сделать апгрейд, мне нужно сначала удалить старую версию и потом устанавливать новую или можно обновить старую до новой версии?
Всегда думай то, что говоришь и никогда не говори то, что думаешь.

Спасибо сказали:
Mydvane
Сообщения: 113
ОС: freebsd

Re: Конфигурирование установленной программы

Сообщение Mydvane »

4.5.4.2 Upgrading Ports using Portupgrade
The portupgrade utility is designed to easily upgrade installed ports. It is available from the ports-mgmt/portupgrade port.

4.5.4.3 Upgrading Ports using Portmanager
Portmanager is another utility for easy upgrading of installed ports.

4.5.4.4 Upgrading Ports using Portmaster
Portmaster is another utility for upgrading installed ports. Portmaster was designed make use of the tools found in the “base” system (it does not depend upon other ports) and uses the information in /var/db/pkg/ to determine which ports to upgrade.


Почему Вы не хотите читать handbook ???
Спасибо сказали:
Аватара пользователя
Trojan
Сообщения: 359
Статус: Системный ламер
ОС: CentOS 7

Re: Конфигурирование установленной программы

Сообщение Trojan »

Поставил squid на еще одну машину и так же без опции --enable-delay-pools. Затем из порта squid выполнил make config -> отметил опцию --enable-delay-pools -> ENTER. После этого при вызове команды make config опция --enable-delay-pools стала отмеченной но squid -v ее не показывает.

Код: Выделить всё

[root@shlus /usr/ports/www/squid31]# squid -v
Squid Cache: Version 3.1.0.13
configure options:  '--with-default-user=squid' '--bindir=/usr/local/sbin' '--sbindir=/usr/local/sbin' '--datadir=/usr/local/etc/squid' '--libexecdir=/usr/local/libexec/squid' '--localstatedir=/usr/local/squid' '--sysconfdir=/usr/local/etc/squid' '--with-logdir=/usr/local/squid/logs' '--with-pidfile=/usr/local/squid/squid.pid' '--enable-removal-policies=lru heap' '--disable-linux-netfilter' '--disable-linux-tproxy' '--disable-epoll' '--disable-translation' '--enable-auth=basic digest negotiate ntlm' '--enable-basic-auth-helpers=DB NCSA PAM MSNT SMB squid_radius_auth YP' '--enable-digest-auth-helpers=password' '--enable-external-acl-helpers=ip_user session unix_group wbinfo_group' '--enable-ntlm-auth-helpers=smb_lm' '--enable-negotiate-auth-helpers=squid_kerb_auth' '--enable-storeio=ufs diskd' '--enable-kqueue' '--prefix=/usr/local' '--mandir=/usr/local/man' '--infodir=/usr/local/info/' '--build=i386-portbld-freebsd8.0' 'build_alias=i386-portbld-freebsd8.0' 'CC=cc' 'CFLAGS=-O2 -pipe -fno-strict-aliasing' 'LDFLAGS=' 'CPPFLAGS=' 'CXX=c++' 'CXXFLAGS=-O2 -pipe -fno-strict-aliasing' --with-squid=/usr/ports/www/squid31/work/squid-3.1.0.13 --enable-ltdl-convenience

Как узнать установилась опция или нет?
Всегда думай то, что говоришь и никогда не говори то, что думаешь.

Спасибо сказали:
Аватара пользователя
AlexNT
Сообщения: 433
ОС: FreeBSD 8.2, ArchLinux

Re: Конфигурирование установленной программы

Сообщение AlexNT »

Trojan писал(а):
30.05.2010 23:05
Поставил squid на еще одну машину и так же без опции --enable-delay-pools. Затем из порта squid выполнил make config -> отметил опцию --enable-delay-pools -> ENTER. После этого при вызове команды make config опция --enable-delay-pools стала отмеченной но squid -v ее не показывает.

Код: Выделить всё

[root@shlus /usr/ports/www/squid31]# squid -v
Squid Cache: Version 3.1.0.13
configure options:  '--with-default-user=squid' '--bindir=/usr/local/sbin' '--sbindir=/usr/local/sbin' '--datadir=/usr/local/etc/squid' '--libexecdir=/usr/local/libexec/squid' '--localstatedir=/usr/local/squid' '--sysconfdir=/usr/local/etc/squid' '--with-logdir=/usr/local/squid/logs' '--with-pidfile=/usr/local/squid/squid.pid' '--enable-removal-policies=lru heap' '--disable-linux-netfilter' '--disable-linux-tproxy' '--disable-epoll' '--disable-translation' '--enable-auth=basic digest negotiate ntlm' '--enable-basic-auth-helpers=DB NCSA PAM MSNT SMB squid_radius_auth YP' '--enable-digest-auth-helpers=password' '--enable-external-acl-helpers=ip_user session unix_group wbinfo_group' '--enable-ntlm-auth-helpers=smb_lm' '--enable-negotiate-auth-helpers=squid_kerb_auth' '--enable-storeio=ufs diskd' '--enable-kqueue' '--prefix=/usr/local' '--mandir=/usr/local/man' '--infodir=/usr/local/info/' '--build=i386-portbld-freebsd8.0' 'build_alias=i386-portbld-freebsd8.0' 'CC=cc' 'CFLAGS=-O2 -pipe -fno-strict-aliasing' 'LDFLAGS=' 'CPPFLAGS=' 'CXX=c++' 'CXXFLAGS=-O2 -pipe -fno-strict-aliasing' --with-squid=/usr/ports/www/squid31/work/squid-3.1.0.13 --enable-ltdl-convenience

Как узнать установилась опция или нет?


Он ее и не покажет, Вы только указали системе сборки, что опция установлена. Теперь нужно удалить squid и собрать его заново.
Прочитайте у меня внимательно статью, если Вам тяжело дается handbook. Я писал специально для новичков: http://www.bsdnotes.ru/?lnk=sys_ports
Спасибо сказали:
Аватара пользователя
Trojan
Сообщения: 359
Статус: Системный ламер
ОС: CentOS 7

Re: Конфигурирование установленной программы

Сообщение Trojan »

AlexNT писал(а):
31.05.2010 06:01
Он ее и не покажет, Вы только указали системе сборки, что опция установлена. Теперь нужно удалить squid и собрать его заново.
Прочитайте у меня внимательно статью, если Вам тяжело дается handbook. Я писал специально для новичков: http://www.bsdnotes.ru/?lnk=sys_ports

Честно сказать не понимаю, зачем в таком случае процедура с make config, если можно просто удалить squid, а затем при повторной установке выбрать нужную опцию.
Всегда думай то, что говоришь и никогда не говори то, что думаешь.

Спасибо сказали:
Аватара пользователя
AlexNT
Сообщения: 433
ОС: FreeBSD 8.2, ArchLinux

Re: Конфигурирование установленной программы

Сообщение AlexNT »

Trojan писал(а):
31.05.2010 16:49
AlexNT писал(а):
31.05.2010 06:01
Он ее и не покажет, Вы только указали системе сборки, что опция установлена. Теперь нужно удалить squid и собрать его заново.
Прочитайте у меня внимательно статью, если Вам тяжело дается handbook. Я писал специально для новичков: http://www.bsdnotes.ru/?lnk=sys_ports

Честно сказать не понимаю, зачем в таком случае процедура с make config, если можно просто удалить squid, а затем при повторной установке выбрать нужную опцию.


Читайте внимательно. Читайте пока не поймете... :-) Это просто...
Спасибо сказали: