
Estoy en el servidor Ubuntu 20.04 y ejecuto LAMP con php7.4-fpm.
Acabo de realizar la última actualización y confirmé que todo funcionaba correctamente:
● php7.4-fpm.service - The PHP 7.4 FastCGI Process Manager
Loaded: loaded (/lib/systemd/system/php7.4-fpm.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2022-08-26 00:50:45 CST; 7min ago
Docs: man:php-fpm7.4(8)
Main PID: 120871 (php-fpm7.4)
Status: "Processes active: 0, idle: 2, Requests: 24, slow: 0, Traffic: 0.1req/sec"
Tasks: 3 (limit: 4380)
Memory: 80.8M
CGroup: /system.slice/php7.4-fpm.service
├─120871 php-fpm: master process (/etc/php/7.4/fpm/php-fpm.conf)
├─120892 php-fpm: pool www
└─120893 php-fpm: pool www
Luego, varios minutos más tarde... mi instalación de Nextcloud deja de sincronizarse repentinamente, así que vuelvo a verificar el estado de php-fpm y obtengo:
● php7.4-fpm.service
Loaded: masked (Reason: Unit php7.4-fpm.service is masked.)
Active: inactive (dead) since Fri 2022-08-26 01:07:14 CST; 5min ago
Main PID: 120871 (code=exited, status=0/SUCCESS)
Status: "Processes active: 0, idle: 2, Requests: 44, slow: 0, Traffic: 0req/sec"
Aug 26 01:07:14 admin.example.com systemd[1]: Stopping The PHP 7.4 FastCGI Process Manager...
Aug 26 01:07:14 admin.example.com systemd[1]: php7.4-fpm.service: Succeeded.
Aug 26 01:07:14 admin.example.com systemd[1]: Stopped The PHP 7.4 FastCGI Process Manager.
Warning: journal has been rotated since unit was started, output may be incomplete.`
Y, bastante literalmente, /lib/systemd/system/php7.4-fpm.service
ya no existe.
# stat /lib/systemd/system/php7.4-fpm.service
stat: cannot stat '/lib/systemd/system/php7.4-fpm.service': No such file or directory
Revisé syslog
qué sucedía cuando el servicio estaba enmascarado según la marca de tiempo... y simplemente no hay nada en el registro que explique lo que está sucediendo:
Aug 26 01:07:14 admin systemd[1]: Stopped The PHP 7.4 FastCGI Process Manager.
Aug 26 01:07:14 admin systemd[1]: php7.4-fpm.service: Succeeded.
Aug 26 01:07:14 admin systemd[1]: Stopping The PHP 7.4 FastCGI Process Manager...
Aug 26 01:07:14 admin systemd[1]: Configuration file /etc/systemd/system/gitea.service is marked world-inaccessible. This has no effect as configuration data is accessible via APIs without restrictions. Proceeding anyway.
Aug 26 01:07:14 admin systemd[1]: Reloading.
Aug 26 01:07:14 admin php7.4-fpm: php_invoke prerm: Disabled module readline for PHP 7.4 fpm sapi
Aug 26 01:07:14 admin php7.4-fpm: php_invoke prerm: Disabled module pspell for PHP 7.4 fpm sapi
Aug 26 01:07:14 admin php7.4-fpm: php_invoke prerm: Disabled module ctype for PHP 7.4 fpm sapi
Aug 26 01:07:14 admin php7.4-fpm: php_invoke prerm: Disabled module redis for PHP 7.4 fpm sapi
Aug 26 01:07:14 admin php7.4-fpm: php_invoke prerm: Disabled module dom for PHP 7.4 fpm sapi
Aug 26 01:07:14 admin php7.4-fpm: php_invoke prerm: Disabled module soap for PHP 7.4 fpm sapi
Aug 26 01:07:14 admin php7.4-fpm: php_invoke prerm: Disabled module iconv for PHP 7.4 fpm sapi
Aug 26 01:07:14 admin php7.4-fpm: php_invoke prerm: Disabled module apcu_bc for PHP 7.4 fpm sapi
Aug 26 01:07:14 admin php7.4-fpm: php_invoke prerm: Disabled module phar for PHP 7.4 fpm sapi
Aug 26 01:07:14 admin php7.4-fpm: php_invoke prerm: Disabled module mysqlnd for PHP 7.4 fpm sapi
Aug 26 01:07:14 admin php7.4-fpm: php_invoke prerm: Disabled module imap for PHP 7.4 fpm sapi
Aug 26 01:07:14 admin php7.4-fpm: php_invoke prerm: Disabled module xsl for PHP 7.4 fpm sapi
Aug 26 01:07:14 admin php7.4-fpm: php_invoke prerm: Disabled module sysvshm for PHP 7.4 fpm sapi
Actualizar:
Cuando intento desenmascarar php7.4-fpm usando systemctl unmask php7.4-fpm
, suceden dos cosas:
/etc/systemd/system/php7.4-fpm.service
es removido./etc/systemd/system/php7.4-fpm.service
es un enlace simbólico a /dev/nullSe inicia el uso de php7.4-fpm.service
init.d
● php7.4-fpm.service - LSB: starts php7.4-fpm
Loaded: loaded (/etc/init.d/php7.4-fpm; generated)
Active: active (exited) since Fri 2022-08-26 09:09:10 CST; 6min ago
Docs: man:systemd-sysv-generator(8)
Tasks: 0 (limit: 4380)
Memory: 0B
CGroup: /system.slice/php7.4-fpm.service
Si intento reinstalar php7.4fpm usando apt-get install --reinstall php7.4-fpm
obtengo:
root@admin:~# apt-get install --reinstall php7.4-fpm
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
php7.4-fpm : Depends: php7.4-common (= 7.4.3-4ubuntu2.12) but 7.4.3-4ubuntu2.13 is to be installed
E: Unable to correct problems, you have held broken packages.
Todos los pasos anteriores se basan en esta publicación: https://askubuntu.com/questions/804946/systemctl-how-to-unmask
Actualmente estoy atrapado con paquetes rotos
Sí, lo he probado:
apt install -f
dpkg --configure -a
Nada ayuda..
Respuesta1
Este problema parece ser fundamentalmente un problema de empaquetado con los repositorios de ubuntu que los mantenedores probablemente necesiten algo de tiempo para solucionar.
The following packages have unmet dependencies:
php7.4-fpm : Depends: php7.4-common (= 7.4.3-4ubuntu2.12) but 7.4.3-4ubuntu2.13 is to be installed
E: Unable to correct problems, you have held broken packages.
Mientras tanto, la única solución a este problema parece ser que-antes-realiza la última actualización de php... asegúrese de tener este repositorio instalado en su máquina:
sudo add-apt-repository ppa:ondrej/php
Si este repositorio se instala antes de la actualización, puede evitar la pesadilla anterior.