Rockstor-4.1.0-0 Rockstor-pre.service failed

Hi All,

I did try the full installer but that kept freezing and never installed onto my machine. So I resorted to installing openSUSE Leap 15.4 and follow the instructions on the website. I unfortunately ran into an issue where the Rockstor service will not start

Mediavault:~ # systemctl status -l rockstor-pre.service
× rockstor-pre.service - Tasks required prior to starting Rockstor
Loaded: loaded (/etc/systemd/system/rockstor-pre.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Sun 2023-01-15 20:58:32 GMT; 2min 7s ago
Process: 663 ExecStart=/opt/rockstor/bin/initrock (code=exited, status=1/FAILURE)
Main PID: 663 (code=exited, status=1/FAILURE)

Jan 15 20:58:32 Mediavault initrock[663]: File “/opt/rockstor/eggs/Django-1.8.16-py2.7.egg/django/conf/init.py”, line 92, in init
Jan 15 20:58:32 Mediavault initrock[663]: mod = importlib.import_module(self.SETTINGS_MODULE)
Jan 15 20:58:32 Mediavault initrock[663]: File “/usr/lib64/python2.7/importlib/init.py”, line 37, in import_module
Jan 15 20:58:32 Mediavault initrock[663]: import(name)
Jan 15 20:58:32 Mediavault initrock[663]: File “/opt/rockstor/src/rockstor/settings.py”, line 22, in
Jan 15 20:58:32 Mediavault initrock[663]: import subprocess, distro
Jan 15 20:58:32 Mediavault initrock[663]: ImportError: No module named distro
Jan 15 20:58:32 Mediavault systemd[1]: rockstor-pre.service: Main process exited, code=exited, status=1/FAILURE
Jan 15 20:58:32 Mediavault systemd[1]: rockstor-pre.service: Failed with result ‘exit-code’.
Jan 15 20:58:32 Mediavault systemd[1]: Failed to start Tasks required prior to starting Rockstor.

Mediavault:~ # systemctl status -l rockstor.service
○ rockstor.service - RockStor startup script
Loaded: loaded (/etc/systemd/system/rockstor.service; enabled; vendor preset: disabled)
Active: inactive (dead)

Jan 15 20:58:32 Mediavault systemd[1]: Dependency failed for RockStor startup script.
Jan 15 20:58:32 Mediavault systemd[1]: rockstor.service: Job rockstor.service/start failed with result ‘dependency’.

░░ Subject: A start job for unit rockstor-pre.service has begun execution
░░ Defined-By: systemd
░░
░░ A start job for unit rockstor-pre.service has begun execution.
░░
░░ The job identifier is 2090.
Jan 15 20:34:52 Mediavault initrock[21405]: Traceback (most recent call last):
Jan 15 20:34:52 Mediavault initrock[21405]: File “/opt/rockstor/bin/initrock”, line 37, in
Jan 15 20:34:52 Mediavault initrock[21405]: import scripts.initrock
Jan 15 20:34:52 Mediavault initrock[21405]: File “/opt/rockstor/src/rockstor/scripts/init.py”, line 6, in
Jan 15 20:34:52 Mediavault initrock[21405]: django.setup()
Jan 15 20:34:52 Mediavault initrock[21405]: File “/opt/rockstor/eggs/Django-1.8.16-py2.7.egg/django/init.py”, line 17, in setup
Jan 15 20:34:52 Mediavault initrock[21405]: configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
Jan 15 20:34:52 Mediavault initrock[21405]: File “/opt/rockstor/eggs/Django-1.8.16-py2.7.egg/django/conf/init.py”, line 48, in getattr
Jan 15 20:34:52 Mediavault initrock[21405]: self._setup(name)
Jan 15 20:34:52 Mediavault initrock[21405]: File “/opt/rockstor/eggs/Django-1.8.16-py2.7.egg/django/conf/init.py”, line 44, in _setup
Jan 15 20:34:52 Mediavault initrock[21405]: self._wrapped = Settings(settings_module)
Jan 15 20:34:52 Mediavault initrock[21405]: File “/opt/rockstor/eggs/Django-1.8.16-py2.7.egg/django/conf/init.py”, line 92, in init
Jan 15 20:34:52 Mediavault initrock[21405]: mod = importlib.import_module(self.SETTINGS_MODULE)
Jan 15 20:34:52 Mediavault initrock[21405]: File “/usr/lib64/python2.7/importlib/init.py”, line 37, in import_module
Jan 15 20:34:52 Mediavault initrock[21405]: import(name)
Jan 15 20:34:52 Mediavault initrock[21405]: File “/opt/rockstor/src/rockstor/settings.py”, line 22, in
Jan 15 20:34:52 Mediavault initrock[21405]: import subprocess, distro
Jan 15 20:34:52 Mediavault initrock[21405]: ImportError: No module named distro
Jan 15 20:34:52 Mediavault systemd[1]: rockstor-pre.service: Main process exited, code=exited, status=1/FAILURE
░░ Subject: Unit process exited
░░ Defined-By: systemd
░░
░░ An ExecStart= process belonging to unit rockstor-pre.service has exited.
░░
░░ The process’ exit code is ‘exited’ and its exit status is 1.
Jan 15 20:34:52 Mediavault systemd[1]: rockstor-pre.service: Failed with result ‘exit-code’.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░
░░ The unit rockstor-pre.service has entered the ‘failed’ state with result ‘exit-code’.
Jan 15 20:34:52 Mediavault systemd[1]: Failed to start Tasks required prior to starting Rockstor.
░░ Subject: A start job for unit rockstor-pre.service has failed
░░ Defined-By: systemd
░░
░░ A start job for unit rockstor-pre.service has finished with a failure.
░░
░░ The job identifier is 2090 and the job result is failed.
Jan 15 20:34:52 Mediavault systemd[1]: Dependency failed for RockStor startup script.
░░ Subject: A start job for unit rockstor.service has failed
░░ Defined-By: systemd
░░ Support: lists.freedesktop.org/mailman/listinfo/systemd-devel
░░
░░ A start job for unit rockstor.service has finished with a failure.
░░
░░ The job identifier is 2087 and the job result is dependency.
Jan 15 20:34:52 Mediavault systemd[1]: rockstor.service: Job rockstor.service/start failed with result ‘dependency’.


I am not a linux expert just read google for how to do things. Could someone please help me to troubleshoot this issue as I am beyond my capability for this now?

Thanks
Andrew

Hi @agjbond007, and welcome!

I see you created a dedicated thread for that so I’ll try to answer this part there.

The issue you are seeing here is the following…

ImportError: No module named distro

… which I believe is related to the same reason you are seeing your other dependency issue in your other thread:

In Leap 15.4, our dependencies moved quite a lot and that is part of the reason @phillxnet had to do such a vast rework of Rockstor’s dependencies and build. As a matter of fact, I think the Leap 15.4 version should hopefully be ready very soon so I would recommend you to go that route once it’s ready.

The gist of it is that Rockstor’s dependencies on Leap 15.4 are dealt with in a very different way now that explains why trying to install the current Rockstor rpm will run into all sorts of dependency issue.

To get back to resolving your issue, I see two options:

  • A: install Leap 15.3 and then follow the instructions as you did to install the Rockstor rpm
  • B: troubleshoot your issue with the current ISO on your machine.

Option B might be preferable as you would have a system closer to what Rockstor expects, but it may require more troubleshooting, depending on what the issue is there (see your other dedicated thread).

1 Like

Hi @Flox,

Thanks for the details response to this issue and it has defo answered why this is not working. I would like to stay on Leap 15.4 rather than go backwards and I would rather install the latest test version on my Leap 15.4.

Many Thanks
Andrew

2 Likes

@agjbond007 Hello again.
Re:

If all goes well, the release of what should be 4.5.4-0 is scheduled for tomorrow (Portugal time). I’ll update this thread once the new testing repo has been created. My apologies for not having this all ready much sooner by the way. The 15.3 to 15.4 transition had (and may still have) some rather unexpected challenges that meant we had to bring forward our build system re-do (Buildout to Poetry) which has ended up changing many things across the entire project; code wise.
But all good as they say in these parts.

Thanks for you patience, and I hope that helps; at least belatedly.

2 Likes

@phillxnet Hello,

Thanks for this amazing update and there is nothing to apologise for at all. I know my hardware is old and could really do with a refresh. I am more than happy to wait for the newer version and I fully understand the impact your talking about with the move from 15.3 -> 15.4 and things take time to become stable from that sort of upgrade to the code base.

I am looking forward to testing out the newer version on my server once it is releases.

Thanks
Andrew

2 Likes

@agjbond007 Hello again.
Re:

See: V4.5+ Testing Channel Changelog - #4 by phillxnet

Hope that helps.

N.B. the new install may take a little longer as there are more developer dependencies to enable a self-build of sorts, post install (in the %posttrans scriptlet). As always feedback is welcome and this is our first rpm of this type so take notes as you go if you can - teething troubles are expected. You may end up being the first in-the-wild tester as it goes. Hopefully we will have full-blown installers with 4.5.4-0 pre-installed shortly.

1 Like

@phillxnet Hello,

I have been setting up my server and started to test. Here is what I did for the initial configuration to then run the rpm

systemctl disable apparmor

zypper --non-interactive addrepo --refresh -p105 https://download.opensuse.org/repositories/home:/rockstor/15.4/ home_rockstor

zypper --non-interactive addrepo --refresh -p97 https://download.opensuse.org/repositories/home:/rockstor:/branches:/Base:/System/15.4/ home_rockstor_branches_Base_System

rpm --import https://raw.githubusercontent.com/rockstor/rockstor-core/master/conf/ROCKSTOR-GPG-KEY

zypper addrepo -f http://updates.rockstor.com:8999/rockstor-testing/leap/15.4/ Rockstor-Testing

zypper removerepo Rockstor-Testing

zypper --non-interactive --gpg-auto-import-keys refresh

zypper in --no-recommends rockstor-4.5.4-0

When the installer is retrieving the packages I got this error

Retrieving: shellinabox-2.20+git.1548649128.4f0ecc3-lp154.4.3.x86_64.rpm …[error]
Download (curl) error for ‘https://download.opensuse.org/repositories/home:/rockstor/15.4/x86_64/shellinabox-2.20+git.1548649128.4f0ecc3-lp154.4.3.x86_64.rpm’:
Error code: Curl error 92
Error message: HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)

