# Error when checking out source code w/ svn on Raspi 3B+



## Eric-El-Mejorcito (Sep 19, 2019)

Hi,

I am trying to get the source code for the base system. Running 12.0 on a Raspi 3B+ (armv8).

I issue the svn checkout command, some source downloads, then the following error appears:

```
A    usr/src/12/sys/dev/drm2/radeon/radeon_display.c
A    usr/src/12/sys/dev/drm2/radeon/radeon_family.h
A    usr/src/12/sys/dev/drm2/drm_linux_list_sort.c
A    usr/src/12/sys/dev/drm2/drm_memory.c
A    usr/src/12/sys/dev/drm2/drm_ioc32.c
A    usr/src/12/sys/dev/drm2/drm_linux_list.h
A    usr/src/12/sys/dev/drm2/drm_mem_util.h
svn: E000028: Can't set position pointer in file '/tmp/svn-3qeADP': No space left on device
```
There are many gigabytes of free space on the device.

Any ideas what's going on?

Thanks


----------



## SirDice (Sep 19, 2019)

The error is pretty obvious:

```
No space left on device
```



Eric-El-Mejorcito said:


> There are many gigabytes of free space on the device.


Sure, but apparently not for the /tmp filesystem. So I suspect you have tmpfs(5) for /tmp, as the Pi has limited memory the /tmp filesystem is fairly limited too. Put /tmp/ back on disk.


----------



## ljboiler (Sep 19, 2019)

And, in particular, it looks like it's the device holding /tmp that's short on space...


----------



## Eric-El-Mejorcito (Sep 19, 2019)

SirDice said:


> The error is pretty obvious:
> 
> ```
> No space left on device
> ...



Thanks. Does that mean I just need to unmount tmpfs from there? (I'm an absolute beginner with FreeBSD btw)


----------



## ralphbsz (Sep 19, 2019)

Good starting point. Unmount /tmp, and then see what you have. If your system was set up normally, you should still have a /tmp directory, which is now on the root file system (the file system that is mounted on /). Here is an easy way to find out: "df /tmp": that will show you (in the last column) where the mount point of the file system is; after unmounting it should probably be the root file system.

Warning: I have no idea how the file system hierarchy is set up by default with FreeBSD on a raspberry pi. It could be that you have a very small root file system, and then large separate file systems for /usr, /home, /var, and so on. In that case, you might run out of space in your root file system, which is a REALLY bad idea. To protect against that, you should not do the SVN checkout as root, but instead log in as a normal user. Why? Normal users can't overfill the root file system; if they try and fail, there is still a little space left, and root can log in and clean up.

And a meta-warning: In the above message, I'm using the word "root" in two different meanings.


----------



## Eric-El-Mejorcito (Sep 20, 2019)

ralphbsz said:


> Good starting point. Unmount /tmp, and then see what you have. If your system was set up normally, you should still have a /tmp directory, which is now on the root file system (the file system that is mounted on /). Here is an easy way to find out: "df /tmp": that will show you (in the last column) where the mount point of the file system is; after unmounting it should probably be the root file system.
> 
> Warning: I have no idea how the file system hierarchy is set up by default with FreeBSD on a raspberry pi. It could be that you have a very small root file system, and then large separate file systems for /usr, /home, /var, and so on. In that case, you might run out of space in your root file system, which is a REALLY bad idea. To protect against that, you should not do the SVN checkout as root, but instead log in as a normal user. Why? Normal users can't overfill the root file system; if they try and fail, there is still a little space left, and root can log in and clean up.
> 
> And a meta-warning: In the above message, I'm using the word "root" in two different meanings.



Nice one, I will use the default non-root user and not fill root


----------



## Eric-El-Mejorcito (Sep 23, 2019)

ralphbsz said:


> Good starting point. Unmount /tmp, and then see what you have. If your system was set up normally, you should still have a /tmp directory, which is now on the root file system (the file system that is mounted on /). Here is an easy way to find out: "df /tmp": that will show you (in the last column) where the mount point of the file system is; after unmounting it should probably be the root file system.
> 
> Warning: I have no idea how the file system hierarchy is set up by default with FreeBSD on a raspberry pi. It could be that you have a very small root file system, and then large separate file systems for /usr, /home, /var, and so on. In that case, you might run out of space in your root file system, which is a REALLY bad idea. To protect against that, you should not do the SVN checkout as root, but instead log in as a normal user. Why? Normal users can't overfill the root file system; if they try and fail, there is still a little space left, and root can log in and clean up.
> 
> And a meta-warning: In the above message, I'm using the word "root" in two different meanings.



That worked perfectly, thank you! As it turned out, by the time you warned me my system was already screwed, presumably by exactly what you said - doing the checkout as root. I started the image from scratch and went ahead as discussed and it worked fine.


----------

