Estoy usando yaourt para compilar Apache automáticamente desde el código fuente cada vez que hay una actualización disponible desde extra
. Estoy haciendo esto para poder tener un docroot suexec personalizado ( /srv/www
en lugar del predeterminado /srv/http
). Esto ha funcionado perfectamente durante varias actualizaciones, hasta ahora.
$ yaourt -S apache
==> Building apache from sources.
==> Retrieving PKGBUILD and local sources...
receiving file list ... done
./
PKGBUILD
apache.conf.d
apache.install
apache.tmpfiles.conf
apachectl-confd.patch
arch.layout
httpd
httpd.logrotate
pcre_info.patch
sent 199 bytes received 10416 bytes 7076.67 bytes/sec
total size is 9809 speedup is 0.92
=> removes/replaces '--with-suexec-docroot=\/srv\/http' by '--with-suexec-docroot=\/srv\/www' in global
--- ./PKGBUILD 2012-07-06 00:02:13.000000000 -0400
+++ ./PKGBUILD.custom 2012-07-06 15:49:03.000000000 -0400
@@ -102,7 +102,7 @@
--enable-so \
--enable-suexec \
--with-suexec-caller=http \
- --with-suexec-docroot=/srv/http \
+ --with-suexec-docroot=/srv/www \
--with-suexec-logfile=/var/log/httpd/suexec.log \
--with-suexec-bin=/usr/sbin/suexec \
--with-suexec-uidmin=99 --with-suexec-gidmin=99 \
==> Edit PKGBUILD ? [y/N] ("A" to abort)
==> ------------------------------------
==> n
==> apache dependencies:
- openssl (already installed)
- zlib (already installed)
- apr-util (already installed)
- pcre (already installed)
==> Edit apache.install ? [y/N] ("A" to abort)
==> ------------------------------------------
==> n
==> Continue building apache ? [Y/n]
==> --------------------------------
==>
==> Building and installing package
==> Making package: apache 2.2.22-4 (Thu Jul 5 14:47:33 EDT 2012)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving Sources...
-> Downloading httpd-2.2.22.tar.bz2...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 5252k 100 5252k 0 0 93231 0 0:00:57 0:00:57 --:--:-- 93283
-> Downloading httpd-2.2.22.tar.bz2.asc...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 835 100 835 0 0 5191 0 --:--:-- --:--:-- --:--:-- 10437
-> Downloading 02-rename-prefork-to-itk.patch...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- 0:01:06 --:--:-- 0curl: (7) couldn't connect to host
==> ERROR: Failure while downloading 02-rename-prefork-to-itk.patch
Aborting...
==> ERROR: Makepkg was unable to build apache.
==> Restart building apache ? [y/N]
==> -------------------------------
==>
El problema parece ser que curl no puede encontrarlo 02-rename-prefork-to-itk.patch
. No sé en qué URL se encuentra, en qué archivo está especificado o cómo puedo encontrar una ubicación alternativa para él. ¿Alguna idea de qué está pasando o cómo solucionar el problema?
Respuesta1
curl: (7) couldn't connect to host
Según curl, no pudo conectarse al host. Puede haber muchas razones para esto, como que el archivo no esté ubicado en el servidor. Mi consejo sería intentarlo nuevamente más tarde y, si eso no funciona, comunicarse con el host desde donde se descarga el archivo.
Respuesta2
El host donde se encuentran algunos parches está inactivo. Pero podemos cambiarlo por otro.
Primero. Simplemente descargue PKGBUILD con yaourt:
yaourt -G apache
Cambie las siguientes líneas en PKGBUILD:
_itkurl=http://mpm-itk.sesse.net/apache2.2-mpm-itk-2.2.17-01
A:
_itkurl=http://distfiles.alpinelinux.org/distfiles/
Además, el parche 03-add-mpm-to-build-system.patch tiene un md5 diferente, así que lo arreglamos. Simplemente cambie la cuarta línea en la matriz "md5sums"
'cdfa04985a0efa850976aef01c2a0c40'
A:
'131408ad4dc7b18547b4e062e7e495ab'
El PKGBUILD en funcionamiento está aquí:http://pastebin.com/iK48xx8f
Puedes simplemente reemplazarlo, si lo deseas. Y construye apache con:
makepkg -i
Respuesta3
Espera, ¿por qué intentas descargar las apache
fuentes de AUR? apache
definitivamente está empaquetado en Arch.
pierre@bar code % pacman -Si apache
Repository : extra
Name : apache
Version : 2.2.22-4
[...]
Verifica que tengas en /etc/pacman.conf
:
[extra]
Include = /etc/pacman.d/mirrorlist
y al menos algunos espejos descomentados /etc/pacman.d/mirrorlist
, entonces:
# pacman -Sy apache
y debería instalarse perfectamente.
Respuesta4
Por lo tanto, no estoy seguro de si esto se debió a mi reciente actualización completa del sistema o a que la URL se restauró independientemente de eso, pero intentarlo nuevamente más tarde pareció eliminar este error en particular. Sin embargo, todavía no puedo construir Apache, ya que ahora me encontré con un nuevo error, pero eso es untema separado.