Korzystanie z narzędzia t_reader

Résumé: W tym artykule opisano korzystanie z narzędzi t_reader i t_writer w różnych systemach operacyjnych oraz informacje o tym, skąd można je pobrać.

Cet article concerne Cet article ne concerne pas Cet article n’est associé à aucun produit spécifique. Toutes les versions du produit ne sont pas identifiées dans cet article.

Symptômes

  • Musi określać rzeczywiste rozmiary bloków na taśmie
  • Weryfikacja struktury etykiet NetWorker
  • Weryfikacja integralności fizycznej nośnika taśmowego.
  • Należy potwierdzić metadane nagłówka bloku NetWorker
  • Musi zrzucić surowe pierwsze 512 bajtów każdego bloku

Pakiet t_reader Narzędzie służy do diagnozowania i rozwiązywania problemów związanych z napędami taśmowymi. Jest to również obsługa NetWorker, która zapewnia kilka funkcji taśm, co czyni ją przydatnym narzędziem do rozwiązywania problemów. Użyj go, aby:

  • Przetestuj rzeczywisty rozmiar bloków zapisanych na taśmie
  • Określ, czy istnieją różnice w rozmiarach bloków zapisanych na taśmie
  • Testowy odczyt nośników fizycznych pod kątem błędów we/wy lub uszkodzeń fizycznych
  • Określ, czy elementy znajdujące się poniżej warstwy aplikacji (sterownik, system operacyjny, transport, samo urządzenie) mogą odczytywać bloki o określonym rozmiarze
  • Uwidocznienie informacji niskiego poziomu w systemie Windows nie jest możliwe przy użyciu żadnego innego aktualnego narzędzia

 

Cause

Problemy z nośnikami taśmowymi są często spowodowane czynnikami zewnętrznymi, takimi jak:

  • Problemy z czynnikiem blokującym system operacyjny/HBA/sterownik
  • Niewykryte błędy sprzętu we/wy lub transportu podczas zapisu
  • Degradacja nośnika spowodowana wiekiem, użytkowaniem, higieną napędu lub niewłaściwym przechowywaniem

 

Résolution

Pobierz t_reader stąd: NetWorker Tools (wymaga zalogowania się na konto pomocy technicznej firmy Dell).

Wyodrębnij pakiet i użyj t_reader dla architektury Twojego hosta.

  • t_reader nie przewinie automatycznie woluminu w systemie UNIX (oferuje w systemie Windows) - pozwala to na pozycjonowanie i rozpoczynanie od dowolnego miejsca na taśmie.
  • W większości systemów operacyjnych t_reader zgłasza rozmiary bloków, które znajduje od tego punktu; Niektóre wymagają rozmiaru bloku do próby odczytania.
  • t_reader rozpoczyna wyliczanie pliku i rekordu na 0 - co oznacza, że jeśli miałbyś przesunąć się do przodu do pliku 5, nagraj 500 celowo, a następnie uruchom t_reader - t_reader wydaje się, że wyjścia zaczynają się od F0 R0, mimo że w rzeczywistości zaczynają się od znacznie późniejszego adresu.
  • W systemach operacyjnych, które mogą określić rzeczywisty rozmiar bloku, ograniczenie rozmiaru bloku w sterowniku lub systemie operacyjnym powoduje błąd wskazujący, że bufor jest zbyt mały, aby pomieścić dane bloku, taki jak cannot allocate memory lub more data is available.
  • t_reader nie musi odczytywać rzeczywistych danych, ale potrafi rozpoznawać i odczytywać etykiety NetWorker, jeśli są obecne
  • W systemie Windows może również odczytywać i raportować informacje o nagłówku bloku, jeśli są dostępne; Może również zrzucić pierwsze 512 surowych bajtów danych (patrz zmienne poniżej)
  • Zawsze — rozmiary bloków muszą być spójne po pierwszej parze bloków etykiet 32 KB i muszą być zgodne z rozmiarem bloku zapisanym na etykiecie zwróconym przez skaner

UNIX
Aby przygotować wolumin, przewijając go najpierw:

mt -f /dev/nst0 rewind

Biegać t_reader, podaj uchwyt do plików urządzenia z systemem operacyjnym napędu z załadowaną kasetą z taśmami, na przykład:

./t_reader_linux /dev/nst0

Dane wyjściowe standardowego woluminu NetWorker po przewinięciu wyglądają następująco:

About to read FileNo-BlockNo: 0-0  Found block size: 32768
About to read FileNo-BlockNo: 0-1 EOF encountered
About to read FileNo-BlockNo: 1-0  Found block size: 32768
About to read FileNo-BlockNo: 1-1 EOF encountered
About to read FileNo-BlockNo: 2-0  Found block size: 98304
About to read FileNo-BlockNo: 2-1  Found block size: 98304
...
About to read FileNo-BlockNo: 19-0  Found this record at block size= 98304
About to read FileNo-BlockNo: 19-1 File Mark encountered
About to read FileNo-BlockNo: 20-0 File Mark encountered
No more data is on Tape

W tym przykładzie pokazano prawidłowy wolumin z dwoma blokami 32 KB w pierwszych dwóch plikach, wskazującymi etykietę, a następnie blokami 96 KB przerywanymi okresowo znacznikami plików, aż do końca danych (EOD) napotkanego po pliku 18.

WINDOWS
W przypadku systemu Windows należy również podać rozmiar bloku, który ma być odczytywany:

t_reader \\.\tape0 131072

Efekt tego jest taki, że system Windows próbuje odczytać dowolny rozmiar bloku, który jest mu podany, i nie narzeka (pomimo tego, że jest potencjalnie większy niż rzeczywisty rozmiar zapisanego bloku) - chociaż będzie błąd, jeśli rozmiar bloku podany jako argument jest mniejszy niż rzeczywisty blok, lub istnieje ograniczenie systemu operacyjnego lub sterownika, które sprawia, że blok o tym rozmiarze jest bezużyteczny.

Ponieważ system Windows nie może automatycznie określić i zgłosić rozmiaru bloku, należy go podać jako drugi argument. Jeśli rozmiar bloku jest zbyt duży, błędnie zgłasza, ponieważ po prostu odczytuje wiele bloków i przedstawia je jako rozmiar dostarczony przez argument. Jeśli podany rozmiar bloku, np. 131072, jest mniejszy niż rzeczywisty rozmiar bloku, na przykład 262144, pojawi się błąd:

>>>>>File Mark Encountered. Total Records Estimated In File 1 Are 1
Read Record does not align on Assigned Buffer

W związku z tym, aby poprawnie określić nieznany rozmiar bloku, zacznij od 32768 i podwajaj go, aż narzędzie zakończy się pomyślnie. Na podstawie etykiety można jednak określić oczekiwany rozmiar bloku.

Windows ma również dwie zmienne, które można ustawić w celu głębszego debugowania:

set EXPLODE_LEVEL=1

Powoduje t_reader Aby zgłosić nagłówek bloku dla znalezionych bloków NetWorker:

Read 262144 bytes: HW Fn-Rn:2-81 Media Fn-Rn:2-81 Cummulative Bytes Read 21561344

mr_version 6
mr_size 262144
Volid 4222551389 (0xFBAF055D)
Media Fn 2-Media Rn 81
mr_len 444
mr_chunk_len 1

Aby spowodować, że t_reader aby zrzucić pierwsze 512 B każdego bloku przeczytaj:

set DUMP_BUFFER=1

Oczekuj takich wyników, jak:

Read 262144 bytes: HW Fn-Rn: 2-47 Cummulative Bytes Read 12648448

Dumping 512 Bytes Starting At Address: 0x  850048
0x0000: 56 4F 4C 31 51 30 57 30 50 53 20 20 20 20 20 20
0x0010: 20 20 20 20 20 4E 45 54 57 4F 52 4B 45 52 20 20
0x0020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0x0030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0x0040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 33
0x0050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
...

Może to pozwolić na głębsze debugowanie lub sprawdzenie, że woluminy inne niż NetWorker, są uszkodzone lub zaszyfrowane, ale oczywiście dotyczy rzadkich zastosowań.

 

Informations supplémentaires

t_reader jest również dostarczany w pakiecie z narzędziem towarzyszącym, t_writer.exe. Jest to narzędzie tylko dla systemu Windows, które zastępuje narzędzia systemu UNIX, takie jak tar i dd, i umożliwia wykonywanie testowych zapisów na taśmach z niestandardowymi rozmiarami bloków. Wymaga pliku towarzyszącego, seeding.image lub dowolnego pliku binarnego o tej samej nazwie.

Aby użyć narzędzia, uruchom je z pierwszym argumentem urządzenia załadowanego nośnikiem i żądanym rozmiarem bloku w bajtach jako drugim, na przykład:

win_t_writer.exe \\.\Tape2147483639 131072

Narzędzie działa, dopóki użytkownik nie przerwie procesu. Może być uruchamiana sukcesywnie na tym samym woluminie z różnymi rozmiarami bloków w celu symulacji wariantów rozmiarów bloków lub wielokrotnie aż do niepowodzenia, jeśli podejrzewane są losowe błędy we/wy lub resetowanie SCSI. Może być również używany do zademonstrowania, czy warunek obcina rozmiary bloków poniżej warstwy aplikacji.

Jako przykład danych wyjściowych:

C:\Users\Administrator\t_reader>win_t_writer.exe \\.\Tape2147483639 131072

CAUTION: This Is An Un-Supported Tool. To Be Used By Tech. Support Personnel Only
For Comments or Change Requests, email: abid.yazdanie@emc.com

******WARNING Tape Write operations will occur on the device******
******Data Destruction Will Occur******
******You are using this tool at your own risk******


usage: win_t_writer \\.\tapeX 131072
Where tapeX is \\.\tapeX and 131072 (128X1024) is the desired block size, in this case 128K
The Block Size Used Above Is Only An Example.
Run mt -f \\.\tapeX status To Find The Max. Block Size For Your Tape Drive

Enter y to proceed or n to abort: y
Proceeding to write....
About to allocate write buffer
Opening Seeding File seeding.image
Copying Contents Of Seeding File: seeding.image To Write Buffer
WRITE access to device \\.\\\.\Tape2147483639
Successfully opened device: \\.\\\.\Tape2147483639

Calling WriteFile in a perennial loop...

 

Produits concernés

NetWorker
Propriétés de l’article
Numéro d’article: 000094976
Type d’article: Solution
Dernière modification: 30 mars 2026
Version:  4
Trouvez des réponses à vos questions auprès d’autres utilisateurs Dell
Services de support
Vérifiez si votre appareil est couvert par les services de support.