나는 제작중인 어떤 사람으로부터 프로젝트를 받았습니다. 하지만 그 사람은 프로젝트 관리자 및 다른 팀원들과 몇 가지 문제가 있었습니다(태도가 나빴고, 바보였습니다... 등). 그는 의도적으로 잘못된 응용 프로그램, 잘못된 경로, 숨겨진 폴더 등을 기록했습니다. 그러다가 그는 회사를 그만뒀다.
조사하는 동안 프로세스 목록에서 실행 중인 .sh가 있음을 발견했습니다. 그러나 .sh는 지정된 경로(또는 파일 시스템의 다른 경로)에 더 이상 존재하지 않습니다.
.bash_history를 보면 그가 .sh를 실행한 다음 (의도적으로) 파일을 삭제한 것을 발견했습니다...
프로젝트를 진행하려면 이 파일의 내용을 알아야 합니다. 내가 아는 한, 쉘은 실행되는 동안 여전히 RAM에 존재합니다.
RAM에서 이 파일을 읽을 수 있는 기회가 있습니까? 아니면 내용을 새 파일에 쓰시겠습니까?
감사합니다.
편집하다: @Artem S. Tashkinov 및 @Gilles. 답변 주셔서 감사합니다. 그러나 이는 프로세스의 출력만 덤프합니다. 나에게 필요한 것은 이 출력을 생성하기 위한 코드 ando가 포함된 .sh입니다.
답변1
먼저 다음을 통해 스크립트를 찾아보세요.
sudo lsof -n | grep deleted
이런 식으로 찾으면 /proc에서 쉽게 덤프할 수 있습니다.
도움이 되지 않으면 쉘 프로세스 메모리를 디스크에 덤프하는 방법에 대한 다음 답변을 참조하십시오.