이것위키피디아 LTO 기사각 LTO 드라이브는 13.56MHz NFC를 통해 테이프의 메모리 칩을 읽을 수 있다고 합니다.
여기서는 일련 번호, 테이프 속성 및 사용 데이터를 찾을 수 있을 것으로 예상합니다. Linux 시스템에서 무료 오픈 소스 소프트웨어를 사용하여 이 데이터를 읽는 방법은 무엇입니까?
답변1
방법 1. LTO 드라이버
LTO 드라이버 내부에는 칩에서 데이터를 읽는 RFID 리더가 있습니다. 클라이언트는 SCSI 명령을 통해 액세스할 수 있습니다. 특히 READ ATTRIBUTE 명령(작업 코드: 8C)입니다.
READ ATTRIBUTE 명령은 전송될 데이터 필드를 지정하는 속성 식별자와 함께 호출되어야 합니다. 예를 들어,IBM SCSI 참조, MEDIUM SERIAL NUMBER는 속성 식별자 0401h로 읽을 수 있으며 LOAD COUNT는 0003h입니다.
이것READ ATTRIBUTE 명령을 드라이브에 보내는 오픈 소스 Linux 소프트웨어입니다. 일련 번호, 테이프 속성(예: 미디어 길이, 너비) 및 사용량 데이터(예: 로드 수, 쓴 총 MB 등)를 지원합니다.
방법 2 범용 RFID 리더
지금,프록스마크3그리고ACR122ULTO 테이프 메모리를 지원합니다.
1단계 이 리더를 사용하여 칩에서 모든 데이터를 덤프합니다. 하드웨어에 따라 Proxmark3 소프트웨어 또는 nfc-ltocm을 설치하고 LTO 테이프를 카드 리더기에 놓고 덤프 명령을 보냅니다. 칩의 바이너리 데이터는 저장 장치에 저장됩니다.
답변2
당신이 가지고 있다면sg3_utils/sg3-utils설치(이름은 배포판에 따라 다름). sg_read_attr을 사용하여 이를 수행할 수 있습니다. -e를 사용하면 알고 있는 모든 속성을 열거합니다.
$ sg_read_attr -e
Attribute ID Length Format Name
------------------------------------------
0x0000: 8 binary Remaining capacity in partition [MiB]
0x0001: 8 binary Maximum capacity in partition [MiB]
0x0002: 8 binary TapeAlert flags
0x0003: 8 binary Load count
0x0004: 8 binary MAM space remaining [B]
0x0005: 8 ascii Assigning organization
0x0006: 1 binary Format density code
0x0007: 2 binary Initialization count
0x0008: 32 ascii Volume identifier
0x0009: -1 binary Volume change reference
0x020a: 40 ascii Density vendor/serial number at last load
0x020b: 40 ascii Density vendor/serial number at load-1
0x020c: 40 ascii Density vendor/serial number at load-2
0x020d: 40 ascii Density vendor/serial number at load-3
0x0220: 8 binary Total MiB written in medium life
0x0221: 8 binary Total MiB read in medium life
0x0222: 8 binary Total MiB written in current/last load
0x0223: 8 binary Total MiB read in current/last load
0x0224: 8 binary Logical position of first encrypted block
0x0225: 8 binary Logical position of first unencrypted block
after first encrypted block
0x0340: 90 binary Medium usage history
0x0341: 60 binary Partition usage history
0x0400: 8 ascii Medium manufacturer
0x0401: 32 ascii Medium serial number
0x0402: 4 binary Medium length [m]
0x0403: 4 binary Medium width [0.1 mm]
0x0404: 8 ascii Assigning organization
0x0405: 1 binary Medium density code
0x0406: 8 ascii Medium manufacture date
0x0407: 8 binary MAM capacity [B]
0x0408: 1 binary Medium type
0x0409: 2 binary Medium type information
0x040a: -1 unknown Numeric medium serial number
0x0800: 8 ascii Application vendor
0x0801: 32 ascii Application name
0x0802: 8 ascii Application version
0x0803: 160 text User medium text label
0x0804: 12 ascii Date and time last written
0x0805: 1 binary Text localization identifier
0x0806: 32 ascii Barcode
0x0807: 80 text Owning host textual name
0x0808: 160 text Media pool
0x0809: 16 ascii Partition user text label
0x080a: 1 binary Load/unload at partition
0x080a: 16 ascii Application format version
0x080c: -1 binary Volume coherency information
0x0820: 36 binary Medium globally unique identifier
0x0821: 36 binary Media pool globally unique identifier
SA_value Acronym Description
------------------------------------------
0: av attribute values
1: al attribute list
2: lvl logical volume list
3: pl partition list
4: smc SMC-2 should define this
5: sa supported attributes
그런 다음 0x0401 또는 0x003을 읽을 수 있습니다(/dev/sg0은 내 테이프 장치입니다).
$ sudo sg_read_attr -f 0x401 /dev/sg0
Medium serial number: SOMESERIAL
$ sudo sg_read_attr -f 0x3 /dev/sg0
Load count: 14
또는 -f all을 사용하여 모든 내용을 읽습니다.