Harici sabit diskte SMART verileri ve Otomatik Test gerçekleştirilemiyor


13

Şu anda harici sürücümde herhangi bir hata yok, ancak emin olmak için manuel olarak kontrol etmek istiyorum.
Aşağıdaki görüntüden görüldüğü gibi, SMART verileri ve Otomatik Test seçeneği gri renktedir. Ayrıca görüntüdeki sabit disk hakkındaki ayrıntılara bakın.

  1. Koşmayı denedim gksu gnome-disksama yine de seçenek gri.
  2. Koştum sudo smartctl --all /dev/sdb --test=short -T permissivebu hatayı aldım:

smartctl 6.4 2014-10-07 r4002 [x86_64-linux-3.19.0-15-generic] (yerel yapı) Telif Hakkı (C) 2002-14, Bruce Allen, Christian Franke, www.smartmontools.org

Aygıt Kimliği okunamadı: scsi komutunda scsi hatası desteklenmeyen alan

=== BİLGİ BAŞLIĞI BÖLÜMÜ ===

Cihaz Modeli: [Bilgi Bulunamadı]

Seri Numarası: [Bilgi Bulunamadı]

Donanım Yazılımı Sürümü: [Bilgi Bulunamadı]

Aygıt: Smartctl veritabanında değil [ayrıntılar için kullanın: -P showall]

ATA Sürümü: [Bilgi Bulunamadı]

Yerel Saat: Çar Haz 17 11:33:46 2015 IST

SMART desteği şudur: Belirsiz - ATA TANIMLAMA CİHAZI kelimeleri 82-83, SMART destekleniyorsa gösterilmez.

SMART desteği şudur: Belirsiz - ATA TANIMLAMA CİHAZI kelimeleri 85-87, SMART etkinleştirilirse gösterilmez.

Zorunlu bir SMART komutu başarısız oldu: çıkılıyor. Devam etmek için bir veya daha fazla '-T izinli' seçenek ekleyin.

resim açıklamasını buraya girin


Burada da aynı problem. Ben Ubuntu 14.04 , ancak SMART GUI ve komut satırı tarafından doğru okunur nerede Ubuntu 12.04 olur ekleyebilirim . Herhangi bir fikir?
Alvaro Gutierrez Perez

Yanıtlar:


13

Ben de aynı problemi yaşadım. Benim durumumda, SMART Ubuntu 12.04 kullanırken yıllardır cihazda düzgün bir şekilde çalışıyordu ve daha sonra Ubuntu 14.04 altında tam olarak soruda söyledikleriniz oldu.

Sorun, Linux Çekirdeği 3.15'te uas(USB Bağlı SCSI ) adı verilen yeni bir çekirdek modülü ile ilgilidir (bkz. Sürüm duyurusu ).

Bu modül artık USB Yığın Depolama Aygıtlarını yönetmekten sorumlu. İnsanların çekirdek 3.15'te USB aygıtlarının arızalanmasına neden olduğundan şikayet ettikleri bir konu varuas . Bir diğeri bunun SMART sorunlarının nedeni olabileceğini söylüyor.

Neyse ki, cihazım doğru bir şekilde algılandığından, bu sorunlar çekirdek 3.19'da (kullandığım) gider gibi görünüyor. Sadece SMART sorunu devam ediyor.

Düzeltmek uasiçin, verilen cihaz için modül kullanımını devre dışı bırakmanız gerekir .

Yeniden uasbaşlatmadan devre dışı bırak

İlk olarak, kullanıyor olabilecek tüm USB aygıtlarını çıkarın. Ardından uasve usb-storagemodüllerini çıkarın :

sudo modprobe -r uas
sudo modprobe -r usb-storage

Ardından, usb-storagemodülü uasbelirli bir cihaz için kullanılmamasını söyleyen bir parametreyle yükleyin:

sudo modprobe usb-storage quirks=VendorId:ProductId:u

VendorIdve komutla ProductIdalınabilecek cihaz satıcınız ve ürün kimliğinizle değiştirilmelidir lsusb(bunlar sonraki karakterlerdir ID).

Örneğin, aşağıdaki cihaza sahibim:

Bus 002 Device 011: ID 0bc2:3320 Seagate RSS LLC SRD00F2 [Expansion Desktop Drive]

Yani satıcı kimliğim 0bc2ve ürün kimliğim 3320. Komutum:

sudo modprobe usb-storage quirks=0bc2:3320:u

Sonuncusu cihaz için yoksaymayı usöyler ( kaynağa bakın ).usb-storageuas

Bu noktada, USB cihazını takabilirsiniz ve uasSMART'ın düzgün çalışmasını sağlamak için kullanmamayı bilecektir . dmesgUSB aygıtını takarken aşağıdakine benzer çizgiler göreceksiniz :

usb 2-2: UAS is blacklisted for this device, using usb-storage instead
usb-storage 2-2:1.0: USB Mass Storage device detected
usb-storage 2-2:1.0: Quirks match for vid 0bc2 pid 3320: 800000
scsi host12: usb-storage 2-2:1.0

Değişikliği kalıcı hale getirin

Önceki sorun yalnızca sistemi yeniden başlatana kadar devam eder. Kalıcı hale getirmek için, aşağıda tarif ettiğim, burada açıklanan adımları izlemeniz gerekir :

İlk olarak, adlı bir dosya oluşturmak ignore_uas.confiçinde /etc/modprobe.d/aşağıdaki içeriği dizine:

options usb-storage quirks=VendorId:ProductId:u

Yerine, daha önce olduğu gibi VendorIdve ProductIdelde edilen cihazınızın satıcı ve ürün kimliğine göre lsusb.

Ardından, ilk ramdisk'inizi yeniden oluşturun:

mkinitcpio -p linux

veya daha yeni Ubuntu sürümlerinde:

sudo update-initramfs -u

Son olarak, bilgisayarınızı yeniden başlatın.


Düzenleme: Konu hakkında daha fazla arka plan ve uas'ı devre dışı bırakmadan başka bir yol (usb depolamadan daha iyi bir verime sahip) burada bulunabilir: https://www.smartmontools.org/ticket/971#comment:12

Çekirdek SAT ATA PASS-THROUGHyazılımları bozulduğu için , çekirdek modu uas modunda çalışırken bazı cihazlarda kara listeye alınmış gibi görünüyor .

Bu nedenle, kara listeye, yanıtta bahsettiğim önceki yöntemi kullanarak (kendi sorumluluğunuzda) devre dışı bırakılabilir, ancak finali utuhaflıktan çıkarabilir, yani:

quirks=VendorId:ProductId:

Ancak, bu yaklaşımı test etmediğimi lütfen unutmayın.


Linux çekirdeği 4.2 ile Ubuntu 15.10 kullanıyorum, söylediklerinizi yaptım, ama benim için çalışmıyor
Edward Torvalds

@edwardtorvalds işe yaramayan GUI smartctlmi , yoksa ayrıca mı? Benim durumumda GUI gri görünüyor (henüz yeniden başlatmadım), ama smartctlçalışıyor.
Alvaro Gutierrez Perez

2
16.04'te mkinitcpio yok. Şimdi "sudo update-initramfs -u" değil mi?
filofel

1
Mükemmel cevap! Seagate USB sürücüme erişebilir ve tüm smartctl verilerini ondan alabilirim. Orada düzenleme kaldırmayı udenediniz mi ve ne yazık ki sürücüyü astım, böylece herhangi bir SMART verisi alamadım ve önyükleme süresi yavaştı. Ancak, geri ekledi uve mükemmel çalışıyor.
Terrance

1
Birden fazla kişi için, şöyle görünüyor:quirks=0bc2:ab24:u,0bc2:ac30:u
Tom Hale

6

Harici sürücüler (USB ile, sanırım) SMART ile zor. Bazıları hiç çalışmıyor. smartmontoolsİnsanlar yayınlanmıştır komut satırı ile sabit diskler bir listesini eklemek geçersmartctl (beşinci sütun bakınız).


Ya gerek gibi özellikle Seagate Expansion sürücüler için, görünüşe -d satya -d sat,12. Takip etmeyi dene:

sudo smartctl -d sat --all /dev/sdb
sudo smartctl -d sat,12 --all /dev/sdb

Bunlardan biri işe yararsa, komutlarınıza hangi -danahtarın ekleneceğini söyler smartctl.


her ikisi de bana hata bağlantısı
Edward Torvalds

