[Bug 269213] /etc/rc.d/cleanvar interaction with samba fdescfs mount causes file deletions outside of /var/run
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 269213] /etc/rc.d/cleanvar interaction with samba fdescfs mount causes file deletions outside of /var/run"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 269213] /etc/rc.d/cleanvar interaction with samba fdescfs mount causes file deletions outside of /var/run"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 29 Jan 2023 02:35:13 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=269213 Bug ID: 269213 Summary: /etc/rc.d/cleanvar interaction with samba fdescfs mount causes file deletions outside of /var/run Product: Base System Version: Unspecified Hardware: Any OS: Any Status: New Severity: Affects Many People Priority: --- Component: misc Assignee: bugs@FreeBSD.org Reporter: julian@precisium.com.au With newer samba versions there is apparently a requirement of the new VFS to mount fdescfs with the nodup option. Samba mounts fdescfs under /var/run e.g /var/run/samba4/fd This interacts badly with /etc/rc.d/cleanvar which uses 'find /var/run ...' to delete files under /var/run. During startup - there appear to be various parts of the filesystem referenced under /var/run/samba4/fd so that the result is deletion of all files under paths such as /bin /sbin /etc /root Rather than pushing to try to stop samba mounting this where it wants - I'm filing this bug to see if it makes sense instead to make cleanvar safer, as potentially other packages may do this sort of thing in future anyway. I tried various -name & -path flags to exclude *samba4/fd/* etc -but 'find' doesn't seem to recognise these as normal names & paths. adding "-mount" to restrict find to the same device number as /var/run seems to work. e.g the relevant line in /etc/rc.d/cleanvar becomes: find /var/run -mount \( -type f -or -type s | -name log -and ! -name logpriv \) -delete see also discussion at https://forums.freebsd.org/threads/iocage-removes-files-at-startup.87733/ -- You are receiving this mail because: You are the assignee for the bug.