서버에서 더 큰 Java 프로그램의 오류를 해결하고 있습니다. 그러나 LD_PRELOAD에 대한 환경 변수 값만 출력하는 초기본 Java 프로그램을 사용하여 문제를 재현할 수 있었습니다. Bash 스크립트는 변수를 설정하고(내보내기 LD_PRELOAD=....) 기본 Java 프로그램을 실행하며 출력에는 값이 설정되지 않았다고 표시됩니다. 이로 인해 우리가 문제를 해결하려고 하는 더 큰 Java 프로그램에 충돌이 발생합니다. 플랫폼은 RHEL 7.5입니다. jvm에서 시스템 변수를 사용할 수 없도록 하는 보안 설정이 있는지 아는 사람이 있습니까? 다른 RHEL 7.5 시스템을 포함하여 다른 여러 시스템을 사용해 보았지만 문제가 발생하지 않았습니다. 이로 인해 해당 서버의 구성이 다르다고 믿게 됩니다.
답변1
관심 있는 분들을 위해 우리는 문제를 발견했습니다.... 바이러스 백신 Cylance는 라이브러리 로드 프로세스의 하이재킹을 방지하기 위한 방법으로 LD_PRELOAD 설정을 차단했습니다. 다른 사람에게도 이런 일이 발생하면 도움이 되길 바랍니다. 건배!