Điểm:0

Thứ tự thông báo bình thường trong dmesg khi ổ cứng USB bị lỗi là gì?

lá cờ mu

Tôi có một ổ đĩa cứng USB được gắn vào một máy chủ Debian GNU/Linux. Tôi đang cố định dạng nó (NTFS), bằng lệnh này:

# mkntfs -v /dev/sdd1

mất vài giờ vì nó cũng kiểm tra đĩa. Trong khi kiểm tra, dmesg -T cho thấy như sau:

[Thứ Tư ngày 12 tháng 1 15:22:53 năm 2022] sd 9:0:0:0: [sdd] Đĩa SCSI đính kèm
[Thứ Tư ngày 12 tháng 1 18:03:26 năm 2022] usb 1-4: Ngắt kết nối USB, thiết bị số 5
[Thứ Tư ngày 12 tháng 1 18:03:26 năm 2022] blk_update_request: Lỗi I/O, dev sdd, sector 621745808 op 0x1:(WRITE) flags 0x104000 phys_seg 240 lớp trước 0
[Thứ Tư ngày 12 tháng 1 18:03:26 năm 2022] Lỗi I/O bộ đệm trên nhà phát triển sdd1, khối logic 621743760, ghi trang không đồng bộ bị mất
[Thứ Tư ngày 12 tháng 1 18:03:26 năm 2022] Lỗi I/O bộ đệm trên dev sdd1, khối logic 621743761, ghi trang không đồng bộ bị mất
   (...vân vân trong vài dòng)
[Thứ Tư ngày 12 tháng 1 18:03:26 năm 2022] blk_update_request: Lỗi I/O, dev sdd, sector 621746048 op 0x1:(WRITE) flags 0x104000 phys_seg 240 lớp trước 0
[Thứ Tư ngày 12 tháng 1 18:03:26 năm 2022] blk_update_request: Lỗi I/O, dev sdd, sector 621746288 op 0x1:(WRITE) flags 0x100000 phys_seg 8 lớp trước 0
[Thứ Tư ngày 12 tháng 1 18:03:26 năm 2022] blk_update_request: Lỗi I/O, dev sdd, sector 621746296 op 0x1:(WRITE) flags 0x800 phys_seg 16 lớp trước 0
   (...vân vân trong vài dòng)
[Thứ Tư ngày 12 tháng 1 18:03:31 năm 2022] buffer_io_error: 9015384 lệnh gọi lại bị chặn
   (...lỗi khác...)

Nhìn vào số lượng lớn các thông báo lỗi, tôi cho rằng ổ cứng gần như đã chết, nhưng gắn nó vào PC Windows thì có vẻ như nó vẫn hoạt động. Hơn nữa, lỗi đầu tiên (usb 1-4: Ngắt kết nối USB, thiết bị số 5) đi vào dmesg trước các lỗi khác, khiến tôi nghi ngờ vấn đề không phải do chính ổ cứng mà là do một thứ khác khiến ổ cứng bị ngắt kết nối ngay từ đầu và các lỗi tiếp theo có thể là hậu quả rõ ràng của việc ngắt kết nối.

Tuy nhiên tôi không có nhiều kinh nghiệm trong dmesg đầu ra, vì vậy rất có thể tôi đang đọc sai.

CHỈNH SỬA: theo yêu cầu của NiKiZe, đây là kết quả của smartctl -a /dev/sdd:

# smartctl -a /dev/sdd
smartctl 6.6 2017-11-05 r4594 [x86_64-linux-5.10.0-3-AMD64] (bản dựng cục bộ)
Bản quyền (C) 2002-2017, Bruce Allen, Christian Franke, www.smartmontools.org

=== PHẦN THÔNG TIN BẮT ĐẦU ===
Dòng sản phẩm: Western Digital Blue Mobile
Kiểu thiết bị: WDC WD10SPCX-00KHST0
Số sê-ri: WD-WXF1A95F0J3X
Id thiết bị LU WWN: 5 0014ee 65b7e0332
Phiên bản chương trình cơ sở: 01.01A01
Dung lượng người dùng: 1.000.204.886.016 byte [1,00 TB]
Kích thước cung: 512 byte logic, 4096 byte vật lý
Tốc độ quay: 5400 vòng / phút
Thiết bị là: Trong cơ sở dữ liệu smartctl [để biết chi tiết, hãy sử dụng: -P show]
Phiên bản ATA là: ACS-2 (bản sửa đổi nhỏ không được chỉ định)
Phiên bản SATA là: SATA 3.0, 6.0 Gb/s (hiện tại: 1.5 Gb/s)
Giờ địa phương là: Thứ 5 ngày 13 tháng 1 11:04:19 2022 CET
Hỗ trợ SMART là: Có sẵn - thiết bị có khả năng SMART.
Hỗ trợ SMART là: Đã bật

=== BẮT ĐẦU ĐỌC PHẦN DỮ LIỆU THÔNG MINH ===
Trạng thái SMART không được hỗ trợ: Phản hồi không đầy đủ, thiếu thanh ghi đầu ra ATA
Kết quả kiểm tra tự đánh giá sức khỏe tổng thể SMART: ĐẠT
Cảnh báo: Kết quả này dựa trên kiểm tra Thuộc tính.

Giá trị SMART chung:
Trạng thái thu thập dữ liệu ngoại tuyến: (0x00) Hoạt động thu thập dữ liệu ngoại tuyến
                    không bao giờ được bắt đầu.
                    Tự động thu thập dữ liệu ngoại tuyến: Đã tắt.
Trạng thái thực hiện tự kiểm tra: ( 0) Đã hoàn thành quy trình tự kiểm tra trước đó
                    không có lỗi hoặc chưa bao giờ tự kiểm tra 
                    được chạy.
Tổng thời gian hoàn thành Offline 
thu thập dữ liệu: (16080) giây.
Thu thập dữ liệu ngoại tuyến
khả năng: (0x7b) SMART thực thi Ngoại tuyến ngay lập tức.
                    Hỗ trợ bật/tắt thu thập dữ liệu tự động ngoại tuyến.
                    Tạm dừng bộ sưu tập ngoại tuyến khi mới
                    chỉ huy.
                    Hỗ trợ quét bề mặt ngoại tuyến.
                    Hỗ trợ tự kiểm tra.
                    Hỗ trợ tự kiểm tra băng tải.
                    Hỗ trợ Tự kiểm tra chọn lọc.
Khả năng SMART: (0x0003) Lưu dữ liệu SMART trước khi nhập
                    Chế độ tiết kiệm năng lượng.
                    Hỗ trợ hẹn giờ lưu tự động SMART.
Khả năng ghi lỗi: (0x01) Hỗ trợ ghi lỗi.
                    Ghi nhật ký mục đích chung được hỗ trợ.
Quy trình tự kiểm tra ngắn 
thời gian bỏ phiếu khuyến nghị: ( 2) phút.
Mở rộng thói quen tự kiểm tra
thời gian bỏ phiếu khuyến nghị: ( 184) phút.
Quy trình tự kiểm tra băng tải
thời gian bỏ phiếu khuyến nghị: ( 5) phút.
Khả năng SCT: (0x7035) Hỗ trợ trạng thái SCT.
                    Hỗ trợ kiểm soát tính năng SCT.
                    Bảng dữ liệu SCT được hỗ trợ.

Thuộc tính SMART Số sửa đổi cấu trúc dữ liệu: 16
Thuộc tính SMART cụ thể của nhà cung cấp với ngưỡng:
ID# ATTRIBUTE_NAME GIÁ TRỊ CỜ LOẠI THRESH XẤU NHẤT ĐƯỢC CẬP NHẬT KHI_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate 0x002f 200 200 051 Pre-fail Luôn luôn - 0
  3 Spin_Up_Time 0x0027 190 184 021 Luôn thất bại trước - 1500
  4 Start_Stop_Count 0x0032 081 081 000 Old_age Luôn luôn - 19048
  5 Được phân bổ lại_Sector_Ct 0x0033 200 200 140 Luôn thất bại trước - 0
  7 Seek_Error_Rate 0x002e 200 200 000 Old_age Luôn luôn - 0
  9 Power_On_Hours 0x0032 073 073 000 Old_age Luôn luôn - 20415
 10 Spin_Retry_Count 0x0032 100 100 000 Old_age Luôn luôn - 0
 11 Calibration_Retry_Count 0x0032 100 100 000 Old_age Luôn luôn - 0
 12 Power_Cycle_Count 0x0032 100 100 000 Old_age Luôn luôn - 188
192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Luôn luôn - 43
193 Load_Cycle_Count 0x0032 187 187 000 Old_age Luôn luôn - 41054
194 Nhiệt độ_Celsius 0x0022 119 095 000 Old_age Luôn luôn - 28
196 Được phân bổ lại_Event_Count 0x0032 200 200 000 Old_age Luôn luôn - 0
197 Current_Pending_Sector 0x0032 200 200 000 Old_age Luôn luôn - 0
198 Ngoại tuyến_Không thể sửa được 0x0030 100 253 000 Old_age Ngoại tuyến - 0
199 UDMA_CRC_Error_Count 0x0032 200 200 000 Old_age Luôn luôn - 0
200 Multi_Zone_Error_Rate 0x0008 100 253 000 Old_age Ngoại tuyến - 0

Phiên bản nhật ký lỗi SMART: 1
Không có lỗi nào được ghi lại

SMART Bản sửa đổi cấu trúc nhật ký tự kiểm tra số 1
Không có bài tự kiểm tra nào được ghi lại. [Để chạy tự kiểm tra, hãy sử dụng: smartctl -t]

SMART Bản sửa đổi cấu trúc dữ liệu nhật ký tự kiểm tra có chọn lọc số 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
Cờ tự kiểm tra có chọn lọc (0x0):
  Sau khi quét các khoảng đã chọn, KHÔNG đọc-quét phần còn lại của đĩa.
Nếu chức năng tự kiểm tra có chọn lọc đang chờ xử lý khi bật nguồn, hãy tiếp tục sau 0 phút trì hoãn.

