Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top


I am seeing two different /tmp directories. In a plain GNOME terminal ls -lia /tmp gives the following:

total 136
  5797 drwxrwxrwt 36 root root     780 Oct  5 20:57 .
     2 drwxr-xr-x 21 root root    4096 Oct  5 19:48 ..
 32824 -rw-------  1 me   users   1872 Oct  5 18:04 krb5cc_1000

In a script started by cupsd, ls -lia /tmp >> /test.log gives a different a different folder with a different inode!

total 4
127684 drwxrwxrwt  2 root root   40 Oct  5 19:57 .
     2 drwxr-xr-x 21 root root 4096 Oct  5 19:48 ..

In particular, I get klist: No credentials cache found (ticket cache FILE:/tmp/krb5cc_1000)


I'm using Kerberos authentication with a shared samba printer. This requires running smbspool as my user instead of lp, so it can read /tmp/krb5cc_1000. I used the hacked smb script in to achieve this.

Here's my /usr/lib/cups/backend/ksmb:

echo 'network smb "Unknown" "Windows Printer via SAMBA"'
ls -lia /tmp &>> /test.log
su $2 -c "klist &>> /test.log"
su -c "/usr/bin/smbspool $1 $2 \"$3\" $4 \"$5\"" $2

Unfortunately, from the script's perspective, /tmp/krb5cc_1000 does not exist, and the authentication fails.

I'm running Arch x64, systemd, GNOME 3. I initially guessed there was something strange going on with /tmp being a tmpfs. However, I get the same failure when I comment out the tmpfs mount in fstab.

share|improve this question
up vote 1 down vote accepted

It looks like a chroot side effect. In which case find / -inum 127684 tells you where this /tmp is located.

share|improve this answer
What chroot? Does cupsd run a chroot by default for some reason? – terdon Oct 6 '12 at 10:50
I might, that's a wild guess. Did you run the command I suggested to figure it out ? – jlliagre Oct 6 '12 at 16:30
Thanks for the tip. The find command pointed to /tmp/systemd-private-XXXXXX. It turns out that systemd gave cupsd its own private tmp dir. I fixed my issue by disabling PrivateTmp in /etc/systemd/system/ and restarting cups. – blah Oct 6 '12 at 18:31

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.