Thanks
Andrew

1 Like

That one seems like a possibly tricky one as it may be something happening on the server side of things. It could also be related to the mirrors your system is using.
I tried the same commands as you, for instance, and no problem :frowning:

That being said, I would make sure your system is all up-to-date, especially libcurl4 and libzypp (if you haven’t already).
Also, could you verify you have the correct repos?

zypper lr --uri

I see you mentioned running zypper removerepo Rockstor-Testing but I presume you re-added it after?

Alternatively, you can download the rpm and install it separately to resolve your issue but we might as well make sure we’re not missing something on the Rockstor side of things.

1 Like

Oh, also, if you’re adventurous, maybe the zypper log can prove useful? It’s very verbose so it may not be helpful, unfortunately, but it’s always worth a look:
grep -i 'curl' /var/log/zypper.log

@agjbond007 and @Flox
Re:

Agreed, I’ve seen something similar earlier today. Likely a zypper refresh and re-do will work as intended. Plus what @Flox said re checking the current state of your repos as it does look like you added and then removed the Rockstor-Testing repo.

We should be uploading the new Leap 15.4 based installers tomorrow hopefully, if all goes well. These have the new 4.5.4-0 rpm pre-installed. But this vanilla approach should work equally well, it will just be a bit more bloated likely.

@Flox it looks like we have a missing dependency on the vanilla instructions re:

which sets the systemd default:

But it is not a hard dependency and I’d like to keep it that way, but could cause incompatibility with such things as multi-path if we don’t recommend it, or mention the multi-path. But there is usually the pre-build installer for such occasions (hopefully tomorrow if the Pi4 target behaves).

Hope that helps.

2 Likes

@phillxnet & @Flox

thanks for the hints and a zypper refresh and running the RPM again I was able to install this build onto my server.

The zypper removerepo was due to the fact that I have it wrong and it needed to be changed. It was just in my crib sheet and I should have removed it when I posted here

I will hold off doing configuration on it as it would really be ideal to run it off your ISO build of the OS so a few more days of waiting for this will be just fine as I can see that this is going in the right direction

Thank you both for your support you have been amazing.

Thanks
Andrew

3 Likes

@agjbond007 Re:

This was not surprisingly delayed by our recent issues with the aforementioned 4.5.4-0 covered in the release notes for the now released in testing 4.5.5-0 here:

Lets see how that this 4.5.5-0 is received ‘in the wild’ and hopefully it will be workable enough to roll and release new installers with it included. But if you fancy rolling your own before hand I have updated the config to pre-install 4.5.5-0 by default. Take a look at our rockstor-installer repo for the instructions. But note that we have not yet updated the Readme in that repo with the new 15.4 profiles. But they are in the kiwi-ng config file and have been tested for 15.4 to boot on all target architectures/machines. I’ll get to building all profiles soon hopefully, bar Tumbleweed which I updated the profile for but it has not been tested. And I will update this thread when I do publish the pre-build installers with the newest testing rpm included.

