Заставьте Ubuntu подтвердить, что установлена сделанная на заказ версия PHP

Всякий раз, когда вы изменяете файл /etc/shadow с помощью vipw или аналогичной команды, он сохраняет предыдущую копию как /etc/shadow- . Это а не резервная копия. Это просто фиксатор мгновенных ошибок.

1
07.04.2014, 23:01
2 ответа
[1126714]Здесь есть несколько альтернатив:

  • -добавьте [1127842]--prefix=/usr/local[1127843] к скрипту конфигурации (предполагая, что это то, что использует PHP) или иным образом убедитесь, что ваш PHP установлен в [1127844]/usr/local[1127845]. Это означает, что у вас будет установлена ваша собственная сборка PHP вместе с системной. Так как, например, [1127846]/usr/local/bin[1127847] имеет приоритет над [1127848]/usr/bin[1127849] в [1127850]PATH[1127851], ваша собственная сборка будет использоваться во многих случаях (особенно при запуске из командной строки). По умолчанию это не должно мешать системным пакетам, которые могли быть собраны против конкретной версии PHP и будут сломаны, если они попытаются использовать библиотеки, предоставляемые вашей собственной сборкой. При таком подходе вам необходимо обратить некоторое внимание на то, какие программы используют какие библиотеки, однако это должно быть возможно без проблем.
  • Найдите упакованную версию PHP, которая ближе к вашим потребностям. Если это более новая версия, то есть много Ubuntu ppas, которые предлагают это (желательно сначала посмотреть в официальных репозиториях 'backport', так как любой может создать возможно сломанный ppa). Заметьте, что это также может привести к конфликтам, которые заставят вас установить другие пакеты из ppa (или оставить вас в нерабочем состоянии, если они недоступны).
  • Загрузите пакет с исходным кодом и перекомпилируйте его. Это может быть то, что вам нужно сделать, если вам нужны пользовательские опции сборки. Для этого в интернете есть много руководств, но в основном вы можете добавить необходимые строки [1127852]deb-src[1127853] в ваш файл [1127854]source.list[1127855] (или [1127856]source.list.d[1127857]) и загрузить с помощью [1127858]apt-get source[1127859] (или просто загрузить необходимые файлы прямо с [1127860]packages.ubuntu.com[1127861]). Распаковывайте с помощью архивов [1127862]dpkg-source[1127863] Затем вы можете настроить параметры сборки в каталоге пакета [1127864]debian[1127865], собрать с помощью [1127866]debuild[1127867] или [1127868]dpkg-buildpackage[1127869] и установить с помощью [1127870]dpkg -i[1127871]. Вы даже можете сделать это с пакетом из ppa, если вам нужна более новая версия (хотя те же самые предостережения применимы).

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

1
27.01.2020, 23:52
[1126728]Хорошо, вместо метода, о котором вы упомянули вначале, попробуйте следующее:

Сначала убедитесь, что в вашем файле [1127257]source.list[1127258] есть записи [1127255]deb-src[1127256], и что вы запустили [1127259]apt-get update[1127260]. Это упростит следующие шаги. Теперь установите утилиты для сборки:

  • установите ваши зависимости сборки:

  • Получите исходные тексты php5:

Вы заметите, что кроме загрузки исходных текстов, он также применил патчи. Теперь поищите конфигурационный скрипт, который находится в [1127261]debian/rules[1127262]. Есть запись под названием [1127263]COMMON_CONFIG[1127264], редактируйте ее так, как вам нравится:

Я бы порекомендовал выпустить версию PHP, используя [1127265]dch -i[1127266]. Теперь вы готовы к сборке:

enter image description here

Это создаст файлы, готовые к установке в родительском каталоге. Теперь, вам действительно следует пересмотреть, зачем вам нужно собирать вещи из исходников. Большинство проблем, связанных с безопасностью, исправляются немедленно, и в связи с природой PHP (используемого в производстве), рекомендуется использовать вместо него официальные пакеты.[1126741].
0
27.01.2020, 23:52

Теги

Похожие вопросы