Big-Endian Linux 시스템의 CPIO 아카이브 Hexdump

Big-Endian Linux 시스템의 CPIO 아카이브 Hexdump

저는 리틀엔디안 Linux 시스템을 사용하고 있으며 빅엔디안 Linux 시스템에서 cpio 아카이브의 표준 16진수 덤프를 보고 싶습니다.

누군가 빅엔디안 Linux에서 다음 명령을 실행하고 출력을 게시할 수 있습니까?

echo TESTING > /tmp/test
cpio -o <<< "/tmp/test" > /tmp/test.cpio
hexdump -C /tmp/test.cpio

궁금하다면 libmagic이 cpio 아카이브 유형을 결정하기 위해 다음을 수행하기 때문에 이것이 필요합니다.

# same byteorder machine
0   short       070707
26  string      >\0     cpio archive

# opposite byteorder machine
0   short       0143561     byte-swapped cpio archive

libmagic이 리버스엔디안 머신에서 아카이브의 26번째 바이트를 확인하지 않는 이유가 있는지 알고 싶었습니다.

내 리틀 엔디안 컴퓨터에서 이 명령의 출력은 다음과 같습니다.

1 block
00000000  c7 71 1b 00 57 01 a4 81  e8 03 e8 03 01 00 00 00  |.q..W...........|
00000010  ff 65 ce a4 0a 00 00 00  08 00 2f 74 6d 70 2f 74  |.e......../tmp/t|
00000020  65 73 74 00 54 45 53 54  49 4e 47 0a c7 71 00 00  |est.TESTING..q..|
00000030  00 00 00 00 00 00 00 00  01 00 00 00 00 00 00 00  |................|
00000040  0b 00 00 00 00 00 54 52  41 49 4c 45 52 21 21 21  |......TRAILER!!!|
00000050  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000200

답변1

나는 빅엔디안 cpio 아카이브의 예를 찾았습니다(libmagic 파일에 주석이 달렸습니다):

# https://sembiance.com/fileFormatSamples/archive/cpio/skeleton2.cpio

경로 항목은 리틀 엔디안 아카이브(바이트 26)와 동일한 위치에서 시작됩니다. 그래서 내 자신의 질문에 대답하려면 :

아니, 이유는 없어아니요바이트 교환된 cpio 아카이브의 26번째 바이트를 확인합니다.

관련 정보