내 논문에서는 약 300대의 머신에서 동일한 cronjob을 실행합니다. 즉, 다음과 같습니다.
10,25,40,55 * * * * /path/to/db_script.sh 1>/dev/null
스크립트는 시스템에서 일부 값(누군가 로그인했는지 여부)을 가져온 다음 원격 PostgreSQL 데이터베이스에서 INSERT 문을 실행합니다. 내 스크립트에서는 인증에 사용되는 .pgpass 파일의 위치를 이 스크립트와 동일한 폴더에 지정합니다. 폴더는 AMD를 사용하여 마운트된 NFS 파일 시스템에 마운트되어 있습니다.
이제 대부분의 cronjob이 정상적으로 실행되지만 가끔 오류가 발생합니다.
psql: FATAL: no PostgreSQL user name specified in startup packet
FATAL: no PostgreSQL user name specified in startup packet
동시에 .pgpass 파일에 액세스하려고 하는 많은 수의 컴퓨터로 인해 발생합니까? 그렇다면 이러한 오류를 방지할 수 있는 방법을 제안해 주실 수 있나요? 현재 오류가 있는 시스템은 2~3개뿐입니다(현재 약 200개의 시스템 중). 작업이 실행될 때마다 오류가 발생하는 것은 아닙니다. 하지만 아예 피하는 게 좋을 것 같아요!