질문
[CIVIL] 다른 PC에서는 정상적으로 해석이 되는데, “forrtl : severe(#) : CLOSE/ OPEN/Delete/access not allowed/error during write, unit ## “와 같은 메시지가 출력되면서 프로그램이 중단됩니다. 어떻게 해야 하나요?
답변
일부 PC에서만 발생하는 현상이라면, 보안 설정과 관련된 문제라고 판단할 수 있습니다. 네트워크의 발전에 의해 바이러스나 해킹에 의한 피해를 막기 위해 PC 시스템의 보안이 강화되고 있습니다. 최근에는 윈도우 운영체계와 백신 프로그램들의 감시 기능이 매우 엄격하게 동작하면서 이와 같은 Fortran run-time error가 발생한다는 보고가 종종 들어오고 있습니다.
대규모 모델에 대한 메모리부족 현상을 방지하기 위해 해석과정에 필요한 정보들을 임시 파일에 저장해 두었다가 필요할 때마다 가져와서 사용하도록 하고 있습니다. 이런 임시파일들은 해석종류에 따라 동시에 생성되는 개수도 달라지고, 모델의 규모에 따라 임시파일의 사이즈도 달라집니다. 또한 임시파일에 접근하는 빈도도 해석종류에 따라 다릅니다. 해석 과정에서 임시파일은 삭제되기도 하고, 다시 생성하기도 합니다. 이러한 임시파일에 대한 처리작업을 강화된 보안 시스템이 임시파일에 대한 생성, 삭제, 접근 등의 작업을 하지 못하도록 막거나 또는 fes.exe를 강제 종료 하게 되면 위와 같은 Fortran run-time error가 발생하게 됩니다.
이런 경우에는 다음과 같이 프로그램의 실행권한과 윈도우와 백신프로그램의 보안 설정을 변경해 보시기 바랍니다.
- 관리자 권한으로 실행(Run as administrator): 프로그램 실행 시 ‘관리자 권한으로 실행’을 선택하여 실행합니다. 이 후에는 프로그램에서 명령하는 모든 실행파일과 DLL파일들은 관리자 권한을 상속받아 실행하게 됩니다.
- 윈도우 보안 설정 변경: 별도의 백신 프로그램이 설치되어 있지 않은 경우에는 윈도우에서 보안 설정을 아래와 같은 방법으로 모델 파일이 위치한 폴더를 감시 대상에서 제외하도록 지정하시기 바랍니다.
‘폴더’를 선택하고 모델파일이 위치한 폴더의 최상위 폴더를 등록합니다. D:\MIDAS 폴더아래에 Project1, Project2, Project3, … 라는 폴더들이 있고, 각 폴더아래에 해석모델이 있다면 ‘D:\MIDAS’를 제외 사항으로 추가하시면 됩니다. 등록한 ‘D:\MIDAS’폴더 아래에 위치한 폴더들에 대해서도 동일하게 감시 대상에서 제외됩니다.
- 백신 환경 설정 수정: 백신의 환경설정에서 ‘검사 예외 설정’을 지정해 주시기 바랍니다. 이 때에도 모델파일이 위치한 최상위 폴더를 등록해 주시면 됩니다. 자체 네트워크 보안시스템이 있는 경우에는 네트워크 관리자에게 해당 폴더를 검사 예외 대상으로 등록하도록 요청 하여야 할 수도 있습니다. 아래는 V3의 예이고, 네트워크 관리자에 요청하여 검사 예외 대상으로 등록한 폴더 리스트 입니다.