Giả sử ổ cứng này thực sự bị lỗi và những thông báo lỗi đó trong dmesg có dành cho các thành phần xấu thực sự không, tại sao dmesg hiển thị ngắt kết nối trước các tin nhắn thành phần xấu hơn là sau?

lá cờ in
Lỗi I/O dường như là kết quả của việc ngắt kết nối USB, nhưng ai biết thiết bị/đĩa USB xử lý sự cố như thế nào, có thể nó cố đặt lại hoặc có thể nguồn điện bị hỏng và ngay khi bạn tải bất kỳ, nó sẽ đặt lại . Dường như có một khoảng thời gian giữa kết nối và ngắt kết nối, điều gì đã xảy ra trong thời gian đó?
Lucio Crusca avatar
lá cờ mu
Trong thời gian đó, `mkntfs` đang chạy (ví dụ: kiểm tra và xóa đĩa)
lá cờ in
đầu ra smartctl không hiển thị bất kỳ vấn đề nào với đĩa, hãy bắt đầu điều tra vỏ bọc. Có lẽ nó chỉ là cũ và xấu.
Điểm:1
lá cờ br

Việc ngắt kết nối xảy ra trước, sau đó bạn gặp một loạt lỗi do việc ngắt kết nối gây ra, trong đó các lớp khác nhau tạo ra đĩa ghi thông báo rằng có điều gì đó không ổn.

Hầu hết I/O xảy ra ở dạng trang bộ nhớ "bẩn" có đĩa sao lưu, hạt nhân cuối cùng sẽ chuyển sang đĩa, rất lâu sau khi ghi đã được xác nhận cho ứng dụng và các lớp trình điều khiển duy nhất được vẫn quan tâm đến yêu cầu là hệ thống con bộ nhớ (muốn biết liệu trang có thể được giải phóng hay không) và hệ thống tệp (cần tạo thêm ghi để cập nhật siêu dữ liệu sau khi dữ liệu được ghi) -- bất kỳ thứ gì ở trên đã bị tháo dỡ đã sẵn sàng.

Một số yêu cầu không đi qua hệ thống con bộ nhớ (ví dụ: truy vấn trạng thái SMART), một số yêu cầu như số lần đọc có thể chỉ được đính kèm với hệ thống con bộ nhớ vì hệ thống tệp đã tra cứu ánh xạ khối và không cần tham gia nữa.

Vì vậy, thông báo lỗi bạn nhận được do ngắt kết nối không có thứ tự cụ thể -- chúng xảy ra khi các yêu cầu được tạo, gửi và từ chối do thiết bị đang ngoại tuyến. Nếu có mối quan hệ nhân quả giữa một số yêu cầu (chẳng hạn như mục nhập nhật ký phản ánh trạng thái mới sau khi truyền dữ liệu bị hủy bỏ -- xét cho cùng, nhật ký có thể nằm trên một thiết bị khác), thì điều này xác định một chút thứ tự.

Có lẽ tôi sẽ thử sử dụng đĩa trên một cổng SATA thích hợp và với nguồn điện từ nguồn cung cấp tốt - bộ chuyển đổi điện áp trong vỏ USB sang SATA thường hơi tinh ranh.

Điểm:0
lá cờ in

Hãy coi như ổ đĩa đã chết.

Thông thường, không mất nhiều thời gian để định dạng ổ đĩa. Tuy nhiên, việc thử lại và đặt lại trên các khối xấu sẽ mất thời gian.

Chắc chắn điều này có thể là do nguồn điện kém hoặc cái gì khác.

Không phải tất cả các thiết bị USB đều hỗ trợ passthru thông minh, nhưng hãy thử: smartctl -a /dev/sdd Đặc biệt tìm kiếm Được phân bổ lại_Sector_Ct, Đã phân bổ lại_Event_Count, Ngành cấp phát hiện hành, Ngoại tuyến_Không thể sửa Nếu bất kỳ ai trong số họ có một RAW_VALUE khác với 0, tôi sẽ cố gắng tránh sử dụng đĩa cho bất kỳ thứ gì khác ngoài dữ liệu không quan trọng.

Nếu không có dữ liệu trên đĩa, bạn luôn có thể thử xóa sạch nó, sử dụng một cái gì đó như (hãy cẩn thận ở đây!!!) dd if=/dev/zero of=/dev/sdd bs=4M status=progress. Bạn sẽ cần tạo lại bảng phân vùng sau đó.

Lucio Crusca avatar
lá cờ mu
Cảm ơn, nhưng tại sao `dmesg` hiển thị ngắt kết nối trước các thành phần xấu? (Tôi đã cập nhật câu hỏi của mình để phản ánh câu trả lời mà tôi thực sự đang tìm kiếm)
lá cờ in
Bạn đã thử `smartctl` để biết ổ đĩa có thực sự bị hỏng hay không?
Lucio Crusca avatar
lá cờ mu
Tôi đã cập nhật câu hỏi của mình với đầu ra là `smartctl -a /dev/sdd`

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.