A while now (about half a year I think), I've moved my Gentoo prefix directory onto a local ZFS partition. Everything workes fine, but that chflags: /some/path: Operation not supported appears for every file in /var/tmp related to a emerge. It seems to me a rather cosmetic problem as every app emerged since then just works fine... so would just be nice to know what this 'chflags' actually does and then either I could file a bug against the zfs implementation or some other solution could be found, depending on the original problem. Reproducible: Always Steps to Reproduce: 1. put your gentoo prefix on the zfs implementation from http://www.macosforge.com 2. emerge something Actual Results: A chflags: /some/dir: Operation not supported for every file in /var/tmp related to the merge. A few example lines from a bzip2 reemerge: chflags: /Volumes/fourtytwo/Gentoo/var/tmp/portage/app-arch/bzip2-1.0.5-r00.1/image: Operation not supported chflags: /Volumes/fourtytwo/Gentoo/var/tmp/portage/app-arch/bzip2-1.0.5-r00.1/distdir: Operation not supported chflags: /Volumes/fourtytwo/Gentoo/var/tmp/portage/app-arch/bzip2-1.0.5-r00.1/temp/bzip2: Operation not supported chflags: /Volumes/fourtytwo/Gentoo/var/tmp/portage/app-arch/bzip2-1.0.5-r00.1/temp/build.log: Operation not supported Expected Results: no chflags: As stated above, I consider this problem rather cosmetic but it would be great is someone found the time explaining to me what chflags is trying to do and what we can do about it.
I've seen this before, darksiide had it on OSX, but I never managed to catch it, as chflags seems to be called somewhere as side-effect of something else, must be deep under the python hood. I'm using ZFS myself, both directly and over NFS (Solaris server) and have never seen any problems with OSX 10.5, Solaris 10/Sparc, Solaris 10/x86, Solaris 10/x64 and OpenBSD 4.2 (as far as I got there).
Interesting. Maybe it is then the combination of my prefix directory being symlinked from HFS to ZFS (the directory resides on ZFS but gentoo thinks it's somewhere in ~/Library/ which is only a symlink onto the zfs partition... ? Any chance we can trace that? (It's just annoying getting spammed with all that chflags stuff ;-) ). Another Idea, can this be a privileges Issue ? (my user has no admin rights, i have to sudo to mount and unmount zfs for example... ).
I think your symlink is fine, and only causing trouble with gcc. May even cause more trouble (like bzip2) if path lookups fail, or don't match. However for the chflags it doesn't matter, since I'm sure it knows it's dealing with ZFS instead of HFS+. The error indicates a permission problem, or possibly a missing implementation of chflags. Getting to know what exactly calls chflags would be a great start. Last time with darksiide, I really put Portage insideout to find it, and I couldn't find it, leading me to the conclusion that it must be a side-effect of something else.
As grobian has mentioned, I too have this issue... My prefix is on a NFS directory and the chflags command was sometimes also being called on files the never existed! (ie var/tmp/binpkgs/<app>/<cat>/...) I'll add myself to CC in case you stumble upon anything and want me to look at it as well.
(In reply to comment #4) > As grobian has mentioned, I too have this issue... > > My prefix is on a NFS directory and the chflags command was sometimes also > being called on files the never existed! (ie var/tmp/binpkgs/<app>/<cat>/...) > > I'll add myself to CC in case you stumble upon anything and want me to look at > it as well. > I seem to have run into the same issue. I'm trying out gfbsd7.0 and zfs. For me the emerge fails: This is output from emerge dhcpcd * checking 11 files for package collisions >>> Merging net-misc/dhcpcd-4.0.1 to / chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/var/lib/dhcpcd: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/var/lib: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/var: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/sbin/dhcpcd: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/sbin: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/lib/dhcpcd/dhcpcd-hooks/50-ntp.conf: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/lib/dhcpcd/dhcpcd-hooks/01-test: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/lib/dhcpcd/dhcpcd-hooks/10-mtu: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/lib/dhcpcd/dhcpcd-hooks/30-hostname: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/lib/dhcpcd/dhcpcd-hooks/20-resolv.conf: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/lib/dhcpcd/dhcpcd-hooks: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/lib/dhcpcd/dhcpcd-run-hooks: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/lib/dhcpcd: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/lib: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/etc/dhcpcd.conf: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/etc: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/usr/share/man/man5/dhcpcd.conf.5.bz2: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/usr/share/man/man5: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/usr/share/man/man8/dhcpcd.8.bz2: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/usr/share/man/man8/dhcpcd-run-hooks.8.bz2: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/usr/share/man/man8: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/usr/share/man: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/usr/share: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/usr: Operation not supported chflags: /var/tmp/portage/net-misc/dhcpcd-4.0.1/image/: Operation not supported --- /var/ Traceback (most recent call last): File "/usr/bin/emerge", line 18, in <module> retval = _emerge.emerge_main() File "/usr/lib/portage/pym/_emerge/__init__.py", line 9434, in emerge_main myopts, myaction, myfiles, spinner) File "/usr/lib/portage/pym/_emerge/__init__.py", line 8780, in action_build retval = mergetask.merge(pkglist, favorites, mtimedb) File "/usr/lib/portage/pym/_emerge/__init__.py", line 5871, in merge return self._merge(mylist, favorites, mtimedb) File "/usr/lib/portage/pym/_emerge/__init__.py", line 6186, in _merge blockers=self._find_blockers(pkg)) File "/usr/lib/portage/pym/portage/__init__.py", line 5595, in merge mydbapi=mydbapi, prev_mtimes=prev_mtimes) File "/usr/lib/portage/pym/portage/dbapi/vartree.py", line 2991, in merge mydbapi=mydbapi, prev_mtimes=prev_mtimes) File "/usr/lib/portage/pym/portage/dbapi/vartree.py", line 2999, in _merge cleanup=cleanup, mydbapi=mydbapi, prev_mtimes=prev_mtimes) File "/usr/lib/portage/pym/portage/dbapi/vartree.py", line 2533, in treewalk if self.mergeme(srcroot, destroot, outfile, secondhand, "", cfgfiledict, mymtime): File "/usr/lib/portage/pym/portage/dbapi/vartree.py", line 2840, in mergeme bsd_chflags.lchflags(mydest, dflags) File "/usr/lib/portage/pym/portage/__init__.py", line 69, in _lchflags return _chflags(path, flags, opts="-h") File "/usr/lib/portage/pym/portage/__init__.py", line 67, in _chflags raise e OSError: [Errno 1] chflags: /var: Operation not supported: '/var'
this should be fixed since we don't do chflags trickery any more on prefixed envs