-
Notifications
You must be signed in to change notification settings - Fork 57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Python fails to load after loading nighres module #874
Comments
Dear @m13slash9, I can unfortunately not reproduce the problem :( It works exactly as it should. Can you share more details about the system you are running this at? Is this a MacOS with Apple Silicone? What Docker version are you running? |
I have the suspicion that this could be a firewall/deep packet inspection issue in your institution. To confirm this could you run this and let me know if you see an IO error there:
Would you have a chance to run this in another network (e.g. hotspot from your phone?) |
additonally can you run the following tests:
and post the output here? |
@stebo85 Thank you for suggestions
This is running under Windows 10 with a WLS image of Description:Ubuntu 18.04.4 LTS Release: 18.04 (not sure this matters, although Docker might interact with that one), Docker 4.34.2 (167172)
I doubt that - the output from
Both |
Not sure I'll be able to do this with the desktop, but it looks like it's not a networking issue, or it is still a suspect? |
Also, I've just realized, I've had a memory upgrade on the machine between NeurodesktopApp installation and this bug. |
a memory upgrade couldn't explain what you see and everything else you report seems ok, so a network bug in a deep packet inspection filter in your institution is the most likely explanation. To confirm the network problem run: cvmfs_config stat -v neurodesk.ardc.edu.au cvmfs_config stat -v neurodesk.ardc.edu.au #now you should see an i/o error: #No. IO Errors: 1 Can you confirm that this is happening? |
If you see the IO error, can you reach out to our IT department and ask which deep inspection filter they use and if they can check which file triggers the blocking. Then they need to reach out to their deep packet inspection vendor and ask for the false alarm to be fixed. If you could share these details with me that would be great: [email protected] |
Indeed, I got Let's see if I can sort this out. |
Could you run the following commands and post the outputs here?
|
We think it's this file: Can you try to open this in your Browser? Is it blocked? Do you get an error? |
What happens with curl on this file?
This should work and give you an OK |
This file is /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 inside the container - and our scans show it is ok. |
and can you run: curl http://cvmfs.neurodesk.org/cvmfs/neurodesk.ardc.edu.au/data/ce/80a5473acd3770d67c5a296ecf750f21b94541 --output test you should see that it starts downloading and then gets interrupted by the deep packet inspection - which confirms our suspicions. |
So pretty much no output in |
Blocked by the browser, but downloaded something (around 114kb) after allowing it. |
|
Ahh, it probably didn't add a line break in /etc/cvmfs/default.local Can you check if this file is correct and if not fix the line break and do the rest again fron there |
Seems like it
|
Cool! Thank you for running these checks. If you could find out what company your institution uses for the deep packet inspection and what rule is being triggered by this file we should be able to come up with a workaround |
Dear @m13slash9 , We have the suspicion that the deep packet inspection finds this glibc vulnerability: https://security.snyk.io/vuln/SNYK-UBUNTU2204-GLIBC-6674187 We are now trying to update the container to a newer glibc version in the hope that this fixes the problem. But please let us know should you be able to get more information |
Have you got more information from your IT team? To confirm our suspicion, can you try some of the following containers in Neurodesk and see if you get the same error? vesselvio_1.1.2 If some of them work, then it’s a false positive in the deep packet inspection rule. If none of them work, then they detect the signature of this specific glibc version. Can you also try these containers? afni_21.2.00 They are using older versions of glibc which also contain this vulnerability. This container for example contains a version of glibc where the vulnerability is fixed: |
That gets a bit more confusing (at least for me) now, as i was running these either via Neurodesktop (where GUI was available), and via the terminal in NeurodeskApp, and in the end I was able to run all of them. Either the GUI started up, or I could do In the end, I have tried to run nighres container in the Neurodesktop, and it worked (I could run Python and do
Considering I got my local IT support ticket redirected a few times and still left with no definitive answer, I am happy that it works (for now), but confused about the whole situation. |
Thank you so much for testing all containers! Given that it works now for you I conclude that this was a wrong signature that was added to the deep package inspection software in the last days and they realised the mistake and removed it again. Our lesson from this is:
Thank you for bringing it to our attention! I hope we will eventually find out what this was! |
Not sure it's a reason for reopening the issue, but I found a weird reproducible behavior with the same error: Whenever I launch a new Neurodesk session and try
I get
But if I try another module before that, e.g.,
And then actually interact with the said module, as in this case
Right after that, python runs fine and is able to run nighres
|
that's interesting. Let's see what your IT support finds out. I still think it's a deep packet inspection issue. Once we have a new version of nighres we should be able to work around this. |
Running Neurodesk App and providing command
python
right after start results in Python running correctly, i.e.Python 3.11.6 | packaged by conda-forge | (main, Oct 3 2023, 10:40:35)
When providing the command
module load nighres
and trying to runpython
after that results inFATAL: exec /usr/bin/python failed: input/output error
Unloading the module with
module unload nighres
and runningpython
again results back in functioning PythonPython 3.11.6 | packaged by conda-forge | (main, Oct 3 2023, 10:40:35)
Neurodesk docker image is
neurodesktop:2024-10-22
(as far as I remember, this was not an issue with the previous image, but I'm not sure about that)
The text was updated successfully, but these errors were encountered: