정지된 프로세스에서 사용 중인 파일을 교체하고 새 프로세스를 시작하면 새 파일을 사용하게 됩니까, 아니면 이전 파일을 사용하게 됩니까?

정지된 프로세스에서 사용 중인 파일을 교체하고 새 프로세스를 시작하면 새 파일을 사용하게 됩니까, 아니면 이전 파일을 사용하게 됩니까?

저는 Red Hat GNU/linux 2.6.32-431.29.2.el6.x86_64를 사용하고 있습니다.

최근에 내 프로세스 중 하나가 중단되었습니다. 이 프로세스에서는 디렉터리의 여러 파일(예: DIR-1)을 사용합니다. 프로세스가 정지되는 동안 이러한 파일을 백업 디렉터리(예: DIR-BKP)로 이동하고(복사하지 않고) 최신 버전의 파일을 DIR-1 디렉터리에 추가합니다. 이러한 최신 버전의 파일은 DIR-BKP 폴더의 파일과 동일합니다.

이 모든 과정에서 내 프로세스가 여전히 정지되어 있으므로 DIR-1의 파일을 사용할 새 프로세스를 시작하면 어떻게 됩니까? 새 프로세스는 DIR-BKP 또는 DIR-1의 파일을 사용합니까? 이전 프로세스는 여전히 이전 버전의 파일을 사용하고 있으므로(DIR-BKP 디렉터리로 이동했음에도 불구하고) 새 프로세스가 새 버전의 파일을 사용할지, 아니면 이전 버전을 계속 사용할지는 확실하지 않습니다. 버전.

답변1

파일을 새 위치에 복사하는 경우 새 위치로 이동하도록 무언가를 변경하지 않는 한(예: 명령줄 옵션 변경 또는 구성 파일 어딘가에서 편집) 프로세스가 이를 인식하지 못합니다. 파일을 이동하는 경우 프로세스는 해당 파일을 자동으로 추적하지 않습니다. 따라서 새 프로세스는 DIR-1의 파일을 사용하려고 시도해야 합니다.

그러나 몇 가지 문제가 있습니다:

  1. 새 프로세스를 시작하기 전에 정지된 프로세스를 종료하는 것은 어떨까요(아마도 더 안전할 것입니다)?

  2. 새 파일이 정확히 동일하다면 파일을 이동하는 대신 복사만 하면 어떨까요?

관련 정보