Seagate Momentus XT uszkadzający pliki (Linux i Mac)

10

Hybrydowy dysk twardy Seagate Momentus XT powoduje uszkodzenie plików w systemie Linux. Byłbym wdzięczny za pomoc od kogokolwiek, ale szczególnie chciałbym wiedzieć, czy inni użytkownicy Momentus XT są w stanie odtworzyć ten problem; Udostępniłem instrukcje krok po kroku dotyczące odtwarzania tego problemu na forach społeczności Seagate .

Do tej pory czterech użytkowników odtworzyło ten problem na następujących laptopach i systemach operacyjnych / dystrybucjach:

  • Pięć laptopów: Lenovo Thinkpad T60, T61, T510, MSI MS-1656-ID1 i MacBook Pro (15 "pod koniec 2009 r.).
  • Cztery systemy operacyjne / dystrybucje: Ubuntu 11.04, Fedora 15, openSUSE i Mac OS X.

Te instrukcje odtworzenia problemu są proste. Oto krótki opis słowny:

  1. Utwórz duży plik testowy, zapisz go na innym urządzeniu pamięci masowej ( nie na Momentus XT) i oblicz sumę kontrolną SHA-1.
  2. Zapisz plik testowy w Momentus XT.
  3. Przeczytaj plik testowy z Momentus XT, oblicz SHA-1 i porównaj tę sumę kontrolną z sumą kontrolną oryginału. Powinniśmy mieć zapałkę. Prawdopodobnie odtworzyliśmy problem, jeśli się nie zgadzają. (Tylko „prawdopodobnie”, ponieważ inne problemy mogą powodować niedopasowanie. Zobacz wątek Seagate na temat identyfikowania tego konkretnego problemu poprzez porównanie plików cmp -l.)
  4. Powtórz od kroku (2).

Gwint Seagate ma więcej szczegółów. Oto kilka uwag z moich testów (udało mi się odtworzyć ten problem na trzech kolejnych dyskach Momentus XT; dwukrotnie otrzymałem RMA i teraz jestem na trzecim):

  • Wydaje się, że dzieje się tak, że Momentus XT czasami zaniedbuje zapisywanie danych na dysku, więc kiedy czytam z dysku, otrzymuję to, co pierwotnie było w sektorze, a nie prawidłowe dane. Dzieje się tak w blokach o różnych rozmiarach; typowe rozmiary to 1 MiB i 512 KiB.
  • Problem występuje w systemach ext2, ext4, Btrfs, NTFS i FAT32. O dziwo, nie byłem w stanie odtworzyć tego problemu na ext3.
  • Pisanie z oflag=directflagą wyjściową ddpozwala uniknąć tego problemu. Szybkie przesyłanie danych na dysk while true; do sync; sleep 0.01; donerównież zapobiega problemowi.
  • Byłem w stanie odtworzyć ten problem tylko poprzez interfejs SATA i eSATA. Połączenie USB wydaje się zapobiegać problemowi. (Nie jestem pewien, czy wynika to z prędkości transferu).
  • Problemy występują częściej w przypadku dużych plików (> 2 GB). Nie udało mi się stworzyć problemów z plikami mniejszymi niż około 85 MB.
  • Nie mogłem odtworzyć problemu w systemie Windows XP z NTFS.
  • Gazoi na forach Seagate nie był w stanie odtworzyć problemu na FreeBSD 8.2 z UFS2.
  • Momentus XT przechodzi zarówno rozszerzony test SMART, jak i badblocks -wbez problemów.
  • Mój laptop (MS-1656-ID1) pomyślnie przeszedł 24 godziny każdego z Memtest86 +, Memtest86, memtester i MPrime.
  • Przetestowałem dwa inne urządzenia pamięci masowej (Seagate Momentus 7200.4 i dysk SSD Intel serii 320) z tą samą procedurą i oba działają bezproblemowo.

Jeśli masz Momentus XT, spróbuj odtworzyć ten problem i daj mi znać, co się stanie.

Co jeszcze mogę zrobić, aby zdiagnozować problem?

Vincent Yu
źródło
1
Czy restartujesz się między zapisem a odczytem? Czy opróżniasz pamięć podręczną, aby upewnić się, że faktycznie została ona odczytana z dysku zamiast z pamięci podręcznej? Jeśli nie, to może dlatego nie możesz odtworzyć go z mniejszymi plikami, ponieważ są one bardziej prawdopodobne, że nadal będą w pamięci podręcznej
psusi
Pomijam pamięć podręczną strony, czytając iflag=directflagę wejściową za pomocą dd. Kiedy nie używam dd, sudo sh -c "sync && echo 1 > /proc/sys/vm/drop_caches"
Właśnie zdałem sobie sprawę, że możesz mówić o buforze dysku, który fizycznie znajduje się w Momentus XT, zamiast o pamięci podręcznej stron systemu Linux. Masz rację w tym przypadku - przeważnie nie podejmuję żadnych środków ostrożności przed odczytaniem bufora dysku, a także od razu czytam plik po jego zapisaniu. Być może powinienem zatwierdzić zapisy do wielu plików, a następnie przeczytać je na podstawie FIFO. To powiedziawszy, pamięć podręczna dysku Momentus XT ma tylko 32 MB, a także w przeszłości przeprowadziłem kilka testów, w których napisałem> 10 GB małych plików (~ 64 MB), a następnie przeczytałem je bez żadnego uszkodzenia.
Być może w oprogramowaniu napędu występuje błąd (przepełnienie liczb całkowitych?), Który powoduje, że zapisuje on niepisane bloki podczas szybkiego zapisu. Lub są jakieś złe bloki we flashu, których oprogramowanie wewnętrzne nie wykryło. NTFS weryfikuje zapisy (a ntfs-3g działa bardzo wolno), więc problem raczej się nie pojawi. Jeśli nie możesz znaleźć poprawki, możesz użyć ZFS i włączyć sumę kontrolną.
billc.cn
@ billc.cn, odtworzyłem problem z NTFS. Btrfs i ZFS z sumami kontrolnymi danych wyraźnie nie będą czytać uszkodzonych plików, ale uszkodzonych danych nie będzie można odzyskać. Potrzebna będzie większa redundancja (np. Dublowanie na poziomie FS lub dublowanie RAID) w celu odzyskania tych plików. W każdym razie oczywiście nie używam Momentus XT, dopóki nie dowiem się, co się dzieje.
Vincent Yu

Odpowiedzi:

6

Aktualizacja oprogramowania układowego do SD26 rozwiązuje ten problem z uszkodzeniem plików w systemie Linux. Niestety SD26 nie zostało publicznie wydane.

Najlepszym sposobem na uzyskanie oprogramowania SD26 jest poproszenie Seagate o kopię rozruchowego dysku CD z aktualizacją lub narzędzia do aktualizacji systemu Windows.

Wysłałem e-maila do pomocy technicznej Seagate 20 sierpnia, aby zapytać o SD26, po tym, jak odkryłem, że rozwiązało to mój problem z uszkodzeniem plików. Oto dwie odpowiedzi, które otrzymałem od Seagate Global Customer Support 23 sierpnia:

Dziękujemy za skontaktowanie się dziś z Seagate. Daj mi trochę czasu na kontakt z programistami, abym mógł zobaczyć, co się dzieje z oprogramowaniem układowym SD26. Z powodu twoich odkryć musimy trochę zbadać. Bardzo mało testujemy z Linuksem. Pokażę, co mogę się dowiedzieć i czy potrzebne są dalsze testy i publiczne wydanie oprogramowania układowego. Załączam plik ISO. Wrócę z tobą, jak tylko się odezwę. Firma Seagate jest bardzo zorientowana na klienta i dziękujemy za zwrócenie na nią uwagi.


Zazwyczaj nie udostępniamy oprogramowania wewnętrznego publicznie. Może zadać większe obrażenia niż dobro w niewłaściwych rękach. Otrzymujemy wiele wadliwych dysków z niewłaściwych aktualizacji. Chcemy, aby klienci skontaktowali się z nami, abyśmy mogli sprawdzić, czy aktualizacja oprogramowania jest potrzebna i korzystna. Alan M. jest naszym moderatorem forów i będzie ogłaszał Twój wątek. Jeszcze raz dziękuję za zwrócenie nam na to uwagi. Nasi klienci są najlepszymi i świetnym źródłem informacji, i zwykle są pierwszymi, którzy informują nas, kiedy rzeczy nie działają tak, jak powinny. Daj nam szansę na rozwiązanie problemu.

Jak już powiedziałem, myślę, że najlepiej jest uzyskać SD26 bezpośrednio od Seagate. Istnieją jednak wyciekające kopie zarówno rozruchowego ISO, jak i narzędzia Windows, które można łatwo znaleźć, wyszukując w Google. Suma kontrolna SHA-1 rozruchowej płyty CD z aktualizacją SD26 (* .iso), którą otrzymałem od Seagate, to b7b0c7e1b9529925b0364b2cf19a62d608b58082.

Informacje zawarte w tej odpowiedzi oraz inne szczegółowe informacje zamieściłem w wątku Seagate .

Vincent Yu
źródło
3
Firmware SD28 jest teraz dostępny: seagate.custkb.com/seagate/crm/selfservice/…
madh
4

Wszystkie wzmianki o tym problemie zostały usunięte z forów Seagate. Prawdopodobnie uważają, że dyskusja nie jest już potrzebna, ponieważ można naprawić problem, aktualizując do wersji SD28.

Jedynym problemem jest to, że ludzie nie mają już możliwości uzyskania wiarygodnych informacji opisujących problem i / lub sposobu jego rozwiązania, ponieważ wszystkie odniesienia do jakiejkolwiek korelacji między problemem a rozwiązaniem zostały usunięte z witryny Seagate. Pobieranie aktualizacji oprogramowania układowego jest nadal dostępne, ale nie ma wzmianki o tym, co robi oprogramowanie układowe, więc dotknięci użytkownicy mogą mieć trudności z próbą znalezienia rozwiązania.

Aby pomóc pracownikom Google: pobranie oprogramowania układowego SD28 ze strony http://knowledge.seagate.com/articles/en_US/FAQ/215451en?language=en_US JEST rozwiązaniem problemu uszkodzenia danych, które występuje w przypadku tych modeli napędów Seagate Momentus XT:

  • ST92505610AS

  • ST93205620AS

  • ST95005620AS

Michał
źródło
2

Właśnie sprawdziłem, że dzieje się to również w OS X. : o (

Podejrzewałem uszkodzenie danych z dwóch powodów:

1) Momus XT jest przeznaczony do buforowania często używanych plików w 4 GB pamięci flash RAM, a te pliki najczęściej są małymi plikami potrzebnymi do załadowania programów podczas uruchamiania (ustawienia plików itp.). Wraz ze wzrostem częstotliwości moje programy, które są skonfigurowane do ładowania przy logowaniu, nagle wymyślają ustawienia domyślne lub dają mi „samouczek powitalny” i nie mają zaprogramowanych ustawień. Należą do nich mail.app (brak zapisanych informacji o koncie), mały znicz (monitor portu bez reguł), Quicksilver (powitanie) i inne. Doprowadziło mnie to do wniosku, że małe pliki w pamięci podręcznej są uszkodzone.

2) Napęd cierpiał z powodu powodowania „wirujących kół zębatych” w miejscu, w którym napęd się obracał, a kiedy system operacyjny musiał uzyskać do niego dostęp, musiałem czekać na ponowne uruchomienie napędu. Oczekiwanie stało się częstsze i trwało dłużej. Kilkakrotnie po prostu wycierałem dysk i korzystałem z węglowego klonera do kopiowania wszystkiego, co poprzednio zostało utworzone. Jednak po skopiowaniu plików do pędu wiele dużych plików (filmy, obrazy ISO, pliki zip) uległo uszkodzeniu i albo się nie ładowało, ani nie otwierało. Myślałem, że problem z piłkami plażowymi i spin-downami zostanie rozwiązany po aktualizacji z Snow Leopard do Lion, o czym ostatnio pisało kilku użytkowników, ale plik ISO podglądu Dev 3,46 Gb skopiowałem do napędu XT z napędu USB został uszkodzony, więc nie mogłem nawet zainstalować Lion.

