Fmriprep: failed to create symbolic link 'lh.white.H': Operation not permitted

Created on 3 Jul 2020  路  1Comment  路  Source: nipreps/fmriprep

Hi,
I am novice with fmriprep. I got an error message once I tried to run my first participant.
_recon-all -s sub-234 exited with ERRORS at Fri Jul 3 01:01:45 UTC 2020

For more details, see the log file /out/freesurfer/sub-234/scripts/recon-all-lh.log
To report a problem, see http://surfer.nmr.mgh.harvard.edu/fswiki/BugReporting

Standard error:
ln: failed to create symbolic link 'lh.white.H': Operation not permitted
Return code: 1_

I saw this issue has already been evoked in some closed issues. Thus, as adviced, I tried to run again (without removing already processed files) the same command line but I got the same error again.

I am using the docker on windows and powershell to write the command line.

Best,
Simon

What version of fMRIPrep are you using?

latest

What kind of installation are you using? Containers (Singularity, Docker), or "bare-metal"?

Docker on windows with wsl

What is the exact command-line you used?

<fmriprep-docker D:\for_Raphael\BIDS\Nifti D:\for_Raphael\BIDS\derivatives participant --participant-label 234 --fs-license-file D:\bash_codes\freesurfer\license.txt>

Have you checked that your inputs are BIDS valid?

Yes

Did fMRIPrep generate the visual report for this particular subject? If yes, could you share it?

I have html file with the number of my subject, is it the visual report required ?

Can you find some traces of the error reported in the visual report (at the bottom) or in crashfiles?

Node: _autorecon_surfs0
Working directory: /tmp/work/fmriprep_wf/single_subject_234_wf/anat_preproc_wf/surface_recon_wf/autorecon_resume_wf/autorecon_surfs/mapflow/_autorecon_surfs0

Node inputs:

FLAIR_file = <undefined>
T1_files = <undefined>
T2_file = <undefined>
args = <undefined>
big_ventricles = <undefined>
brainstem = <undefined>
directive = autorecon-hemi
environ = {}
expert = <undefined>
flags = ['-noparcstats', '-noparcstats2', '-noparcstats3', '-nohyporelabel', '-nobalabels']
hemi = lh
hippocampal_subfields_T1 = <undefined>
hippocampal_subfields_T2 = <undefined>
hires = <undefined>
mprage = <undefined>
mri_aparc2aseg = <undefined>
mri_ca_label = <undefined>
mri_ca_normalize = <undefined>
mri_ca_register = <undefined>
mri_edit_wm_with_aseg = <undefined>
mri_em_register = <undefined>
mri_fill = <undefined>
mri_mask = <undefined>
mri_normalize = <undefined>
mri_pretess = <undefined>
mri_remove_neck = <undefined>
mri_segment = <undefined>
mri_segstats = <undefined>
mri_tessellate = <undefined>
mri_watershed = <undefined>
mris_anatomical_stats = <undefined>
mris_ca_label = <undefined>
mris_fix_topology = <undefined>
mris_inflate = <undefined>
mris_make_surfaces = <undefined>
mris_register = <undefined>
mris_smooth = <undefined>
mris_sphere = <undefined>
mris_surf2vol = <undefined>
mrisp_paint = <undefined>
openmp = 3
parallel = <undefined>
steps = <undefined>
subject_id = sub-234
subjects_dir = /out/freesurfer
talairach = <undefined>
use_FLAIR = <undefined>
use_T2 = <undefined>
xopts = <undefined>

Traceback (most recent call last):
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py", line 67, in run_node
    result["result"] = node.run(updatehash=updatehash)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 516, in run
    result = self._run_interface(execute=True)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 635, in _run_interface
    return self._run_command(execute)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 741, in _run_command
    result = self._interface.run(cwd=outdir)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 397, in run
    runtime = self._run_interface(runtime)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 792, in _run_interface
    self.raise_exception(runtime)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 723, in raise_exception
    ).format(**runtime.dictcopy())
RuntimeError: Command:
recon-all -autorecon-hemi lh -noparcstats -noparcstats2 -noparcstats3 -nohyporelabel -nobalabels -openmp 3 -subjid sub-234 -sd /out/freesurfer -notessellate -nosmooth1 -noinflate1 -noqsphere -nofix -nowhite -nosmooth2 -noinflate2
Standard output:
Subject Stamp: freesurfer-Linux-centos6_x86_64-stable-pub-v6.0.1-f53a55a
Current Stamp: freesurfer-Linux-centos6_x86_64-stable-pub-v6.0.1-f53a55a
INFO: SUBJECTS_DIR is /out/freesurfer
Actual FREESURFER_HOME /opt/freesurfer
-rwxrwxrwx 1 root root 47373 Jul  2 08:36 /out/freesurfer/sub-234/scripts/recon-all-lh.log
Linux e0276ac10016 4.19.104-microsoft-standard #1 SMP Wed Feb 19 06:37:35 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
'/opt/freesurfer/bin/recon-all' -> '/out/freesurfer/sub-234/scripts/recon-all.local-copy'
#--------------------------------------------
#@# Curv .H and .K lh Fri Jul  3 01:01:40 UTC 2020
/out/freesurfer/sub-234/surf

 mris_curvature -w lh.white.preaparc 

total integrated curvature = 0.622*4pi (7.817) --> 0 handles
ICI = 124.2, FI = 1547.2, variation=23528.613
writing Gaussian curvature to ./lh.white.preaparc.K...done.
writing mean curvature to ./lh.white.preaparc.H...done.
rm -f lh.white.H
ln -s lh.white.preaparc.H lh.white.H
Linux e0276ac10016 4.19.104-microsoft-standard #1 SMP Wed Feb 19 06:37:35 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

recon-all -s sub-234 exited with ERRORS at Fri Jul  3 01:01:45 UTC 2020

For more details, see the log file /out/freesurfer/sub-234/scripts/recon-all-lh.log
To report a problem, see http://surfer.nmr.mgh.harvard.edu/fswiki/BugReporting

Standard error:
ln: failed to create symbolic link 'lh.white.H': Operation not permitted
Return code: 1

and

<Node: _autorecon_surfs1
Working directory: /tmp/work/fmriprep_wf/single_subject_234_wf/anat_preproc_wf/surface_recon_wf/autorecon_resume_wf/autorecon_surfs/mapflow/_autorecon_surfs1

Node inputs:

FLAIR_file = <undefined>
T1_files = <undefined>
T2_file = <undefined>
args = <undefined>
big_ventricles = <undefined>
brainstem = <undefined>
directive = autorecon-hemi
environ = {}
expert = <undefined>
flags = ['-noparcstats', '-noparcstats2', '-noparcstats3', '-nohyporelabel', '-nobalabels']
hemi = rh
hippocampal_subfields_T1 = <undefined>
hippocampal_subfields_T2 = <undefined>
hires = <undefined>
mprage = <undefined>
mri_aparc2aseg = <undefined>
mri_ca_label = <undefined>
mri_ca_normalize = <undefined>
mri_ca_register = <undefined>
mri_edit_wm_with_aseg = <undefined>
mri_em_register = <undefined>
mri_fill = <undefined>
mri_mask = <undefined>
mri_normalize = <undefined>
mri_pretess = <undefined>
mri_remove_neck = <undefined>
mri_segment = <undefined>
mri_segstats = <undefined>
mri_tessellate = <undefined>
mri_watershed = <undefined>
mris_anatomical_stats = <undefined>
mris_ca_label = <undefined>
mris_fix_topology = <undefined>
mris_inflate = <undefined>
mris_make_surfaces = <undefined>
mris_register = <undefined>
mris_smooth = <undefined>
mris_sphere = <undefined>
mris_surf2vol = <undefined>
mrisp_paint = <undefined>
openmp = 3
parallel = <undefined>
steps = <undefined>
subject_id = sub-234
subjects_dir = /out/freesurfer
talairach = <undefined>
use_FLAIR = <undefined>
use_T2 = <undefined>
xopts = <undefined>

