TrueNAS-Scale 서버에서 여러 Samba 공유를 호스팅하고 Arch Linux 시스템에서 "다중 사용자" 옵션을 사용하여 마운트했습니다. 내 사용자로서 cifscreds add
공유에 액세스할 수 있지만 잠시 후 더 이상 액세스할 수 없으며 분명히 내 세션 키링이 취소되었습니다. 왜?
Arch 머신에서 다음과 같이 각 공유에 대해 systemd 설치 장치를 활성화했습니다.
$ cat /etc/systemd/system/mnt-share.mount
[Unit]
Description=Mount share
After=nss-lookup.target
[Mount]
What=//truenas-scale.localdomain/share
Where=/mnt/share
Type=cifs
Options=multiuser,sec=ntlmssp,credentials=/etc/samba/credentials/smbnobody.creds,iocharset=utf8,rw
[Install]
WantedBy=multi-user.target
( /etc/samba/credentials/smbnobody.creds
사용자의 사용자 이름/비밀번호가 포함되어 있습니다 smbnobody
. 이는 공유에 대한 최소한의 권한(최상위 디렉토리에 대한 읽기 액세스만 가능)을 갖기 위해 TrueNAS 서버에서 특별히 생성한 것입니다.)
재부팅 후 Arch 머신에 SSH로 연결하고 실행하여 cifscreds add truenas-scale.localdomain
비밀번호를 입력했는데 /mnt/share
예상대로 읽기/쓰기 액세스 권한이 생겼습니다. 그런 다음 tmux
장기 실행 작업을 시작한 다음 연결을 끊습니다.
잠시 후 SSH를 통해 Arch 머신에 다시 접속할 때 더 이상 읽기/쓰기 액세스 권한이 없다는 사실을 자주 발견합니다 /mnt/share
.
$ ls /mnt/share
ls: cannot access '/mnt/share': Permission denied
$ ls -l /mnt
ls: cannot access '/mnt/share': Permission denied
total 0
d????????? ? ? ? ? ? share
자격 증명을 추가/업데이트하려는 시도도 실패했습니다.
$ cifscreds add truenas-scale.localdomain
Error: unable to query session keyring: Key has been revoked
$ keyctl show
Session Keyring
Unable to dump key: Key has been revoked
다시 액세스하려면 컴퓨터를 재부팅해야 했습니다.
이 문제는 장기 실행 작업이 공유에 액세스하지 못하는 경우 발생합니다. 예를 들어 wget
내부 공유에 대용량 파일 다운로드를 실행하고 tmux
다운로드가 완료되기 전에 연결을 끊었다가 다시 연결하면 공유에 대한 읽기/쓰기 액세스가 여전히 유효합니다. 하지만 다운로드가 완료된 후 바로 다시 연결하면 "권한이 거부되었습니다."라고 표시됩니다.
왜 이런 일이 발생하며 어떻게 방지할 수 있나요?
답변1
저도 비슷한 문제가 있었는데 제 경우에는 keyctl session
새 세션을 만들고 인증하여 문제를 해결할 수 있었습니다.
나는 이것이 불만족스러운 답변이라는 것을 알고 있지만 지금까지 얻은 다른 답변(예: 없음)보다 낫고 기반을 구축할 수 있는 몇 가지 단서를 제공할 수 있기를 바랍니다.