Pure-FTP nach update Ubuntu 20.4 auf 22.4 und ISPConfig auf 3.3.2

ChrisSky

New Member
Hallo zusammen,

bekomme seid der Umstellung regelmäßig eMails wie:
28.10.2026-12:05 - WARNING - Unable to restart pure-ftpd-mysql. Service not registered.
28.10.2026-12:02 - WARNING - Unable to restart pure-ftpd-mysql. Service not registered.
...
..
.

Das Ubuntu Update lief ganz gut, auch das von ISPConfig (bin erst auf 3.3.0... gegangen), doch das kann ich gerade nicht verstehn "ispconfig_update.sh --force" lief auch schon. Muss / sollte man Pure-FTP in die neue Welt heben? Sollte man eine neue .Service-Datei anlegen?
Hier ein paar Info's:
User@Server:~# grep ISPC_APP_VERSION /usr/local/ispconfig/interface/lib/config.inc.php
define('ISPC_APP_VERSION', '3.3.2p1');
$conf['app_version'] = ISPC_APP_VERSION;
User@Server:~# nano /etc/pure-ftpd/conf/PassivePortRange
User@Server:~# systemctl list-unit-files | grep pure-ftp
pure-ftpd-mysql.service generated -

User@Server:~# systemctl cat pure-ftpd-mysql
# /run/systemd/generator.late/pure-ftpd-mysql.service
# Automatically generated by systemd-sysv-generator

[Unit]
Documentation=man:systemd-sysv-generator(8)
SourcePath=/etc/init.d/pure-ftpd-mysql
Before=multi-user.target
Before=multi-user.target
Before=multi-user.target
Before=graphical.target
After=remote-fs.target
After=slapd.service
After=mysql.service
After=postgresql-8.3.service
After=postgresql-8.4.service

[Service]
Type=forking
Restart=no
TimeoutSec=5min
gnoreSIGPIPE=no
KillMode=process
GuessMainPID=no
RemainAfterExit=yes
SuccessExitStatus=5 6
ExecStart=/etc/init.d/pure-ftpd-mysql start
ExecStop=/etc/init.d/pure-ftpd-mysql stop


----------
User@Server:/var/log/ispconfig# sed -n 25,70p /usr/local/ispconfig/server/lib/classes/services.inc.php
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/

class services {

var $registered_services = array();
var $delayed_restarts = array();
var $debug = false;

// This function adds a request for restarting
// a service at the end of the configuration run.
function restartServiceDelayed($service_name, $action = 'restart') {
global $app;
if(is_array($this->registered_services[$service_name])) {
$this->delayed_restarts[$service_name] = $action;
} else {
$app->log("Unable to add a delayed restart for '$service_name'. Service not registered.", LOGLEVEL_WARN);
}

}

// This function restarts a service when the function is called
function restartService($service_name, $action = 'restart') {
global $app;

if(is_array($this->registered_services[$service_name])) {
$module_name = $this->registered_services[$service_name]['module'];
$function_name = $this->registered_services[$service_name]['function'];
$app->log("Calling function '$function_name' from module '$module_name'.", LOGLEVEL_DEBUG);
// call_user_method($function_name,$app->loaded_modules[$module_name],$action);
return call_user_func(array($app->loaded_modules[$module_name], $function_name), $action);
} else {
$app->log("Unable to restart $service_name. Service not registered.", LOGLEVEL_WARN);
return array('output' => '', 'retval' => 0);
}

}

// This function is used to register callback functions for services that can be restarted
function registerService($service_name, $module_name, $function_name) {
global $app;
$this->registered_services[$service_name] = array('module' => $module_name, 'function' => $function_name);
if($this->debug) $app->log("Registered Service '$service_name' in module '$module_name' for processing function '$function_name'", LOGLEVEL_DEBUG);

---------------

User@Server:/var/log/ispconfig# grep -rn "registerService" /usr/local/ispconfig/server/ | head -30
/usr/local/ispconfig/server/mods-available/database_module.inc.php:84: //$app->services->registerService('httpd','web_module','restartHttpd');
/usr/local/ispconfig/server/mods-available/xmpp_module.inc.php:82: $app->services->registerService('metronome', 'xmpp_module', 'reloadXMPP');
/usr/local/ispconfig/server/mods-available/xmpp_module.inc.php:83: $app->services->registerService('metronome', 'xmpp_module', 'restartXMPP');
/usr/local/ispconfig/server/mods-available/mail_module.inc.php:115: $app->services->registerService('rspamd', 'mail_module', 'restartRspamd');
/usr/local/ispconfig/server/mods-available/mail_module.inc.php:116: $app->services->registerService('postfix', 'mail_module', 'restartPostfix');
/usr/local/ispconfig/server/mods-available/mail_module.inc.php:117: $app->services->registerService('amavis', 'mail_module', 'restartAmavis');
/usr/local/ispconfig/server/mods-available/dns_module.inc.php:88: $app->services->registerService('bind', 'dns_module', 'restartBind');
/usr/local/ispconfig/server/mods-available/dns_module.inc.php:89: $app->services->registerService('powerdns', 'dns_module', 'restartPowerDNS');
/usr/local/ispconfig/server/mods-available/server_module.inc.php:83: //$app->services->registerService('httpd','web_module','restartHttpd');
/usr/local/ispconfig/server/mods-available/web_module.inc.php:125: $app->services->registerService('httpd', 'web_module', 'restartHttpd');
/usr/local/ispconfig/server/mods-available/web_module.inc.php:126: $app->services->registerService('php-fpm', 'web_module', 'restartPHP_FPM');
/usr/local/ispconfig/server/lib/classes/services.inc.php:67: function registerService($service_name, $module_name, $function_name) {
User@Server:/var/log/ispconfig# grep -rn "pure-ftpd" /usr/local/ispconfig/server/ --include=*.php | head -20
/usr/local/ispconfig/server/lib/classes/cron.d/200-ftplogfiles.inc.php:5: * You need to configure daily log rotation for pureftp (/etc/logorate.d/pure-ftpd-comon)
/usr/local/ispconfig/server/lib/classes/cron.d/200-ftplogfiles.inc.php:40: if(is_dir('/var/log/pure-ftpd/')) {
/usr/local/ispconfig/server/lib/classes/cron.d/200-ftplogfiles.inc.php:41: exec('chmod +r /var/log/pure-ftpd/*');
/usr/local/ispconfig/server/lib/classes/cron.d/200-ftplogfiles.inc.php:42: $logfile="/var/log/pure-ftpd/transfer.log.1";
/usr/local/ispconfig/server/lib/classes/cron.d/200-ftplogfiles.inc.php:46: $app->log("The pure-ftpd log file could not be found.", LOGLEVEL_DEBUG);
/usr/local/ispconfig/server/lib/classes/letsencrypt.inc.php:699: '/etc/ssl/private/pure-ftpd.pem'
/usr/local/ispconfig/server/plugins-available/pureftpd_sni_plugin.inc.php:61: $app->services->restartService('pure-ftpd-mysql', 'restart');
Kann das funktionieren?
Kein FTP-Dienst meldet ein Modul an?

Bin gerade etwas hilflos, FTP läuft sonst... schmeisst halt nur diese Fehler... und läuft nicht als moderner Service(falls das notwendig ist)

Wed Oct 28 10:42:05 AM CET 2026 PHP Warning: Undefined array key "pure-ftpd-mysql" in /usr/local/ispconfig/server/lib/classes/services.inc.php on line 53
Wed Oct 28 10:42:05 AM CET 2026 finished server.php.
Wed Oct 28 10:43:04 AM CET 2026 PHP Warning: Undefined array key "pure-ftpd-mysql" in /usr/local/ispconfig/server/lib/classes/services.inc.php on line 53
Wed Oct 28 10:43:04 AM CET 2026 finished server.php.
Wed Oct 28 10:44:04 AM CET 2026 PHP Warning: Undefined array key "pure-ftpd-mysql" in /usr/local/ispconfig/server/lib/classes/services.inc.php on line 53
Wed Oct 28 10:44:04 AM CET 2026 finished server.php.

Danke für Eure Hilfe
 

Till

Administrator
Das Problem ist bekannt und wird mit dem nächsten Update behoben. Kommentiere einfach die Zeile aus:

/usr/local/ispconfig/server/plugins-available/pureftpd_sni_plugin.inc.php:61: $app->services->restartService('pure-ftpd-mysql', 'restart');
 

Werbung

Top