프롬프트에서 비밀번호를 읽지 못하면 mount -t cifs가 실패합니다. 어떻게 해결합니까?

프롬프트에서 비밀번호를 읽지 못하면 mount -t cifs가 실패합니다. 어떻게 해결합니까?

다음 명령을 사용하여 Windows 네트워크 드라이브/공유를 성공적으로 마운트할 수 있습니다.

mount -t cfis //servername/sharename /mnt -o 'username=user,sec=ntlmssp'

이 명령을 실행하면 비밀번호를 입력한 다음 설치가 올바른지 묻는 메시지가 표시됩니다.

~에 따르면man mount.cifs나는 이것을 할 수 있어야합니다.

mount -t cfis //servername/sharename /mnt -o 'username=user,password=pwd,sec=ntlmssp'

아니면 이거

PASSWD='pwd' mount -t cfis //servername/sharename /mnt -o 'username=user,sec=ntlmssp'

그러나 이상하게도 이 메시지와 함께 두 명령이 모두 실패합니다.

 mount error(13): Permission denied

이제 우리 회사는 비밀번호를 요구하는 "매우 똑똑한" 일을 하기 때문에특수 문자내 것에는 느낌표 " !"가 포함되어 있습니다. 이것이 명령줄 셸에 특별한 의미가 있다는 것을 알고 있으므로 올바르게 이스케이프 처리하여 비밀번호가 이면 pwd!다음 두 명령을 실행합니다.

PASSWD='pwd\!' mount -t cfis //servername/sharename /mnt -o 'username=user,sec=ntlmssp'

mount -t cfis //servername/sharename /mnt -o 'username=user,password=pwd\!,sec=ntlmssp'

하지만 여전히 작동하지 않습니다.

Windows에 연결 저는 비밀번호를 숨겨야 한다는 긴급함을 특별히 느끼지 않으므로(bash 기록에 표시되지 않도록) 비밀번호 프롬프트를 건너뛸 수 있는 방법을 찾고 싶습니다.

주로 문제가 무엇인지 알고 싶습니다.

마지막으로 자격 증명 파일도 시도해 보았지만 역시 작동하지 않았습니다.

답변1

자격 증명 파일을 사용하는 것이 좋습니다

-o credentials=filename|cred=filename
specifies a file that contains a username and/or password and optionally the name of the  workgroup.
The format of the file is:

username=value
password=value
domain=value

관련 정보