CU 170 testing : list of services is not complete in the WebGUI > Status > Services

Hi,

since this update (core update 170 testing), the list of services is not complete in the GUI > Status > Services.

For eg, Guardian and Netsnmpd services are installed but not showing in my config

Does it show under System Logs- Guardian etc…

Yes, Guardian appears in the System Logs and I can read results.

I just installed Guardian under Core Update 170 in my testbed vm and it shows up under the services for me.

Did you have guardian already installed under Core Update 169? If yes then I will make another clone of my CU169 with guardian installed and then upgrade to CU170 and see if that changes things.

On the basis that you very likely already had guardian installed I installed it on a CU169 clone, confirmed it was showing as running.
Then I upgraded to CU170 and rebooted and Guardian is still showing as running on my services page. So it doesn’t look like an endemic issue with CU170.

What shows up in the System Logs section for Guardian?

For information, the Testing build I was using for my evaluation was master/ef7d41ef

1 Like

Yes, several add-ons (including guardian and netsnmpd) were already installed from previous updates (in fact, for several months / years).

System Logs > Guardian :

Today (no results like many other days) :
Total hits for log section guardian August 18, 2022: 0

15/8/2022 - update 170 testing day :
|19:49:38|guardian[6245] Guardian 2.0.2 successfully started…
|19:46:08|guardian[6135] Shutting down…

12/8/2022 (before update) :
|11:13:59|guardian[6135] Guardian 2.0.2 successfully started…
|11:10:40|guardian[6244] Shutting down…
|11:09:38|guardian[6244] Reloading ignore list…
|11:01:34|guardian[6244] Reloading ignore list…
|01:19:24|guardian[6244] Reloading ignore list…
|00:59:31|guardian[6244] Guardian 2.0.2 successfully started…
|00:52:48|guardian[6177] Shutting down…
|00:51:53|guardian[6177] Guardian 2.0.2 successfully started…
|00:46:27|guardian[3905] Shutting down…
|00:45:09|guardian[3905] Reloading ignore list…
|00:41:09|guardian[3905] Reloading ignore list…
|00:37:00|guardian[3905] Guardian 2.0.2 successfully started…
|00:37:00|guardian[3893] /var/ipfire/red/remote-ipaddress will not be included. File does not exist !
|00:37:00|guardian[3893] /var/ipfire/red/local-ipaddress will not be included. File does not exist!
|00:23:03|guardian[6208] Shutting down…

Otherwise, the latest update (170 testing) is indeed master/ef7d41ef also for me.

So it properly shutdown and restarted from the CU170 upgrade so I don’t understand why the services page is not showing it.

Maybe try uninstalling and then reinstalling Guardian and see if that makes a difference.

1 Like

Uninstalling then reinstalling Guardian: Not better
Uninstalling, rebooting then reinstalling Guardian: No better
Disabling Guardian, uninstalling, rebooting then reinstalling Guardian: No better

Uninstalling Guardian, perl-Net-IP, perl-common-sense and perl-inotify then reinstalling Guardian (and also automatically its 3 dependencies) : Not better

On the other hand, no problem for clamav (reappears in the services list after uninstalling / reinstalling)

Just one thought:

Could you do a
/usr/bin/touch /opt/pakfire/db/installed/meta-guardian

and see if this helps!?

1 Like

Hi @mfischer,

sure :
[root@ipfire ~]# /usr/bin/touch /opt/pakfire/db/installed/meta-guardian
[root@ipfire ~]#

Uninstalling then reinstalling Guardian: Not better
Uninstalling, rebooting then reinstalling Guardian: No better

Note: The meta-guardian file is present and seems well formed (name, version, size, PGP signature…)

I think I might have figured out what is happening here. Had a look in detail through the services.cgi and it looks for if the addon is installed and it looks for if it is a service.

The old method was to look if there existed an initscript with the right name but that name was not always the same as the package name.

In CU165 the lfs files were modified to include a line labelled

SERVICES =

and for Guardian this has

SERVICES = guardian

When this change was done the guardian addon was not shipped to force it to be updated on installed versions.

clamav is okay because that has had an update for a version number which would have also updated the SERVICES line.

This SERVICES line is now being used in CU170 as part of the metadat for each addon and it is used in the services.cgi page to define if the addon is a service or not.

It worked for me as I installed it on CU169 which already had the updated line.

You probably installed Guardian before CU165 and there has been no update to it since then so your version is missing the SERVICES line.

Re-installing won’t work because IPFire keeps a cache copy and if the version is not changed then if you uninstall and then re-install the same package with the same version number it uses the cached copy.

What you need to do is

  1. Uninstall guardian
  2. Delete the cache file /var/cache/pakfire/guardian-2.0.2-25.ipfire or rename it if worried about deleting it. Add a suffix like .old
  3. Reinstall guardian

The re-install step will first check if there is a cache version. As you will have deleted it then pakfire will download it from the addon package server and put it in the cache.

With the updated guardian you should then get it shown in the addon services table. :crossed_fingers:

I will need to look through all the addons and see which have not been shipped since CU165 and ship them to force the use of the services line.
I will only do this once you have confirmed that it is now working for you after my suggested steps.

3 Likes

@bonnietwin,

I’d like to tell you that your solution worked, but… I deleted Guardian then renamed the file to its latest version, reinstalled Guardian, but that didn’t change anything.

Also, I re-deleted Guardian, deleted all cache versions for this add-on, rebooted IPFire then reinstalled Guardian, but the service still does not appear in the list.

See the files in this folder before the operation :
guardian - cache

I don’t think so. I am sorry, but the idea of @bonnietwin does not work. The service guardian is not shown on the (running) services page, after the “What yo need to do is…”.

Me: CU170 testing

I have no further idea what is causing this. With installing Guardian on CU169 and upgrading to CU170, in both cases Guardian showed up for me on the services page. So I have not been able to reproduce the problem you are having.

As deleting the guardian cache entry and re-installing has also not fixed things then that would eliminate the missing SERVICES line from earlier Guardian versions.

Hopefully someone else has some further ideas on how to troubleshoot this and can help with settings or whatever that need to be checked.

I will have a look see if I can identify where the SERVICES line info is stored in the new way that pakfire operates. If I can find this then maybe there is a file entry that can be checked to see if it has guardian defined as a service.

It turned out easier to find where the Services line is defined.

Can @steph78630 and @waynetsun check on their systems in the file
/opt/pakfire/db/meta/meta-guardian

If you see the following, especially the line just before the PGP Signature that says
Services: guardian

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Name: guardian
Summary: A perl written Intrusion Prevention System
ProgVersion: 2.0.2
Release: 25
Size: 40960
Dependencies: perl-inotify2 perl-Net-IP
File: guardian-2.0.2-25.ipfire
Services: guardian
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEPsqKpEeCCLkku5Ygb+96jtcTWUsFAmLNSrQACgkQb+96jtcT
WUtxdxAAk5jBiH9F4VpdpjjjjqvuJ6DjUTPV9sHmAL6daATTenzB0sGi01QhI/Hm
8SyCjjlzgxhRPGaSHSmEQ23Fxtn7TuNAopEMdusqjSsPbH6+V0s2dXQ13FKYgXzP
Yn6y8WBr0lEWwFeHsDrc+ki2W2Py96R090Uybs6CTXw4k2W+TaWBs4CyG/HNBxzB
6JY8CYwMt1fBuTOXDouUmfPaMNoKqspq++2p98E/nqNcmDw4Be9XkHniHrGuQmOv
jpQQli0rkSzytFgmWHyotCJeweGupJ9f1qgQZ9rtNyC7US+wgYbsKNaU0ERGvF8I
UJiDny/RxJ7p4a9CC86+Ku0hean87sc8eqjpzCWvOQkGryyxiEuhf97wsYjVrFup
bKCYlDJQIsXtrye5fng1lLxlVh0CN4fAf8dlx7KWS5UJnxKvC6uxfLxil4nBK9Nb
hCrEjuBK8rVsjmNyiGcL9BsHwgI+6gy+wu78sntQQpQTCx6Q9ioSNX2+wendlEZ7
E7jyQh4SznrxcS4UepqXyaNGVE7wE75LAjTEVB+E3qVahUgkaMWdj9utdE0ZDZgJ
N1Rz0nUgqoNWe2JpDaPBqQa4MqJ+k0CZMUk00Srk1kjC/sCDq+xzAIyGu91BqKut
uGs48mFBzo9HI8JFI5MwN9NUOCwXJPd7zLz4JH6YpJpRt1td4mw=
=Fto9
-----END PGP SIGNATURE-----

1 Like

@bonnietwin,

Interesting in my config, the Summary and Services lines do not exist…:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Name: guardian
ProgVersion: 2.0.2
Release: 25
Size: 40960
Dependencies: perl-inotify2 perl-Net-IP
File: guardian-2.0.2-25.ipfire
-----BEGIN PGP SIGNATURE-----
…
…
…

Okay, so that is the problem then. However I would have expected the removal of the cache process that I defined earlier and that you went through would have also updated that meta file for you.

The Summary line was added to the lfs files at the same time as the Services line.

When you uninstall any addon the files for that addon in that meta directory should also be removed. They were for me when I installed and then uninstalled guardian.

I will have to think further about how to fix that with your existing setup.

I will re-ship guardian in CU171 (it is too late for CU170 as that is imminently being released) and that should make sure that the meta data is updated for you if I am unable to figure out what needs to be updated on your system.

I presume that the PGP signature for your file is different from mine as it has different lines in it.

One thing you could try is to add the Summary and the Service line into your meta-guardian file and see if that helps. The pgp signature, as far as I am aware is only used when downloading the addon from the addon server to make sure that nothing has been corrupted or changed.

1 Like

@bonnietwin , thank you for your feedback.

FYI, I added the 2 missing lines in my file but Guardian still does not appear in the list of services.

Edit : I restarted IPFire but no better

I can confirm a bug here. My system shows only alsa. But vdr is missing.