harici hdd adı: Seagate Expansion External. destekleniyor gibi görünüyor ama yine de seçenekler hata veriyor
Edward Torvalds

3

Sadece Alvaro'in cevabına eklediğim bir güncelleme

Sadece bunu Ubuntu 18.04'te smartctl, sürücüyü hiç okuyamadığım bir harici Seagate disk için test ettim . Sistemimin arkasına geçmek ve USB bağlantılarını karıştırmak istemediğim için yeniden başlatma gerekiyordu.

İlk koştu lsusbve sürücü için tüm bilgilerimi aldım:

terrance@terrance-ubuntu:~$ lsusb
Bus 006 Device 002: ID 0bc2:a0a4 Seagate RSS LLC Backup Plus Desktop Drive
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 002: ID 1532:0118 Razer USA, Ltd 
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 003: ID 046d:c215 Logitech, Inc. Extreme 3D Pro
Bus 003 Device 002: ID 1532:005b Razer USA, Ltd 
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Gördüğünüz gibi sürücümün adı Seagatevar, bu yüzden tek yapmam gereken /etc/modprode.d/ignore_uas.confdosyayı dosyaya eklemek için aşağıdaki satırı çalıştırmaktır :

echo options usb-storage quirks=$(lsusb | awk '/Seagate/ {print $6}'):u | sudo tee -a /etc/modprobe.d/ignore_uas.conf

Sadece Seagatesürücünüzün adıyla değiştirmeyi unutmayın . Şimdi baktığımda /etc/modprode.d/ignore_uas.confşöyle görüyorum:

~$ cat /etc/modprobe.d/ignore_uas.conf 
options usb-storage quirks=0bc2:a0a4:u

Sonra update-initramfsdeğişikliklerin kalıcı olması için sadece çalıştırın :

sudo update-initramfs -u

Ardından sisteminizi yeniden başlatın. Artık smartctl harici sürücümü okuyabiliyor.

$ sudo smartctl -a /dev/sdf
smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.15.0-43-generic] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Seagate Barracuda 7200.14 (AF)
Device Model:     ST3000DM001-1E6166
Serial Number:    W1F3DNG2
LU WWN Device Id: 5 000c50 06a323610
Firmware Version: SC47
User Capacity:    3,000,592,982,016 bytes [3.00 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    7200 rpm
Form Factor:      3.5 inches
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ATA8-ACS T13/1699-D revision 4
SATA Version is:  SATA 3.0, 6.0 Gb/s (current: 3.0 Gb/s)
Local Time is:    Fri Jan 11 23:07:43 2019 MST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
See vendor-specific Attribute list for marginal Attributes.

General SMART Values:
Offline data collection status:  (0x00) Offline data collection activity
                    was never started.
                    Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0) The previous self-test routine completed
                    without error or no self-test has ever 
                    been run.
Total time to complete Offline 
data collection:        (  592) seconds.
Offline data collection
capabilities:            (0x73) SMART execute Offline immediate.
                    Auto Offline data collection on/off support.
                    Suspend Offline collection upon new
                    command.
                    No Offline surface scan supported.
                    Self-test supported.
                    Conveyance Self-test supported.
                    Selective Self-test supported.
SMART capabilities:            (0x0003) Saves SMART data before entering
                    power-saving mode.
                    Supports SMART auto save timer.
Error logging capability:        (0x01) Error logging supported.
                    General Purpose Logging supported.
Short self-test routine 
recommended polling time:    (   1) minutes.
Extended self-test routine
recommended polling time:    ( 336) minutes.
Conveyance self-test routine
recommended polling time:    (   2) minutes.
SCT capabilities:          (0x3081) SCT Status supported.

SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   108   099   006    Pre-fail  Always       -       19766104
  3 Spin_Up_Time            0x0003   094   091   000    Pre-fail  Always       -       0
  4 Start_Stop_Count        0x0032   097   097   020    Old_age   Always       -       3944
  5 Reallocated_Sector_Ct   0x0033   100   100   010    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000f   052   048   030    Pre-fail  Always       -       231936780154
  9 Power_On_Hours          0x0032   058   058   000    Old_age   Always       -       36793
 10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   097   097   020    Old_age   Always       -       3942
