저는 28년 치의 게시물을 가지고 있으며, 각 연도에 대한 폴더와 각 월에 대한 mbox 파일이 있습니다. mbox 파일에는 총 66,909개의 메시지가 있습니다. 그러나 수입 결과는 65,895개를 표시합니다. 수입 출력에 표시된 실패 건수 때문이 1,014개의 차이인가요?
해당 게시물들은 Aid4Mail을 사용하여 Eudora mbx 파일에서 표준 mbox 파일로 변환되었습니다.
가져오기 스크립트가 생성하는 index.db 파일을 확인해 볼 수 있습니다. 이 파일은 SQLite3 데이터베이스입니다. 다음 쿼리를 실행하여 파서가 어떤 데이터를 다루고 있는지 살펴볼 수 있습니다. 이 쿼리는 게시한 두 개의 Message-ID에 해당하는 메시지를 선택합니다.
SELECT *
FROM email
WHERE msg_id IN ('bbe76bf7a9cab5a2ec2a06e6ef453555', '23a86e52-71ba-7435-1c9c-c4f2a134b90d@mmtaylor.net')
email_date와 raw_message 컬럼이 가장 흥미로울 것 같습니다. 이메일 파서를 혼란스럽게 만드는 원인을 찾을 수 있을지도 모릅니다…
첫 번째 날짜가 null이고, 해당 메시지에 대해 mbx에 날짜가 없는 것을 확인했습니다. 답변(Re: 포함)이 “초기” 메시지보다 앞에 표시되는 것을 보니, 날짜가 누락된 것이 아니라 그렇게 생각했습니다. 가져오기 시 해당 제목을 가진 파일의 첫 번째 메시지를 부모 메시지로 간주하나요?
저는 group_messages_by_subject 설정을 true로 설정했습니다. 그렇지 않으면 아예 그룹화가 되지 않았기 때문입니다.
해당 메시지에는 두 개의 인라인 이미지가 있습니다:
Content-Type: application/octet-stream;
name=“Conflict (was … long live Wil”
Content-Transfer-Encoding: base64
Content-Disposition: inline; filename=“Conflict (was … long live Wil”
네, 그 방법도 됩니다. 저도 예전에 그렇게 했습니다. settings.yml에서 index_only를 true로 설정하는 것을 권장합니다. 이렇게 하면 메시지 인덱싱이 끝난 직후 바로 가져오기(import)가 시작되지 않습니다. 인덱싱이 완료된 후 데이터베이스에서 필요한 변경 사항을 모두 수행한 다음, index_only를 다시 false로 변경하고 가져오기를 재시작하면 됩니다.
mbox 파일을 편집하는 방식으로 진행하기로 했습니다. 예를 들어 "Date: Wed, 25 Mar 1992 17:43:06"와 같은 “Date” 라인을 추가하는 방식입니다. 업데이트된 파일을 전송하고 가져오기를 두 번 다시 실행했지만, email_date 필드가 업데이트되지 않았습니다.