나는 최근에 발견한 오래된 테이프 머신과 오래된 테이프를 가지고 있습니다. 테이프 드라이브를 Linux에 연결하고 다음 명령을 실행할 수 있었습니다.
mt -f /dev/nst0 rewind
dd if=/dev/nst0 of=dump.file
내 질문은, 테이프가 어떤 형식으로 생성되었는지 모르는 경우 이를 사용하는 가장 안전한 방법은 무엇입니까 dd
? 반면, 모든 파일이 tar 파일이라는 것을 안다면 어떻게 하시겠습니까?
답변1
~에서dd에 관한 이 기사:
dd는 블록 단위로 데이터를 읽고 쓰며 데이터 형식 간에 변환할 수 있습니다. dd는 개별 블록 크기를 가진 테이프와 같은 장치 또는 디스크에서 빠른 다중 섹터 읽기에 자주 사용됩니다.
dd
한 파일(또는 장치)에서 원시 바이트를 읽고 다른 파일에 씁니다. 파일 시스템이나 파일 형식에 관심이 없습니다(또는 심지어 알고도 없습니다). 그것이 보는 것은 1과 0의 블록뿐입니다.
참고하시기 바랍니다가능한테이프가 한 때 더 인기를 끌었던 빅엔디안 시스템에 기록된 경우(또는 아닐 수도 있음) 스왑 엔디안이 필요합니다.
당신은 이것을 할 수 있습니다여기에 명시된 바와 같이:
dd if=/dev/nst0 of=dump.file ibs=20b conv=swab
그런데 dd
입력 파일의 아무 것도 변경되지 않습니다(if). 출력 파일에만 씁니다. 따라서 걱정되더라도 테이프의 데이터가 손상되지는 않습니다.
답변2
나는 최근에 다음과 같은 도구를 작성했습니다.테이프 미러링테이프에서 모든 파일을 자동으로 추출합니다. 내부적으로는 dd와 mt를 둘러싸고 있습니다. 자세한 내용을 보려면 여기를 클릭하세요:
https://github.com/KBNLresearch/tapeimgr
또한 블록 크기를 자동으로 결정합니다(수동으로 수행하기에는 지루할 수 있음). 바이트 교환은 아직 지원되지 않지만 @layne-bernardo의 답변을 읽은 후 향후 릴리스에 대한 할 일 목록에 추가했습니다.부인 성명:: 지금까지는 제한된 수의 DDS 및 DLT-IV 테이프와 가상 테이프 라이브러리를 사용하여 이 도구만 테스트했으므로 사용에 따른 책임은 사용자에게 있습니다!