Running out of space on RIO
While attempting to deploy we got the following error:
> A failure occurred while executing edu.wpi.first.deployutils.deploy.artifact.ArtifactDeployWorker
> SFTP error (SSH_FX_FAILURE): Failure
We put the error into google and found a stack overflow post which suggested that we were running out of space.
We SSH'd into the RIO using ssh admin@10.17.47.2 where the ip address is the one found in driver station.
Verifying the issue
In order to validate the cause of our issue as the RIO being out of space, we ran the command df -h to show the space available.
admin@roboRIO-1747-FRC:~# df -h
Filesystem Size Used Available Use% Mounted on
ubi1:rootfs 386.3M 386.3M 0 100% /
devtmpfs 121.6M 0 121.6M 0% /dev
tmpfs 122.1M 128.0K 122.0M 0% /run
tmpfs 63.5M 76.0K 63.4M 0% /var/volatile
ubi0:bootfs 49.0M 45.8M 3.2M 94% /boot
ubi0:config 2.0M 112.0K 1.7M 6% /etc/natinst/share
Finding the space
We next used pwd to show what directory we were in on the RIO. SSH defaults to the user we logged in as which is /home/admin
We then used ls /home to check what directories where available before using the cd command to swap to the /home directory.
Once in the /home directory we used the ls command again to see the available directories, with ours showing:
The lvuser (LabView User) is the user account which runs the robot code. We ran cd lvuser/ to get into that user's directory and once in we ran ls again to show the contents of the directory.
admin@roboRIO-1747-FRC:/home/lvuser# ls
Downloads.jar* README_File_Paths.txt@ frc_install/ robotCommand*
FRC_UserProgram.log@ SweeveProjects.jar* logs/ robotDebugCommand*
IsabelleTest.jar* deploy/ natinst/ sweeve gen.jar
PhoenixDiagnosticsProgram* frc/ networktables.json
From there we used ls -alh to get the list of files and folders inside /home/lvuser/ along with the sizes of each file or folder.
admin@roboRIO-1747-FRC:/home/lvuser# ls -alh
total 30364
drwxrwsr-x 7 lvuser ni 1.4K Dec 11 19:36 ./
drwxr-xr-x 5 admin administ 416 Jan 2 2025 ../
-rw-r--r-- 1 lvuser ni 389 Sep 9 2024 .bashrc
-rw-r--r-- 1 lvuser ni 241 Sep 9 2024 .profile
-rwxr-xr-x 1 lvuser ni 6.8M Dec 4 20:35 Downloads.jar*
lrwxrwxrwx 1 lvuser ni 42 Jan 2 2025 FRC_UserProgram.log -> /var/local/natinst/log/FRC_UserProgram.log
-rwxr-xr-x 1 lvuser ni 6.8M Nov 26 14:51 IsabelleTest.jar*
-rwxr-xr-x 1 lvuser ni 4.6M Nov 26 14:07 PhoenixDiagnosticsProgram*
lrwxrwxrwx 1 admin ni 22 Jan 20 2023 README_File_Paths.txt -> /README_File_Paths.txt
-rwxr-xr-x 1 lvuser ni 6.8M Dec 4 19:56 SweeveProjects.jar*
drwxr-sr-x 2 admin ni 232 Nov 26 14:39 deploy/
drwxr-xr-x 4 lvuser ni 304 Jan 2 2025 frc/
drwxrwsr-x 2 lvuser ni 160 Dec 18 2024 frc_install/
drwxr-sr-x 2 lvuser ni 952 Dec 4 19:56 logs/
drwxrwxr-x 4 lvuser ni 296 Dec 18 2024 natinst/
-rw-r--r-- 1 lvuser ni 3 Nov 26 14:40 networktables.json
-rwxr-xr-x 1 lvuser ni 170 Dec 11 19:48 robotCommand*
-rwxr-xr-x 1 lvuser ni 39 Nov 26 14:07 robotDebugCommand*
-rw-r--r-- 1 admin ni 4.6M Dec 11 19:48 sweeve gen.jar
Looking at the files and folders shown we found the logs/ directory which ended up having a large number of files with the .hoot extension, most of which were over 2M as shown here:
admin@roboRIO-1747-FRC:/home/lvuser/logs# ls -alh
total 169084
drwxr-sr-x 2 lvuser ni 952 Dec 4 19:56 ./
drwxrwsr-x 7 lvuser ni 1.4K Dec 11 19:36 ../
-rw-r--r-- 1 lvuser ni 88.3M Dec 4 19:56 rio_1969-12-31_19-06-28.hoot
-rw-r--r-- 1 lvuser ni 9.6M Nov 26 14:44 rio_2025-11-26_14-40-17.hoot
-rw-r--r-- 1 lvuser ni 1.8M Nov 26 14:45 rio_2025-11-26_14-44-21.hoot
-rw-r--r-- 1 lvuser ni 7.7M Nov 26 14:48 rio_2025-11-26_14-45-15.hoot
-rw-r--r-- 1 lvuser ni 2.2M Nov 26 14:49 rio_2025-11-26_14-48-38.hoot
-rw-r--r-- 1 lvuser ni 3.5M Nov 26 14:51 rio_2025-11-26_14-49-44.hoot
-rw-r--r-- 1 lvuser ni 2.1M Nov 26 14:52 rio_2025-11-26_14-51-15.hoot
-rw-r--r-- 1 lvuser ni 12.1M Nov 26 14:56 rio_2025-11-26_14-52-17.hoot
-rw-r--r-- 1 lvuser ni 37.8M Dec 4 20:12 rio_2025-12-04_19-56-49.hoot
Cleaning up the found large files
To clean out the logs and get the space needed we used rm rio_* which removes all of the files that start with rio_ without having to type the unique character strings. The same logs folder after using rm rio_* is shown here:
admin@roboRIO-1747-FRC:/home/lvuser/logs# ls -alh
total 0
drwxr-sr-x 2 lvuser ni 160 Dec 11 19:58 ./
drwxrwsr-x 7 lvuser ni 1.4K Dec 11 19:36 ../
Validation
After doing that the RIO should have plenty of space to deploy robot code again. We can verify that what we did cleaned up space, by again running the df -h command from earlier:
admin@roboRIO-1747-FRC:/home/lvuser/logs# df -h
Filesystem Size Used Available Use% Mounted on
ubi1:rootfs 386.3M 249.1M 132.5M 65% /
devtmpfs 121.6M 0 121.6M 0% /dev
tmpfs 122.1M 128.0K 122.0M 0% /run
tmpfs 63.5M 76.0K 63.4M 0% /var/volatile
ubi0:bootfs 49.0M 45.8M 3.2M 94% /boot
ubi0:config 2.0M 112.0K 1.7M 6% /etc/natinst/share
To logout use exit which should show: