Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Only in the latter case; I didn't want to assume how people want things done, and implicitly magical tools break more often than not in my experience.

You may also be able to tell I don't have a lot of AWS experience (:



Would be cool if there was a tool that could detect that configured path was attempted to be opened, and redirect the open() syscall to the real path... But that would most likely require kernel support.

Boxxy seems good enough for userspace.



I actually attempted using ptrace to rewrite syscalls first! It was... horribly painful, and didn't work anywhere near as well as the bind-mount version.


In the past I used something like inotab to use an inotify-based trigger to pipe data from SSH to a different system that didn't have any NAS or SAN support, it might also work to detect 'who' is touching any files that boxxy has previously seen rules for.

Perhaps still too tricky to make it do magic things and break programs in the process, but it could be used to audit who's working with what paths and let the user print a report so they know what apps to boxx up and make them behave.


That is an excellent idea! Something like could definitely be worth adding. It's why there's a "remount rootfs as ro" flag; that way anything not specified in rules is ro and misbehaving programs will explode.


Love exploding apps. That's what they get for eating my filesystem.


For a structured approach to ptrace/syscall rewriting, you could try FB's reverie. I worked on and used it during an internship a few years back; it's pretty amazing at what it does.

https://github.com/facebookexperimental/reverie


Fun fact, one layer of App Engine's sandbox from a couple years ago was implemented using ptrace. It will redirect filesystem IO to in-memory files.


Interesting! That makes perfect sense, I just don't think I'm smart enough to use ptrace properly right now :P


Were you mostly going off the ptrace man page? I tried reading it to figure out ptrace and it made me feel not smart enough too.


The man page + Google! There's very few good examples of it, and I've accepted that I'm just not familiar enough with that specific problem space.


Try checking out proot?


I suppose that is indeed more trouble than it's worth. As for applications that might behave like AWS and their SDK; I think that if someone uses boxxy they would probably also remember to do the same thing for other stuff that uses aws under the hood, so overall a win either way!


If I were to try to do this without symlinks, maybe I'd try mount




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: