Are we being billed for data in the ".Trash" folder?

I’ve been attempting to reduce the size of my persistent file drives to cut down on costs, but I’ve noticed that after deleting folders with 200+ GB worth of data, the reported file size has not changed as seen on https://cloud.lambda.ai/file-systems. That prompted me to dig further and I found that everything that I deleted was still being kept in these “.Trash” folders. Interacting with the bucket via the s3 api I was able to list out some of these files:
```
25/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeCache.txt: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CMakeCCompiler.cmake: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CMakeCUDACompiler.cmake: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CUDA.bin: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CMakeSystem.cmake: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdC/a.out: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/CMakeCUDACompilerId.cu: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/a.out: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/CMakeCUDACompilerId.cpp1.ii: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/CMakeCUDACompilerId.cpp4.ii: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/CMakeCUDACompilerId.cubin: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/CMakeCUDACompilerId.cudafe1.c: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/CMakeCUDACompilerId.cudafe1.cpp: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/CMakeCUDACompilerId.cudafe1.gpu: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/CMakeCUDACompilerId.cudafe1.stub.c: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/CMakeCUDACompilerId.fatbin: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/CMakeCUDACompilerId.fatbin.c: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/CMakeCUDACompilerId.module_id: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/CMakeCUDACompilerId.o: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/CMakeCUDACompilerId.ptx: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/a_dlink.cubin: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/a_dlink.fatbin: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/a_dlink.fatbin.c: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/a_dlink.o: Excluded (Path Filter)

2025/08/21 16:35:57 DEBUG : .Trash-1000/files/CMakeFiles/3.22.1/CompilerIdCUDA/tmp/a_dlink.reg.c: Excluded (Path Filter)
```

I’d really appreciate not being billed for the accumulated data that’s been hidden from after my attempts to delete it.

What application are you running that creates/uses a .Trash directory in your persistent storage filesystem—rather than, for example, in your home directory?

Edit: JupyterLab?

Edit 2: Noting that the Trash Specification allows for .Trash directories in the “top directory” of filesystems, like Lambda’s persistent storage filesystems.

1 Like

Yes typically I launch the JupyterLab session from the web app gui where instances are listed rather than ssh’ing from my own terminal. Is this the source of the issue?

When you say the “top directory” I assume you mean the top directory level of my persistent file drive since anything outside of that wouldn’t would not be a part of the billable data storage that I’m using…

Okay, yes I found it under:
~/<name-of-my-persistent-file-drive>/.Trash-1000/

Thanks!

Uh, so the reported size of my persistent file drive in that region has not changed after deleting that entire .Trash-1000 folder. Any idea why that is?

Update: The reported size has now updated to the expected much smaller size, so I believe it was a simple matter of deleting the .Trash-1000 directory at the root of the persistent file drive.