Traceback (most recent call last):
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py", line 67, in run_node
    result["result"] = node.run(updatehash=updatehash)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 516, in run
    result = self._run_interface(execute=True)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 635, in _run_interface
    return self._run_command(execute)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 741, in _run_command
    result = self._interface.run(cwd=outdir)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 397, in run
    runtime = self._run_interface(runtime)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 792, in _run_interface
    self.raise_exception(runtime)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 723, in raise_exception
    ).format(**runtime.dictcopy())
RuntimeError: Command:
recon-all -autorecon-hemi rh -noparcstats -noparcstats2 -noparcstats3 -nohyporelabel -nobalabels -openmp 3 -subjid sub-234 -sd /out/freesurfer -notessellate -nosmooth1 -noinflate1 -noqsphere -nofix -nowhite -nosmooth2 -noinflate2
Standard output:
Subject Stamp: freesurfer-Linux-centos6_x86_64-stable-pub-v6.0.1-f53a55a
Current Stamp: freesurfer-Linux-centos6_x86_64-stable-pub-v6.0.1-f53a55a
INFO: SUBJECTS_DIR is /out/freesurfer
Actual FREESURFER_HOME /opt/freesurfer
-rwxrwxrwx 1 root root 47246 Jul  2 08:57 /out/freesurfer/sub-234/scripts/recon-all-rh.log
Linux e0276ac10016 4.19.104-microsoft-standard #1 SMP Wed Feb 19 06:37:35 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
'/opt/freesurfer/bin/recon-all' -> '/out/freesurfer/sub-234/scripts/recon-all.local-copy'
#--------------------------------------------
#@# Curv .H and .K rh Fri Jul  3 01:01:50 UTC 2020
/out/freesurfer/sub-234/surf

 mris_curvature -w rh.white.preaparc 

total integrated curvature = 3.993*4pi (50.182) --> -3 handles
ICI = 124.7, FI = 1556.4, variation=23606.168
writing Gaussian curvature to ./rh.white.preaparc.K...done.
writing mean curvature to ./rh.white.preaparc.H...done.
rm -f rh.white.H
ln -s rh.white.preaparc.H rh.white.H
Linux e0276ac10016 4.19.104-microsoft-standard #1 SMP Wed Feb 19 06:37:35 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

recon-all -s sub-234 exited with ERRORS at Fri Jul  3 01:01:54 UTC 2020

For more details, see the log file /out/freesurfer/sub-234/scripts/recon-all-rh.log
To report a problem, see http://surfer.nmr.mgh.harvard.edu/fswiki/BugReporting

Standard error:
ln: failed to create symbolic link 'rh.white.H': Operation not permitted
Return code: 1
>
bug

Most helpful comment

The issue is almost certainly that your file system doesn't allow symlinks. Unfortunately, this seems to be a non-optional part of recon-all, so the only way I see around it is to run the remaining part of FreeSurfer on a Linux or OSX machine. Or use a POSIX filesystem on Windows.

Edit: I just checked, it appears that 7.1.0 still has this step, so waiting for us to support FreeSurfer 7 isn't going to resolve the issue.

>All comments

The issue is almost certainly that your file system doesn't allow symlinks. Unfortunately, this seems to be a non-optional part of recon-all, so the only way I see around it is to run the remaining part of FreeSurfer on a Linux or OSX machine. Or use a POSIX filesystem on Windows.

Edit: I just checked, it appears that 7.1.0 still has this step, so waiting for us to support FreeSurfer 7 isn't going to resolve the issue.

Was this page helpful?
0 / 5 - 0 ratings