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

Failure in Merging Directories Located Under the Same OverlayFS Mountpoint #123

Open
gliargovas opened this issue Oct 13, 2023 · 1 comment
Labels
bug Something isn't working

Comments

@gliargovas
Copy link
Collaborator

gliargovas commented Oct 13, 2023

When attempting to merge two directories residing under the same overlayfs mountpoint within try, the operation fails, rendering the common directory unmountable within try.

Error Reproduction:

$ ./try -D sandbox1 "echo foo > file.txt"
...
$ ./try -L sandbox1 "cat file.txt"
...
try(/tmp/tmp.VwOWiakeQW): Warning: Failed mounting /users as an overlay and mergerfs or unionfs not set and could not be found, see "/tmp/tmp.B3jpnj64oq"
/tmp/tmp.LyCvWjVjEY: 7: cd: can't cd to /users/gliargko/try

Error log displays:

mount: /tmp/tmp.NSMc55yqg2/temproot/users: mount(2) system call failed: Too many levels of symbolic links.

dmesg output:

[ 2107.018994] overlayfs: fs on 'sandbox1/upperdir/users' does not support file handles, falling back to xino=off.
[ 2107.019006] overlayfs: overlapping lowerdir path

Installing mergerfs solves the issue.

  • The initial mount failure is due to overlayfs's inability to handle overlapping directories. What causes these overlaps?
  • It seems like mergerfs resolves this as it effectively manages overlapping paths, allowing the directories to merge seamlessly. Why isn't overlayfs enough?
@gliargovas gliargovas added the bug Something isn't working label Oct 13, 2023
@ezrizhu
Copy link
Collaborator

ezrizhu commented Oct 13, 2023

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants