설치 오류 13 = 권한이 거부되었습니다.

설치 오류 13 = 권한이 거부되었습니다.

내 서버 중 하나는 fstab을 사용하여 Windows 디렉터리를 자동으로 마운트하도록 설정되어 있습니다. 그러나 마지막 재부팅 후 작동이 중지되었습니다. fstab의 줄은 다음과 같습니다.

//myserver/myfolder /mnt/backup cifs credentials=home/myfolder/.Smbcredentials

파일 .Smbcredentials은 다음과 같습니다

username=myaccount
password=mypassword
domain=mydomain

하나 만들어서 mount -a받았어요 mount error 13 = Permission denied. 이 작업을 충분히 수행하면 내 Windows 계정이 잠기므로 시도 중이라는 것을 알 수 있습니다. 비밀번호가 맞는지 확인했어요.

내가 뭘 잘못했나요?

답변1

확인해야 할 몇 가지 사항이 있습니다. 비슷한 작업을 수행했는데, 명령을 사용하여 직접 설치를 테스트하여 mount설정이 올바른지 확인할 수 있습니다.

자격 증명 파일 권한

파일에 올바른 권한이 있는지 확인하십시오.

$ sudo ls -l /etc/smb_credentials.txt 
-rw-------. 1 root root 54 Mar 24 13:19 /etc/smb_credentials.txt

상세한 설치

일반적으로 무엇이 잘못되었는지 알려주는 스위치를 mount사용 하면 더 많은 정보를 얻을 수 있습니다 .-v

$ sudo mount -v -t cifs //server/share /mnt \
    -o credentials=/etc/smb_credentials.txt

유효한 경우 다음과 같은 출력이 생성됩니다.

mount.cifs kernel mount options: ip=192.168.1.14,unc=\\server\share,credentials=/etc/smb_credentials.txt,ver=1,user=someuser,domain=somedom,pass=********

로그 확인

dmesg위의 마운트 명령을 실행한 후 및 /var/log/messages/또는 파일 에 /var/log/syslog시도가 있는지 확인하세요 mount.

보안 유형

-o ..마운트 스위치를 통해 많은 추가 옵션을 전달할 수 있습니다. 이러한 옵션은 기술별로 다르므로 귀하의 경우에 구체적으로 적용됩니다 mount.cifs. mount.cifs전달할 수 있는 모든 옵션에 대한 자세한 내용은 매뉴얼 페이지를 확인하세요 .

나는 당신에게 옵션이 누락된 것 같습니다 sec=.... 구체적으로 다음 옵션 중 하나입니다.

   sec=
       Security mode. Allowed values are:
       ·   none - attempt to connection as a null user (no name)
       ·   krb5 - Use Kerberos version 5 authentication
       ·   krb5i - Use Kerberos authentication and forcibly enable packet 
           signing
       ·   ntlm - Use NTLM password hashing
       ·   ntlmi - Use NTLM password hashing and force packet signing
       ·   ntlmv2 - Use NTLMv2 password hashing
       ·   ntlmv2i - Use NTLMv2 password hashing and force packet signing
       ·   ntlmssp - Use NTLMv2 password hashing encapsulated in Raw NTLMSSP
           message
       ·   ntlmsspi - Use NTLMv2 password hashing encapsulated in Raw 
           NTLMSSP message, and force packet signing

       The default in mainline kernel versions prior to v3.8 was sec=ntlm. 
       In v3.8, the default was changed to sec=ntlmssp.

또는 sec=...이 되도록 이 옵션을 조정해야 할 수도 있습니다 .sec=ntlmsec=ntlmssp

인용하다

답변2

감사합니다. 하지만 더 많은 인터넷 검색을 통해 해결책을 찾았습니다. 기본적으로 잘못된 보안 유형을 사용합니다.

$ sudo mount -t cifs //172.16.1.5/myshare/ /mnt/myshare \
    -osec=ntlmv2,domain=MYDOMAIN,username=myusername,password=mypassword

답변3

이 문제가 발생했는데 문제는 내 자격 증명 파일의 값 형식이 올바르게 지정되지 않았다는 것입니다. 나는 시도했다:

username=DOMAIN\mylogin
password=<password>
domain=FULLY.QUALIFIED.DOMAIN

나는 또한 다음을 시도했습니다.

[email protected]
password=<password>
domain=FULLY.QUALIFIED.DOMAIN

그리고:

username=FULLY.QUALIFIED.DOMAIN\mylogin
password=<password>
domain=FULLY.QUALIFIED.DOMAIN

일단 내 로그인 사용자 이름을 사용하면:

username=mylogin
password=<password>
domain=FULLY.QUALIFIED.DOMAIN

CIF 설치에 성공했습니다.

답변4

AD 환경의 경우 도메인을 탈퇴했다가 다시 가입해야 합니다.

net ads leave -U domain-admin-username

kinit domain-admin-username
net ads join -U domain-admin-username
systemctl restart smbd nmbd winbind

이것이 왜 필요한지는 확실하지 않지만 업데이트를 정기적으로 재부팅한 후에 발생했습니다. AD 관련 문제에 대한 다른 표시 없이 이 오류가 나타납니다.

관련 정보