2

My $HOME on a server is in a Andrew file system, and the server runs kerberos.

I created a tmux session, wherein I ran a shell process. Then I detached it, and logged out, and after a while logged in again and reattach the tmux session. In the shell process in tmux, I found that I didn't have permission to access my (non-directory) files in $HOME. I checked my ticket and it didn't expire, and I renewed it by running krenew and still didn't have permission.

$ ls -l ls: cannot access README: Permission denied ls: cannot access setup.sh: Permission denied ls: cannot access setup.sh~: Permission denied total 14 drwxrwxr-x. 2 t 2048 Apr 6 21:48 bin drwxrwxr-x. 11 t 2048 Apr 24 18:16 data ??????????? ? ? ? ? ? README.md ??????????? ? ? ? ? ? setup.sh ??????????? ? ? ? ? ? setup.sh~ drwxrwxr-x. 2 t 2048 Apr 22 18:50 src 

Thanks!

3 Answers 3

2

The dirty solution is to update tmux's value for $KRB5CCNAME. First, run this outside tmux:

$ echo $KRB5CCNAME FILE:/tmp/krb5cc_201108_XXXXXX 

Then, inside tmux, you need to export that new value:

$ export KRB5CCNAME='FILE:/tmp/krb5cc_201108_XXXXXX' 

Now, tmux has your new credentials.

1

You might have a valid ticket, but you most likely don't have valid AFS tokens. Try running aklog to get tokens from your existing cached credentials. Check the output of tokens to see if you have valid tokens. Make sure that with your krenew that you run aklog (which is simply an additional parameter to krenew).

1

Here is a clean solution that worked for me. Log into any tmux session and -

$ kinit $ aklog 
1
  • Awesome! This worked for me. Commented Jun 25, 2019 at 14:58

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.