Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] supporting remote mounts #178

Closed
eliasbenb opened this issue Sep 20, 2024 · 5 comments
Closed

[Feature Request] supporting remote mounts #178

eliasbenb opened this issue Sep 20, 2024 · 5 comments
Labels
enhancement New feature or request

Comments

@eliasbenb
Copy link

I'd first like to express how amazing, beautiful, and simple to setup this project is. Thank you for creating it!

My feature request is to allow adding remote mounts as extra filesystems. For example SSH mounts or, in my use case, rclone mounts.

My main goal is to monitor storage usage on my remote mounts. I realize remote mounts may be incompatible with certain beszel widgets that disk mounts would have available (e.g. throughput). So, if this feature were to be implemented, disk mounts would likely show different widgets.

I'd appreciate any thoughts and contributions to this requests Thank you!

@henrygd
Copy link
Owner

henrygd commented Sep 21, 2024

Thanks, glad you find it useful.

An ssh mount or samba share we can probably make work with the disk usage chart.

I'll need to experiment with rclone since I've not used it before. That may not be as straightforward.

@henrygd henrygd added the enhancement New feature or request label Sep 21, 2024
@eliasbenb
Copy link
Author

@henrygd Considering both SSHFS and Rclone use FUSE as their filesystems framework, I'd imagine implementing something for FUSE would allow either of SSHFS or Rclone (or any other FUSE filesystem) to work.

However, Samba, in my opinion, would be the more difficult one to work with since it uses a proprietary protocol (SMB).

I appreciate you already taking some initiative looking into it! If you hit a roadblock or this is a lower priority issue, let me know, I'll have some time on my hands in two weeks or so to try and implement this myself. Plus, I've been meaning to learn Go, so this would be a good opportunity 😊.

@henrygd
Copy link
Owner

henrygd commented Sep 21, 2024

Just did a quick test and it looks like we can read usage for SSHFS / FUSE and SMB / CIFS, at least with the binary.

I'm mainly curious what the capacity will be if you mount something like an S3 bucket with rclone. If it comes in as 1PB then that will not work well with the chart.

Otherwise I think I can refactor things a bit to allow filesystems without I/O and allow paths in EXTRA_FILESYSTEMS. I'll probably look further into it this week, but if not I'll let you know 👍

@eliasbenb
Copy link
Author

@henrygd I didn't consider this and you are correct. Certain Rclone providers don't have capacity information. The full list is in this table (look at the "About" column). You are also correct that Rclone displays the capacity as 1 PB in these cases (users can also manually set the size to anything they want with the --vfs-disk-space-total-size argument). This is obviously out of the scope of this project, so I think it would be best to assume the correct capacity and size is being reported and leave it up to the user to fix any misreporting issues.

Unlike storage capacity, all storage providers do correctly return information on the current size. However, I'm reading that this operation can be expensive for certain providers (like S3).

@henrygd
Copy link
Owner

henrygd commented Sep 29, 2024

This should work now in 0.5.0. Let me know if you have any questions or run into trouble setting it up.

@henrygd henrygd closed this as completed Sep 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants