Skip to content

dotnet-install scripts on Raspberry Pi with little RAM fail and cannot be repeated immediately #50814

@psycrush

Description

@psycrush

Type of issue

Other (describe below)

Description

I wanted to run the installation script for .NET on Linux on my Raspberry Pi 3B+ with 1GB RAM as described on the Microsoft website.
The script starts, but either breaks with the error “Cannot write: No space left on device” or the entire OS crashes/restarts.

I saw in the script file that the archives for the setup files are unpacked to /tmp.
The size of the /tmp directory on the Raspberry Pi is dynamically 50% of my RAM, which in my case is 454MB.

If the installation aborts, it is not possible to try again without first manually deleting the .dotnet directory, otherwise the script claims that the installation has already been completed. However, the dotnet command cannot be used.

I was able to solve the problem and install .NET by adjusting line 1640 in the install script “dotnet-install.sh” to use a different temp directory with more space.

Original:
temporary_file_template="${TMPDIR:-/tmp}/dotnet.XXXXXXXXX"

I couldn't find a parameter in the documentation to adjust the temp path.

Therefore, I have the following request:

Is it possible to extend the script with a parameter for a custom temp path, or at least
display a note on the Microsoft page for Raspberry Pi users when a model with little RAM and a desktop environment is used?
As an occasional Linux user, I was somewhat irritated by the error message that there was not enough memory, as there was still more than 20 GB free on the partition.

Alternatively, a path other than /tmp could be used by default, or the script could check before installation whether there is sufficient memory available in the /tmp directory.

I am aware that this problem does not affect the majority of users, but perhaps there is a good solution and I could contribute to an improvement.

Thanks in advance! Despite everything, I really enjoy using dotnet.

Hardware: Raspberry Pi 3B+ (1GB RAM)
OS: Raspberry Pi OS (64-bit) with Desktop Envoirement

Setup archive determined by the script: dotnet-sdk-10.0.101-linux-arm64.tar.gz

Page URL

https://learn.microsoft.com/de-de/dotnet/core/install/linux-scripted-manual#scripted-install

Content source URL

https://github.com/dotnet/docs/blob/main/docs/core/install/linux-scripted-manual.md

Document Version Independent Id

2be3647d-495b-c9f0-cf06-9a7bf687d3bb

Platform Id

003da39a-3ecc-f0f5-5b57-8cd5e8dbfb02

Article author

@adegeo

Metadata

  • ID: 885585df-1c7c-c774-34e4-4b274a7c2602
  • PlatformId: 003da39a-3ecc-f0f5-5b57-8cd5e8dbfb02
  • Service: dotnet-fundamentals
  • Sub-service: install

Related Issues

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions