with dev-util/ccache-3.2 installed I get: ccache: error: /var/tmp/ccache//ccache.conf: Permission denied -rw------- 1 root portage 14 20. Nov 21:53 /var/tmp/ccache/ccache.conf chmod -v g+rw /var/tmp/ccache/ccache.conf does not help. Something does set the wrong permissions back.
Portage 2.2.14 (python 3.3.5-final-0, default/linux/amd64/13.0, gcc-4.9.2, glibc-2.20, 3.18.0-rc5 x86_64) ================================================================= System Settings ================================================================= System uname: Linux-3.18.0-rc5-x86_64-AMD_Athlon-tm-_II_X2_240_Processor-with-gentoo-2.2 KiB Mem: 4047472 total, 601960 free KiB Swap: 7103480 total, 7103480 free Timestamp of tree: Thu, 20 Nov 2014 18:45:01 +0000 ld GNU ld (Gentoo 2.24 p1.4) 2.24 ccache version 3.2 [enabled] app-shells/bash: 4.3_p30-r1 dev-java/java-config: 2.2.0 dev-lang/perl: 5.20.1-r2 dev-lang/python: 2.7.8, 3.3.5-r1, 3.4.2 dev-util/ccache: 3.2 dev-util/cmake: 3.0.2 dev-util/pkgconfig: 0.28-r2 sys-apps/baselayout: 2.2 sys-apps/openrc: 0.13.4 sys-apps/sandbox: 2.6-r1 sys-devel/autoconf: 2.13, 2.69 sys-devel/automake: 1.10.3-r1, 1.11.6-r1, 1.12.6, 1.14.1 sys-devel/binutils: 2.24-r3 sys-devel/gcc: 4.9.2 sys-devel/gcc-config: 1.8 sys-devel/libtool: 2.4.3-r2 sys-devel/make: 4.1-r1 sys-kernel/linux-headers: 3.17-r1 (virtual/os-headers) sys-libs/glibc: 2.20 Repositories: gentoo overlay_jl ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="*" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-march=native -O2 -pipe" DISTDIR="/usr/portage/distfiles" EMERGE_DEFAULT_OPTS="--autounmask-write=y --keep-going --quiet-build=y" FCFLAGS="-march=native -O2 -pipe" FEATURES="assume-digests binpkg-logs ccache config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-march=native -O2 -pipe" GENTOO_MIRRORS="http://distfiles.gentoo.org" LANG="de_DE.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" USE="3dnow 3dnowext 64bit X Xaw3d a52 aac aacplus aacs aalib ace acl acpi activefilter aften alsa amd64 ap apm apng archive async audacious audiofile automount bazaar berkdb binary-drivers binfilter blender-game bluetooth bluray boost bzip2 bzr cairo canusb ccache cdda cddb cdio cdparanoia cdr cdrdao cdrom cgi charconv chm chroot city cjk clang cleartype cli colordiff colors compress consolekit corefonts cpio cracklib crypt css cue cups curl curlwrappers cvs cxx daemon dbus declarative device-mapper dga dhcp doom doomsday dos download-subs dri dri3 dts dump dv dvb dvd dvdnav eap eap-sim eap-tls ebook egl emerald emoticon enca encode enscript equalizer exif extensions extras faac faad fam fat fax fbcon ffmpeg fftw firefox flac fluidsynth fontconfig foomaticdb fortran ftp fts3 fuse g3dvl gallium gbm gd gdbm gdu geoip gif gimp git glamor glut gme gnutls gphoto2 gpm graphite gsm gstreamer gtk gtk3 gudev gui gzip hddtemp hdf hdf5 highlight hpcups hpijs http hwdb iconv icq icu id3 id3tag idn imagemagick introspection ios ipc ipod ipv6 jack java javascript jit jpeg jpeg2k kate kde keymap ladspa lame laptop lcms lensfun lha libass libcaca libcanberra libkms libnl libnotify libsamplerate libssh2 libtiger libv4l libv4l2 libwww llvm-shared-libs lm_sensors logrotate lua lxde lzma lzo mad madwifi magic man matroska md5sum metalink midi mikmod mime minizip mixer mjpeg mmap mms mmx mmxext mng mobi mod modplug modules mono mouse mozilla mp3 mp4 mpeg mpeg2 mplayer mtp multilib multislot musepack musicbrainz nano-syntax ncat ncurses ndiff network nfs nfsidmap nfsv3 nfsv4 nfsv41 nls nmap nmap-update nokia normalize nowlistening nping nptl nsplugin ntfs ntfsprogs ntp nvidia nvram obex ocr ogg ogm openal opencl opengl openmax openmp openssl openvg optimized-qmake oscar osdmenu otr p2p pam pango panorama parport parse-clocks pcap pci pcre pdf pdfimport phonon pipes plasma plugins pm-utils pmu png policykit postscript ppds privacy projectm projectx pulseaudio pvr python python3 qalculate qt3support qt4 quicktime r600-llvm-compiler radio rar raw rdesktop readline recording redeyes reiser4 reiserfs remote-access remoteosd replaygain rpm rtc rtmp rtsp rubberband samba sbsms scanner schroedinger sdl secure-delete semantic-desktop sensord session sftp sha512 shorten shout skins slang smbclient smi sndfile sockets sound soundtouch sox speex spell sql sqlite sqlite3 sse sse2 sse3 sse4 sse4_2 ssh ssl startup-notification statistics stk stream subtitles subversion svg swat symlink syslog szip taglib tcpd texteffect tftp theora threads thumbnail tiff translator truetype twolame udev udisks unicode upcall upower urlpicpreview usb v4l vaapi vamp vcd vcdx vdpau video videos vim-syntax virtualbox vlm vnc vorbis vpx vroot vst wad wav wavpack webgl webkit webm webpresence wifi winbind winpopup wireshark wmf wps wxwidgets x264 x265 xa xattr xcb xcomposite xfs xine xinerama xinetd xml xmp xorg xosd xpm xrandr xscreensaver xv xvid xvmc zenmap zip zlib zvbi" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="de" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python3_3" PYTHON_TARGETS="python2_7 python3_3 python3_4" RUBY_TARGETS="ruby19 ruby20 ruby21" USERLAND="GNU" VIDEO_CARDS="fbdev vesa svga vga radeon v4l modesetting r100 r200 r300 r600 nouveau" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON ================================================================= Package Settings ================================================================= sys-apps/portage-2.2.14 was built with the following: USE="(ipc) xattr -build -doc -epydoc (-selinux)" ABI_X86="64" LINGUAS="-ru" PYTHON_TARGETS="python2_7 python3_3 python3_4 (-pypy) -python3_2" dev-util/ccache-3.2 was built with the following: USE="" ABI_X86="64" sys-devel/gcc-4.9.2 was built with the following: USE="cxx fortran graphite (multilib) nls nptl openmp sanitize (-altivec) -awt -doc (-fixed-point) -gcj -go (-hardened) (-libssp) (-multislot) -nopie -nossp -objc -objc++ -objc-gc -regression-test -vanilla" ABI_X86="64"
I can confirm the same problem. Portage 2.2.14 (python 3.4.2-final-0, default/linux/amd64/13.0, gcc-4.9.2, glibc-2.20, 3.17.3-gentoo x86_64) ================================================================= System uname: Linux-3.17.3-gentoo-x86_64-Intel-R-_Atom-TM-_CPU_E680_@_1.60GHz-with-gentoo-2.2 KiB Mem: 2052140 total, 334704 free KiB Swap: 2621436 total, 2621436 free Timestamp of tree: Thu, 20 Nov 2014 23:15:01 +0000 ld GNU ld (Gentoo 2.24 p1.4) 2.24 ccache version 3.2 [disabled] app-shells/bash: 4.3_p30-r1 dev-lang/perl: 5.20.1-r2 dev-lang/python: 2.7.8, 3.4.2 dev-util/ccache: 3.2 dev-util/cmake: 3.0.2 dev-util/pkgconfig: 0.28-r2 sys-apps/baselayout: 2.2 sys-apps/openrc: 0.13.4 sys-apps/sandbox: 2.6-r1 sys-devel/autoconf: 2.13, 2.69 sys-devel/automake: 1.9.6-r4, 1.14.1 sys-devel/binutils: 2.24-r3 sys-devel/gcc: 4.9.2 sys-devel/gcc-config: 1.8 sys-devel/libtool: 2.4.3-r2 sys-devel/make: 4.1-r1 sys-kernel/linux-headers: 3.17-r1 (virtual/os-headers) sys-libs/glibc: 2.20 Repositories: gentoo galactica ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="*" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=atom -O3 -mmmx -msse -msse2 -msse3 -mssse3 -mcx16 -mmovbe -msahf -pipe -fomit-frame-pointer -mfpmath=sse" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.6/ext-active/ /etc/php/cgi-php5.6/ext-active/ /etc/php/cli-php5.6/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-march=atom -O3 -mmmx -msse -msse2 -msse3 -mssse3 -mcx16 -mmovbe -msahf -pipe -fomit-frame-pointer -mfpmath=sse -fvisibility-inlines-hidden" DISTDIR="/usr/portage/distfiles" EMERGE_DEFAULT_OPTS="--autounmask=n --quiet-build=n --with-bdeps=y" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://distfiles.gentoo.org" INSTALL_MASK="/etc/systemd/network/* /etc/systemd/system/* /etc/xinetd.d/* /usr/lib64/systemd/system/* /usr/lib64/systemd/system-shutdown/*" LANG="de_DE.utf8" LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--sort-common -Wl,-z,now" MAKEOPTS="-j3 -l2" PKGDIR="/usr/portage/packages" PORTAGE_BUNZIP2_COMMAND="pbunzip2" PORTAGE_BZIP2_COMMAND="pbzip2" PORTAGE_COMPRESS="xz" PORTAGE_COMPRESS_FLAGS="-9e" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_EXTRA_OPTS="--delete-before --delete-excluded --exclude-from=/etc/portage/rsync_excludes --stats" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" USE="amd64 bash-completion berkdb bzip2 cairo caps cgi cracklib crypt ctype curl cvs cxx exif fontconfig ftp gd gif git gmp gnutls graphviz hddtemp iconv icu idn ipv6 javascript jit jpeg jpeg2k lcms ldap lm_sensors lzma lzo mime mmxext mysql mysqli ncurses nls nntp nptl offensive openmp pam pcre perl pie png python readline samba session simplexml slang sockets spell sqlite sse2 ssl ssse3 subversion suid svg symlink tcpd threads tiff truetype udev unicode usb vhosts vim-syntax xml zlib" ABI_X86="64" COLLECTD_PLUGINS="apcups cgroups conntrack contextswitch cpu df disk dns entropy ethstat exec filecount hddtemp interface iptables irq load logfile md memory mysql netlink nfs nginx ntpd openvpn ping processes rrdcached sensors serial swap table tcpconns unixsock uptime users wireless" CURL_SSL="openssl" ELIBC="glibc" GRUB_PLATFORMS="pc" KERNEL="linux" LCD_DEVICES="lcd2usb glcd2usb" LINGUAS="de" NGINX_MODULES_HTTP="access auth_basic autoindex charset fancyindex fastcgi gzip proxy rewrite spdy stub_status" PHP_TARGETS="php5-6" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" USERLAND="GNU" USE_PYTHON="2.7" Unset: CPPFLAGS, CTARGET, LC_ALL
odd, it keeps getting set to -rw-r--r-- on my system. what are the perms of the other files in that dir ?
(In reply to SpanKY from comment #3) > odd, it keeps getting set to -rw-r--r-- on my system. what are the perms of > the other files in that dir ? No other files here, because it apparently errors out before it can create any: $ ls -la /var/cache/ccache/ total 12 drwxrwsr-x 2 root portage 4096 Nov 21 09:07 . drwxr-xr-x 14 root root 4096 Nov 21 09:07 .. -rw------- 1 root portage 14 Nov 21 09:07 ccache.conf This is with: FEATURES="assume-digests binpkg-logs ccache collision-protect compressdebug config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms sign splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
(In reply to Ulrich Müller from comment #4) if you clear the dir and build, does it die before it gets a chance to build ? i cleared the whole thing and rebuilt ccache a few times ... using userfetch userpriv usersandbox as well. i'm not seeing ccache doing any permission modifications itself. it just creates the file if it didn't already exist. it uses O_CREAT/0666 as to be expected. i know portage does some permission adjustment on the ccache dir ...
(In reply to SpanKY from comment #5) > (In reply to Ulrich Müller from comment #4) > > if you clear the dir and build, does it die before it gets a chance to build > ? i cleared the whole thing and rebuilt ccache a few times ... using > userfetch userpriv usersandbox as well. It dies in configure: >>> Configuring source in /var/tmp/portage/dev-util/ccache-3.2/work/ccache-3.2 . .. * econf: updating ccache-3.2/config.sub with /usr/share/gnuconfig/config.sub * econf: updating ccache-3.2/config.guess with /usr/share/gnuconfig/config.gues s ./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --syscon fdir=/etc --localstatedir=/var/lib --libdir=/usr/lib64 configure: Configuring ccache checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking for x86_64-pc-linux-gnu-gcc... x86_64-pc-linux-gnu-gcc checking whether the C compiler works... no configure: error: in `/var/tmp/portage/dev-util/ccache-3.2/work/ccache-3.2': configure: error: C compiler cannot create executables config.log says this: ## ----------- ## ## Core tests. ## ## ----------- ## configure:2221: Configuring ccache configure:2260: checking build system type configure:2274: result: x86_64-pc-linux-gnu configure:2294: checking host system type configure:2307: result: x86_64-pc-linux-gnu configure:2350: checking for x86_64-pc-linux-gnu-gcc configure:2366: found /usr/lib64/ccache/bin/x86_64-pc-linux-gnu-gcc configure:2377: result: x86_64-pc-linux-gnu-gcc configure:2646: checking for C compiler version configure:2655: x86_64-pc-linux-gnu-gcc --version >&5 ccache: error: /var/cache/ccache/ccache.conf: Permission denied configure:2666: $? = 1 configure:2655: x86_64-pc-linux-gnu-gcc -v >&5 ccache: error: /var/cache/ccache/ccache.conf: Permission denied configure:2666: $? = 1 configure:2655: x86_64-pc-linux-gnu-gcc -V >&5 ccache: error: /var/cache/ccache/ccache.conf: Permission denied configure:2666: $? = 1 configure:2655: x86_64-pc-linux-gnu-gcc -qversion >&5 ccache: error: /var/cache/ccache/ccache.conf: Permission denied configure:2666: $? = 1 configure:2686: checking whether the C compiler works configure:2708: x86_64-pc-linux-gnu-gcc -march=core2 -ggdb -O2 -pipe -Wl,-O1 -Wl,--as-needed conftest.c >&5 ccache: error: /var/cache/ccache/ccache.conf: Permission denied configure:2712: $? = 1 configure:2750: result: no configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "" | #define PACKAGE_TARNAME "" | #define PACKAGE_VERSION "" | #define PACKAGE_STRING "" | #define PACKAGE_BUGREPORT "" | #define PACKAGE_URL "" | /* end confdefs.h. */ | | int | main () | { | | ; | return 0; | } configure:2755: error: in `/var/tmp/portage/dev-util/ccache-3.2/work/ccache-3.2': configure:2757: error: C compiler cannot create executables
(In reply to Ulrich Müller from comment #6) using it by hand outside of the sandbox look weird too ? rm ~/.ccache/ccache.conf ccache gcc -c ~/test.c -o /dev/null ls -l ~/.ccache/ccache.conf
(In reply to SpanKY from comment #7) > rm ~/.ccache/ccache.conf > ccache gcc -c ~/test.c -o /dev/null > ls -l ~/.ccache/ccache.conf -rw-r--r-- 1 ulm users 16 Nov 21 10:46 .ccache/ccache.conf
Permissions are changed after setting cache size by ccache -M: # ls -l ~/.ccache/ccache.conf -rw-r--r-- 1 root portage 16 Nov 22 14:49 /root/.ccache/ccache.conf # ccache -M 10G Set cache size limit to 10.0 GB # ls -l ~/.ccache/ccache.conf -rw------- 1 root portage 15 Nov 22 14:50 /root/.ccache/ccache.conf
Could this be set wrong by default?: umask (CCACHE_UMASK) This setting specifies the umask for ccache and all child processes (such as the compiler). This is mostly useful when you wish to share your cache with other users. Note that this also affects the file permissions set on the object files created from your compilations. Does this affact the config file?
This is the ccache code change that makes 'ccache -M' always update ccache.conf mode to 0600 in ccache v3.2 (as create_tmp_file() creates files with 0600 in mode bits): https://git.samba.org/?p=ccache.git;a=blobdiff;f=conf.c;h=92c70c0648d5f5339fc28c889107f32f61c4bbb9;hp=56adb484ecd4079906e50aef03f930c5d98f7b79;hb=fc61ca9a9232f26ee3f714d4b8738d916f6948ff;hpb=f49770a4b142e82a3cf1f5e1da158f69e0447972
very inconsistent behaviour: ccache -M 10G and ccache -s produce the new configfile with different permissions. bastellinux ~ # rm -r /var/tmp/ccache bastellinux ~ # ccache -M 10G Set cache size limit to 10.0 GB bastellinux ~ # ls -la /var/tmp/ccache/ insgesamt 12 drwxr-xr-x 2 root root 4096 22. Nov 15:58 . drwxrwxrwt 10 root root 4096 22. Nov 15:58 .. -rw------- 1 root root 15 22. Nov 15:58 ccache.conf bastellinux ~ # rm -r /var/tmp/ccache bastellinux ~ # ccache -s cache directory /var/tmp/ccache/ primary config /var/tmp/ccache//ccache.conf secondary config (readonly) /etc/ccache.conf cache hit (direct) 0 cache hit (preprocessed) 0 cache miss 0 files in cache 0 cache size 0.0 kB max cache size 5.0 GB bastellinux ~ # ls -la /var/tmp/ccache/ insgesamt 12 drwxr-xr-x 2 root root 4096 22. Nov 15:59 . drwxrwxrwt 10 root root 4096 22. Nov 15:59 .. -rw-r--r-- 1 root root 16 22. Nov 15:59 ccache.conf Also you see no portage group used. @ Nick Herman: Did you try to reverse the commit?
@jospezial I tried reversing just those two lines in diff and ccahce.conf seems to always have 644 mode after applying ccache -M now. $ CCACHE_DIR=/tmp/.ccache ./ccache -M 3G Set cache size limit to 3.0 GB $ ll /tmp/.ccache/ total 4.0K -rw-r--r-- 1 gen gen 14 Nov 22 18:39 ccache.conf $ chmod 0600 /tmp/.ccache/ccache.conf $ ll /tmp/.ccache/ total 4.0K -rw------- 1 gen gen 14 Nov 22 18:40 ccache.conf $ CCACHE_DIR=/tmp/.ccache ./ccache -M 2G Set cache size limit to 2.0 GB $ ll /tmp/.ccache/ total 4.0K -rw-r--r-- 1 gen gen 14 Nov 22 18:40 ccache.conf
@vapier: How about package.masking ccache-3.2 until this issue is resolved?
As a workaround, I dropped the CCACHE_SIZE from make.conf (The default changed from 1-5 GB) and deleted the ccache.conf.
something more to the inconsistency of the permissions: I deleted /var/tmp/ccache/ , removed the ccache size and path settings from /etc/make.conf and deleted the file in /etc/env.d . (don't forget to do env-update and reboot or do source /etc/profile) After the reboot I emerged updates (worked without problems). And this is the ccache.conf that emerge creates: ls -la /var/tmp/ccache/ insgesamt 84 drwxrwsr-x 19 root portage 4096 23. Nov 22:58 . drwxrwxrwt 10 root root 4096 23. Nov 22:56 .. drwxrwsr-x 12 portage portage 4096 23. Nov 22:58 0 drwxrwsr-x 12 portage portage 4096 23. Nov 22:58 1 drwxrwsr-x 10 portage portage 4096 23. Nov 22:58 2 drwxrwsr-x 7 portage portage 4096 23. Nov 22:58 3 drwxrwsr-x 11 portage portage 4096 23. Nov 22:58 4 drwxrwsr-x 10 portage portage 4096 23. Nov 22:58 5 drwxrwsr-x 12 portage portage 4096 23. Nov 22:58 6 drwxrwsr-x 9 portage portage 4096 23. Nov 22:58 7 drwxrwsr-x 12 portage portage 4096 23. Nov 22:58 8 drwxrwsr-x 13 portage portage 4096 23. Nov 22:58 9 -rw-rw-r-- 1 portage portage 190 23. Nov 22:56 CACHEDIR.TAG drwxrwsr-x 10 portage portage 4096 23. Nov 22:58 a drwxrwsr-x 10 portage portage 4096 23. Nov 22:58 b drwxrwsr-x 7 portage portage 4096 23. Nov 22:58 c -rw-rw-r-- 1 portage portage 16 23. Nov 22:56 ccache.conf drwxrwsr-x 11 portage portage 4096 23. Nov 22:58 d drwxrwsr-x 10 portage portage 4096 23. Nov 22:58 e drwxrwsr-x 14 portage portage 4096 23. Nov 22:58 f drwxrwsr-x 2 portage portage 4096 23. Nov 22:58 tmp Here we have write permission for the group too. For next I will try to set the path in the new /etc/ccache.conf (does not yet exist on my system). If you set nowhere CCACHE_DIR then emerge uses /var/tmp/ccache/ . But then ccache -s creates and uses ~/.ccache/ for the user.
If you want to set the path in /etc/ccache.conf for systemwide you need the to write it in lower letters as you can see in manpage because it is not an environment variable. Note the little difference (not ccache_dir): cache_dir=/var/tmp/ccache Don't use " and no / on the end of line. The funny thing is the output of ccache -s as normal user. It shows all counters zero even if the user is in the portage group. joerg@bastellinux ~ $ ccache -s cache directory /var/tmp/ccache primary config /var/tmp/ccache/ccache.conf secondary config (readonly) /etc/ccache.conf cache hit (direct) 0 cache hit (preprocessed) 0 cache miss 0 files in cache 0 cache size 0.0 kB max cache size 5.0 GB That's because the the stats files are not readable by group (portage). joerg@bastellinux ~ $ groups adm lp wheel audio cdrom video games usb scanner plugdev lpadmin pulse pulse-access portage cdemu vboxusers wireshark joerg joerg@bastellinux ~ $ ls -la /var/tmp/ccache/0/stats -rw------- 1 portage portage 61 24. Nov 00:18 /var/tmp/ccache/0/stats joerg@bastellinux ~ $ cat /var/tmp/ccache/0/stats cat: /var/tmp/ccache/0/stats: Keine Berechtigung (permission denied)
*** Bug 530644 has been marked as a duplicate of this bug. ***
With this being pretty clearly an upstream bug I filed it as such. Could someone (the author?) with the privs put this link in the URL field? https://bugzilla.samba.org/show_bug.cgi?id=10978 (For now I'm simply masking 3.2. If 3.1.10-r1 was working before, it should continue working a bit longer. I have a new printer and need to rebuild some stuff with USE=cups.) Duncan
Going forward can we make sure things like the new config file, stats files, whatever CACHEDIR.TAG is all get 664? Not to mention the cached files themselves are sometimes 600 for lord knows what reasons. I use all the user* FEATURES and it's playing havoc with calling ccache -s
3.2.1 has been released, which seems to fix that issue: https://ccache.samba.org/releasenotes.html#_new_features_and_improvements "Fixed regression in temporary file handling, which lead to incorrect permissions for stats, manifest and ccache.conf files in the cache. " Please bump ;)
+*ccache-3.2.1 (12 Dec 2014) + + 12 Dec 2014; Justin Lecher <jlec@gentoo.org> -ccache-3.2.ebuild, + +ccache-3.2.1.ebuild, metadata.xml: + Version Bump, fixes #529998 +