이 문제는 일반적으로 필요한 포트를 사용할 수 없기 때문에 MLM(MATLAB 라이선스 관리자) 프로세스를 시작하지 못했음을 나타냅니다. 이 오류의 원인은 다음 중 하나 때문일 수 있습니다.
- 포트 충돌
- /var/tmp/ 충돌
- 올바르지 않거나 오래된 MLM
- 잘못된 호스트 ID
- 만료된 라이센스
포트 충돌
서버 라이선스 파일에 의해 정의된 포트가 이미 사용 중인 경우 라이선스 관리자를 시작할 수 없습니다.
이 문제를 해결하려면 먼저 컴퓨터를 다시 시작하여 기존 서비스에서 사용하는 포트를 확보하십시오. 이 문제는 기존 LMGRD/MLM 프로세스가 이미 포트를 사용하고 있기 때문에 자주 발생할 수 있습니다.
컴퓨터를 다시 시작한 후에도 문제가 지속되면 실행 중인 각 라이선스 매니저에 대해 다른 포트를 설정해야 합니다. 포트는 라이선스 매니저에서 사용하는 license.dat 파일의 처음 두 줄에 정의되어 있습니다.
예를 들어, 이 license.dat 파일에서:
SERVER 라이센스 서버 이름 0123456789AB 27000
데몬 MLM "C:\Program Files\MATLAB\R20XXy\etc\win64\mlm.exe"
- lmgrd.exe 포트 27000을 사용하도록 설정되어 있습니다.
- MLM.exe 포트가 수동으로 정의되지 않는 한 기본적으로 임의의 포트를 사용합니다.
license.dat 파일이 다음과 같이 편집된 경우:
SERVER 라이선스 서버 이름 0123456789AB 27050
데몬 MLM "C:\Program Files\MATLAB\R20XXy\etc\win64\mlm.exe" 포트=27051
- 이제 lmgrd.exe 포트 27050을 사용합니다.
- MLM.exe 이제 포트 27051을 사용합니다.
license.dat 파일을 업데이트한 후 네트워크 라이선스 관리자를 다시 시작해야 합니다.
그런 다음 네트워크 클라이언트에서 MATLAB이 사용하는 포트 번호를 변경합니다.
클라이언트의 network.lic 파일을 업데이트합니다. 이 파일은 다음 중 하나입니다.
- (Windows) - $MATLAB\R20XXy\licenses\network.lic
- (Linux) - /usr/local/MATLAB/R20XXy/licenses/network.lic
- (MacOS) - /Applications/MATLAB_R20XXy.app/licenses/network.lic
라이선스 매니저에 대한 라이선스 파일의 SERVER 라인과 일치하도록 클라이언트 라이선스 파일의 SERVER 라인을 업데이트합니다.
방화벽이 포트를 차단하는 경우 포트 충돌이 있을 수도 있습니다. 방화벽이 원인인지 확인하려면 방화벽을 일시적으로 비활성화합니다(안전한 경우 비활성화).
방화벽을 비활성화하여 라이선스를 체크아웃할 수 있는 경우 MLM 및 LMGRD가 통과할 수 있도록 허용해야 합니다. Windows 및 MacOS에서 방화벽에 대한 프로그램 기반 예외를 만들어 MLM 공급업체 데몬의 모든 포트를 허용할 수 있습니다. Linux에서는 포트 번호를 사용해야 합니다.
/var/tmp 충돌
이 문제를 해결하려면 다음 단계를 따르세요.
- /var/tmp에서 lockMLM 파일과 lm_TMW 파일을 제거합니다.
- 이러한 파일을 제거한 후 라이선스 관리자를 다시 시작하십시오.
여전히 동일한 오류가 발생하면 기존 라이선스 관리자 또는 공급업체 데몬 프로세스가 원인일 수 있습니다. $MATLAB/etc/lmdown 스크립트는 실행 중인 lmgrd 및 MLM 프로세스를 종료합니다. 때때로 lmdown 스크립트가 작업에서 실패할 수 있습니다.
이 경우 라이선스 관리자 데몬을 종료하는 가장 효과적인 방법은 다음과 같이 UNIX "kill" 명령을 사용하는 것입니다.
1. 라이센스 데몬이 작동하는지 확인합니다.
시스템에 따라 다음 명령 중 하나를 사용하십시오.
ps -ef | grep lm
추신 AGX | 그렙 lm
2. MATLAB과 연결된 LMGRD 및 "LM" 또는 "MLM"이 실행 중인지 출력을 확인합니다. 이 경우 각 프로세스에 대해 다음 명령을 실행하여 모든 데몬을 수동으로 종료합니다(루트 사용자가 필요할 수 있음).
<pre class="ckeditor_codeblock">kill <데몬의 pid>
3. $MATLAB/etc/lmstart를 실행하여 데몬을 다시 시작합니다.
이 시점에서 오류가 계속 발생하면 공급업체 데몬이 점유 포트에서 실행을 시도하고 있을 수도 있습니다. 이 문제를 해결하려면 SERVER 및 DAEMON 라인에서 사용하는 포트를 변경하기 위한 포트 충돌에 대한 위의 해결 방법을 참조하십시오.
부정확하거나 오래된 MLM
이 문제를 해결하려면 최신 버전의 FlexLM을 실행하고 있는지 확인하십시오. 버전 11.18.1은 R2022a 이상에 대한 라이선스를 제공하는 데 필요한 최소 버전입니다.
Windows에서 FlexLM 버전을 확인하려면 다음 단계를 따르십시오.
- 을 통해 LMTools 버전 확인
- span style="color: black;" > license.dat DAEMON 라인이 최신 MLM.exe 가리키는지 확인합니다.
Linux 및 MacOS에서 FlexLM 버전을 확인하려면 다음 단계를 따르십시오.
- usr/local/MATLAB/R20XXy/etc 또는 /Applications/MATLAB_R20XXy/etc
- "lmver" 명령 실행
- 최신 버전의 라이선스 관리자 바이너리를 실행하고 있는지 확인하십시오.
- 또한 공급업체 데몬을 올바르게 참조하고 있는지 확인해야 합니다. 잘못된 파일을 가리키거나 사용 중인 공급업체 데몬이 MLM임을 지정하지 않으면 이 오류가 발생합니다. MLM은 공급업체 데몬으로 지정된 다음 해당 파일 위치가 지정된다는 점을 기억하십시오.
라이선스 관리자 업데이트에 대한 지침은 다음 문서를 참조하십시오.
해야 합니까?
잘못된 HostID
이 문제를 해결하려면 라이선스 서버의 호스트 ID가 license.dat 및 network.lic 파일과 일치하는지 확인합니다. 호스트 ID에 대한 자세한 내용은 다음 문서를 참조하세요.
만료된 라이선스
이 문제를 해결하려면 만료되지 않은 업데이트된 라이선스를 받으십시오.