It’s actually pretty easy, but does take quite some download and processing. The resulting installer is now around 890 MB !

Hope that helps.

2 Likes

Hi @phillxnet,

Thanks for the heads up on this. I have now installed this version 4.5.5.0 and I will do some checking.

I have set the update channel to testing within the RockStor app and it is asking to update to this version Rockstor 4.5.5-0.aarch64

The other thing that I have noticed is that the SSL cert means I an unable to use any other browser apart from Google Chrome to access the RockStor web app.

You are all doing fantastic work, thank you

Andrew

@agjbond007 Hello again.
Re:

Yes we are now multi-arch on our repos and it’s a know, but cosmetic mostly-harmless issue that we have noted here:

And it’s in on our Stable milestone:

Our cert is self signed. It may be you have to excempt it in other browsers.
Could you elaborate “unable to use”?

Thanks again for the ongoing feedback, we are getting there. Bit by bit.

1 Like

@phillxnet

Here is a screenshot from Microsoft Edge browser from my Mac.

When I perform this on Google Chrome there is an option to ignore and proceed to the website but unfortunately not on Edge.

I will have a look into the Browser configuration but the old saying from a user it used to work hahahahaha, but I need to look as I have the skills to look.

Thanks
Andrew

you could see whether clicking into the page and typing thisisunsafe (obviously won’t see it showing up anywhere on the screen) will get you to the page (works for me most of the time) - which is essentially the option to “go there anyway, no matter what you’re telling me”

2 Likes

@agjbond007 Re:

Mentioned in another thread but just wanted to round out the chat on this here in this thread also.

New installers are now available having just been rebuild today with all pending updates pre-applied and have 4.5.5-0 RC2 pre-installed also. And they could do with some testing.

Hope that helps.

3 Likes

Hi @phillxnet,

I now have a fully installed server from your latest ISO and its working great and I have it upgraded to 4.5.6 as well so thanks for your support and efforts to get this out.

Thanks
Andrew

3 Likes