Właśnie natknąłem się na twój wątek na forach Seagate i przybyłem tutaj, aby opublikować:

Użyłem programu o nazwie „smart utility” w systemie OS X, który stwierdził, że dysk nie działa. Myślę, że błąd dotyczył kodu 184, który był błędem typu „end-to-end”. Zaniepokoiło mnie, że dysk „nie działa”, ale przeczytałem, że inni otrzymywali ten błąd, gdy aktualizowali oprogramowanie wewnętrzne (tak jak to zrobiłem z SD23 do SD25) i że Seagate uznałby dysk za uszkodzony tylko wtedy, gdy ulegnie awarii w ramach SeaTools .

Włożyłem momentus xt do obudowy USB i uruchomiłem SeaTools na dysku przez okna na innym komputerze. SMART Check nie był dozwolonym testem. Uruchamianie „testu krótkiego dysku” i „długiego testu ogólnego” nie zgłoszono błędów? Teraz próbowałem zduplikować twoje metody w systemie OS X, i również odkryłem, że pliki ulegają uszkodzeniu. Używam Macbooka Pro 15 ”z końca 2009 roku i mam Momentus XT o pojemności 500 GB na SD25.

Fred

Fred
źródło
Dziękujemy za zgłoszenie tego! Czy możesz uruchomić następujące polecenie, aby porównać nieuszkodzony plik z jego uszkodzoną kopią? cmp -l <uncorrupted file> <corrupted copy> | headJeśli mamy ten sam problem, powinieneś zobaczyć trzy kolumny liczb, a kolumna po lewej stronie powinna mieć dziesięć kolejnych liczb. (Szczegóły: Kolumna po lewej stronie pokazuje liczby bajtów różnych bajtów, a pozostałe dwie kolumny pokazują rzeczywiste wartości różnych bajtów.)
Vincent Yu