Tôi có một máy tính xách tay Samsung (Chronos s7) với một đĩa SATA cứng trên xe buýt ata:1
, được phát hiện như /dev/sda
, một SSD 8G trên ata:2
, /dev/sdb
và các thiết bị khác nhau trên phần còn lại của giao diện SATA.
Vấn đề là đĩa SSD
- hàn vào bảng chính (không thể di chuyển)
- bị hỏng (nó chỉ đưa ra lỗi I / O cho bất kỳ hoạt động nào)
- nó không xuất hiện trong bios (có lẽ vì nó bị hỏng)
Bây giờ đĩa này:
- trì hoãn khởi động ba đến năm phút để cố gắng thăm dò đĩa bị lỗi, điều này gây khó chịu;
- nhưng điều khó chịu nhất là hệ thống không thể tạm dừng do lỗi
/dev/sdb
.
Lưu ý rằng tôi có thể sống với sự chậm trễ khi khởi động --- điều khiến tôi lo lắng là sơ yếu lý lịch / đình chỉ.
Vì vậy, câu hỏi là: tôi có thể nói với kernel để tránh việc thăm dò thiết bị trên ata: 2 không?
Trong kernel cũ hơn (<3.0), khi tôi vẫn có thể đào một chút vào nguồn, có một tham số dòng lệnh của kiểu hdb=ignore
sẽ thực hiện thủ thuật.
Tôi đã thử tất cả các thủ thuật được đề xuất dưới đây với các tham số kernel udev
và libata:force
không có kết quả. Cụ thể, những điều sau đây không hoạt động:
Thêm vào một trong các
/etc/udev/rules.d/
tệp sau (thực hiện sớm như00-ignoredisk.rules
hoặc trễ99-ignoredisk.rules
hoặc ở cả hai nơi)SUBSYSTEMS=="scsi", DRIVERS=="sd", ATTRS{rev}=="SSD ", ATTRS{model}=="SanDisk iSSD P4 ", ENV{UDISKS_IGNORE}="1"
cũng không
KERNEL=="sdb", ENV{UDISKS_IGNORE}="1"
cũng không có nhiều giải pháp trung gian --- điều này làm cho đĩa không thể truy cập được sau khi khởi động, nhưng nó được kiểm tra khi khởi động và vẫn được kiểm tra khi tạm dừng --- khiến cho việc tạm ngưng không thành công.
Chỉnh sửa các tệp hệ thống
/lib/udev/rules.d/60-persistent-storage.rules
(vàudisks
,udisks2
) thay đổiKERNEL=="ram*|loop*|fd*|nbd*|gnbd*|dm-|md", GOTO="persistent_storage_end"
đến
KERNEL=="ram*|loop*|fd*|nbd*|gnbd*|dm-|md|sdb*", GOTO="persistent_storage_end"
một lần nữa, điều này có một số hiệu ứng, che giấu đĩa từ không gian người dùng, nhưng đĩa vẫn hiển thị với kernel.
Khởi động với tất cả các kết hợp có thể (tốt, rất nhiều trong số chúng) của các
libata:force
tham số (ví dụ được tìm thấy ở đây ) để tắt DMA, tốc độ thấp hơn hoặc bất cứ điều gì về đĩa hỏng --- không hoạt động. Tham số được sử dụng, nhưng đĩa vẫn bị thăm dò và thất bại.Đã
udevadm info -a -n /dev/sdb
dán đầy đủ vào http://paste.ubfox.com/6186145/smartctl -i /dev/sdb -T permissive
cho:root@samsung-romano:/home/romano# smartctl -i /dev/sdb -T permissive smartctl 5.43 2012-06-30 r3573 [x86_64-linux-3.8.0-31-generic] (local build) Copyright (C) 2002-12 by Bruce Allen, http://smartmontools.sourceforge.net Vendor: /1:0:0:0 Product: User Capacity: 600,332,565,813,390,450 bytes [600 PB] Logical block size: 774843950 bytes >> Terminate command early due to bad response to IEC mode page
Điều này rõ ràng là sai. Tuy nhiên:
root@samsung-romano:/home/romano# fdisk -b 512 -C 970 -H 256 -S 63 /dev/sdb fdisk: unable to read /dev/sdb: Input/output error
(Dữ liệu SSD từ http://ubuntuforums.org/showthread.php?t=1935699&p=11739579#post11739579 ).
/etc/fstab
? Bởi vì độ trễ khi khởi động có thể được gây ra trước đó bởi kernel hoặc udev, có vẻ như là trường hợp, nhưng cũng muộn hơn bởi fsck, khi đọcfstab
.