183 Runtime_Bad_Block       0x0032   100   100   000    Old_age   Always       -       0
184 End-to-End_Error        0x0032   100   100   099    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
188 Command_Timeout         0x0032   100   092   000    Old_age   Always       -       894 897 1362
189 High_Fly_Writes         0x003a   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0022   056   039   045    Old_age   Always   In_the_past 44 (Min/Max 44/44 #237)
191 G-Sense_Error_Rate      0x0032   100   100   000    Old_age   Always       -       0
192 Power-Off_Retract_Count 0x0032   099   099   000    Old_age   Always       -       3909
193 Load_Cycle_Count        0x0032   020   020   000    Old_age   Always       -       161838
194 Temperature_Celsius     0x0022   044   061   000    Old_age   Always       -       44 (0 13 0 0 0)
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
240 Head_Flying_Hours       0x0000   100   253   000    Old_age   Offline      -       8558h+07m+38.053s
241 Total_LBAs_Written      0x0000   100   253   000    Old_age   Offline      -       14574986552
242 Total_LBAs_Read         0x0000   100   253   000    Old_age   Offline      -       18776308038

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
No self-tests have been logged.  [To run self-tests, use: smartctl -t]

SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.

Bu yardımcı olur umarım!


Bu değişiklikten sonra sürücüm artık takılmayacak. Neden ?
Philippe Delteil

@PhilippeDelteil Sürücünün düzgün takılmamasına neden olduğunu hiç duymadım. Sürücü görüldüğünde daha kalıcı bir ayar yapmak için askubuntu.com/a/952275/231142'yi deneyebilirsiniz gnome-disks.
Terrance

3

Bağlı iki Seagate disk vardı, bu yüzden @Terrance komutunu:

echo "options usb-storage quirks=$(lsusb | awk '/Seagate/ {print $6":u"}' | tr '\n' ',' | head -c-1)" | sudo tee -a /etc/modprobe.d/ignore_uas.conf

Bu, birden çok öğe için doğru bir ayırıcı (ve bayrak tekrarı) verir:

options usb-storage quirks=0bc2:3320:u,0bc2:2323:u

'Newline' karakterlerinin ',' ile değiştirilmesi, muhtemelen en zarif şekilde yapılmaz (kullanarak ekstra ayırıcıyı kaldırmayı gerektirir head), ancak işe yarıyor gibi görünüyor.

Sonra:

sudo update-initramfs -u

Ve orijinal yanıtta olduğu gibi yeniden başlatın.


İyi bulmak! Benimkini test ettiğim zaman birden fazla sürücü düşünmedim. Bunu gerçekten beğendim! +1
Terrance

1

desteklenen USB Aygıtlarıyla tabloyu kontrol edin ...

anahtar -d sat, SATA bağlantı noktasına sahip bir sürücü olması gerektiğini belirtir.

belirli USB köprüler için özel anahtarlar vardır - lsusbsomut adı gösterebilir. köprü denetleyicisinin kötü bir uygulaması olabilirse, USB yerine SATA üzerinden yerel olarak bağlamayı deneyin.

SCSI ve ATA (kabuk çıkışına göre) muhtemelen aradığınız şey değildir :)


Satın aldığımda hdd ile gelen kablo kullanıyorum. bu hataları görmek isteyebilirsiniz: bağlantı
Edward Torvalds

harici hdd adı: Seagate Expansion External. destekleniyor gibi görünüyor ama yine de seçenekler hata veriyor
Edward Torvalds

@ edwardtorvalds iki temel ön koşul vardır ... port için BIOS / UEFI'de SMART etkinleştirilmişse (varsa) ve okumaya çalışmadan önce yazılım aracılığıyla etkinleştirilmiş olması ... smartctl -T permissive --smart=on /dev/sdb(günlükler konuşur gibi görünürken) ) yanlış bağlantı noktasına
Martin Zeitler

Bunun için hiçbir önyükleme seçeneği yok, ben bu hatayı
Edward Torvalds

@edwardtorvalds hala SCSI komutları gönderiyor ... -d sat anahtarı eksik smartctl -d sat -T permissive --smart=on /dev/sdb... ve yukarıda yazdığım gibi lsusbhangi köprü olduğunu listelemek gerekir.
Martin Zeitler
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.