blk_update_request: Kesalahan I / O, dev fd0, sektor 0

10

Saya baru-baru ini mulai memperhatikan beberapa blk_update_request: I/O error, dev fd0, sector 0kesalahan pada komputer kedua saya yang menjalankan Arch Linux yang saya gunakan sebagai server. Ini dimulai ketika saya harus me-reboot komputer ketika saya pindah ke apartemen baru. Saya memiliki /etc/fstabkonfigurasi berikut :

#
# /etc/fstab: static file system information
#
# <file system> <dir>   <type>  <options>       <dump>  <pass>
#UUID=94880e53-c4d3-4d4d-a217-84c9ac58f4fd
/dev/sda1       /       ext4    rw,relatime,data=ordered        0 1

#UUID=c1245aca-bbf7-4813-8c25-10bd0d95631e
/dev/sda2       none    swap    defaults        0 0

#UUID=94880e53-c4d3-4d4d-a217-84c9ac58f4fd
/dev/sdb1       /media/marcel/videos    auto    rw,user,auto    0 0

Jadi hdd utama saya di-mount ke /dan hdd eksternal saya di-mount ke /media/marcel/videos. Masalahnya adalah setelah reboot, drive eksternal /dev/sdasaya dan drive internal saya /dev/sdb. Komputer boot dengan baik sejauh yang saya tahu sampai saya melihat ke dalam /media/marcel/videosyang merupakan tiruan dari /. Sekarang saya memiliki drive eksternal dicabut dan saya hanya mencoba untuk memecahkan masalah drive utama saya.

Relavent dmesg:

ACPI Error: [CAPB] Namespace lookup failure, AE_ALREADY_EXISTS (20160108/dsfield-211)
ACPI Error: Method parse/execution failed [\_SB.PCI0._OSC] (Node ffff88007b891708), AE_ALREADY_EXISTS (20160108/psparse-542)
blk_update_request: I/O error, dev fd0, sector 0
floppy: error -5 while reading block 0
ACPI Exception: AE_NOT_FOUND, Evaluating _DOD (20160108/video-1248)
ACPI Warning: SystemIO range 0x0000000000001028-0x000000000000102F conflicts with OpRegion 0x0000000000001028-0x0000000000001047 (\_SB.PCI0.IEIT.EITR) (20160108/utaddress-255)
ACPI Warning: SystemIO range 0x0000000000001028-0x000000000000102F conflicts with OpRegion 0x0000000000001000-0x000000000000102F (\_SB.PCI0.LPC0.PMIO) (20160108/utaddress-255)
ACPI Warning: SystemIO range 0x0000000000001180-0x00000000000011AF conflicts with OpRegion 0x0000000000001180-0x00000000000011AF (\_SB.PCI0.LPC0.GPOX) (20160108/utaddress-255)
blk_update_request: I/O error, dev fd0, sector 0
floppy: error -5 while reading block 0
blk_update_request: I/O error, dev fd0, sector 0
floppy: error -5 while reading block 0
blk_update_request: I/O error, dev fd0, sector 0
floppy: error -5 while reading block 0

fdisk -l(setiap kali saya menjalankan fdisk -l, saya mendapatkan blk_update_requestkesalahan lagi):

Disk /dev/sda: 149.1 GiB, 160041885696 bytes, 312581808 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x0007ee23

Device     Boot     Start       End   Sectors   Size Id Type
/dev/sda1  *         2048 311609343 311607296 148.6G 83 Linux
/dev/sda2       311609344 312581807    972464 474.9M 82 Linux swap / Solaris

uname -a:

Linux nas 4.5.3-1-ARCH #1 SMP PREEMPT Sat May 7 20:43:57 CEST 2016 x86_64 GNU/Linux

Apakah ini masalah serius atau sesuatu yang bisa diabaikan?

Edit 1:

lsmod:

Module                  Size  Used by
cfg80211              491520  0
rfkill                 20480  2 cfg80211
coretemp               16384  0
kvm_intel             180224  0
psmouse               118784  0
kvm                   491520  1 kvm_intel
irqbypass              16384  1 kvm
serio_raw              16384  0
snd_hda_codec_analog    16384  1
iTCO_wdt               16384  0
snd_hda_codec_generic    69632  1 snd_hda_codec_analog
iTCO_vendor_support    16384  1 iTCO_wdt
gpio_ich               16384  0
input_leds             16384  0
ppdev                  20480  0
led_class              16384  1 input_leds
pcspkr                 16384  0
evdev                  24576  3
joydev                 20480  0
mac_hid                16384  0
snd_hda_intel          32768  0
snd_hda_codec         106496  3 snd_hda_codec_generic,snd_hda_intel,snd_hda_codec_analog
i2c_i801               20480  0
snd_hda_core           49152  4 snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,snd_hda_codec_analog
lpc_ich                24576  0
snd_hwdep              16384  1 snd_hda_codec
snd_pcm                86016  3 snd_hda_codec,snd_hda_intel,snd_hda_core
mei_me                 32768  0
i915                 1155072  1
mei                    81920  1 mei_me
snd_timer              28672  1 snd_pcm
snd                    65536  7 snd_hwdep,snd_timer,snd_pcm,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,snd_hda_codec_analog
intel_agp              20480  0
soundcore              16384  1 snd
fjes                   28672  0
drm_kms_helper        106496  1 i915
e1000e                217088  0
drm                   290816  3 i915,drm_kms_helper
parport_pc             28672  0
ptp                    20480  1 e1000e
parport                40960  2 ppdev,parport_pc
pps_core               20480  1 ptp
button                 16384  1 i915
video                  36864  1 i915
intel_gtt              20480  3 i915,intel_agp
acpi_cpufreq           20480  1
syscopyarea            16384  1 drm_kms_helper
sysfillrect            16384  1 drm_kms_helper
sysimgblt              16384  1 drm_kms_helper
fb_sys_fops            16384  1 drm_kms_helper
i2c_algo_bit           16384  1 i915
tpm_tis                20480  0
tpm                    36864  1 tpm_tis
processor              32768  1 acpi_cpufreq
sch_fq_codel           20480  2
ip_tables              28672  0
x_tables               28672  1 ip_tables
ext4                  516096  1
crc16                  16384  1 ext4
mbcache                20480  1 ext4
jbd2                   94208  1 ext4
sr_mod                 24576  0
cdrom                  49152  1 sr_mod
sd_mod                 36864  3
hid_generic            16384  0
usbhid                 45056  0
hid                   114688  2 hid_generic,usbhid
atkbd                  24576  0
libps2                 16384  2 atkbd,psmouse
ata_piix               36864  2
ehci_pci               16384  0
floppy                 69632  0
ata_generic            16384  0
pata_acpi              16384  0
i8042                  24576  1 libps2
serio                  20480  6 serio_raw,atkbd,i8042,psmouse
uhci_hcd               40960  0
libata                196608  3 pata_acpi,ata_generic,ata_piix
ehci_hcd               69632  1 ehci_pci
usbcore               196608  4 uhci_hcd,ehci_hcd,ehci_pci,usbhid
usb_common             16384  1 usbcore
scsi_mod              151552  3 libata,sd_mod,sr_mod
Marcel
sumber
1
fd0dan floppydari dmesg tidak terkait dengan hdds. Jika mesin Anda memiliki floppy drive dan Anda tidak menggunakannya - lebih baik untuk menghapusnya. Program seperti fdiskmungkin meminta semua perangkat blok yang relevan dengan bantuan program eksternal atau pustaka.
Jadi, apakah Anda mengatakan bahwa blk_update_requestkesalahan datang dari floppy drive saya? Jika itu masalahnya, itu benar-benar aneh karena saya bahkan tidak punya floppy drive.
Marcel
Apakah Anda memiliki perangkat fd0? ls -ld /dev/fd0
Dan lsmodtolong posting Anda
@siblynx menambahkan.
Marcel

Jawaban:

17

Tampaknya kernel salah mendeteksi perangkat sebagai floppy atau baru saja membuat referensi yang tidak ada karena mesin Anda tidak memiliki floppy drive nyata. Jadi ini blk_update_requestuntuk fd0sepenuhnya tidak terkait dengan hard drive Anda. Banyak program pengelolaan disk seperti fdiskingin menghitung semua perangkat blok yang tersedia, dan tentu saja fdiskmengenai modul floppy dan pesan-pesan ini mulai muncul di dmesg Anda.

Karena mesin Anda tidak memiliki floppy drive, itu aman dan dianjurkan untuk menghapus dan memasukkan floppymodul kernel sehingga tidak akan mengganggu Anda di masa depan:

sudo rmmod floppy
echo "blacklist floppy" | sudo tee /etc/modprobe.d/blacklist-floppy.conf

kemudian tambahkan /etc/modprobe.d/blacklist-floppy.confke /etc/mkinitcpio.confvariabel FILES dan melakukannya mkinitcpio -p linuxinitramfs tidak akan memuatnya juga.

Jadi setelah reboot berikutnya tidak akan muncul dan mengacaukan konfigurasi stabil Anda.


sumber
1
Saya harus menambahkan /etc/modprobe.d/blacklist-floppy.confuntuk /etc/mkinitcpio.confdan kemudian jalankan mkinitcpio -p linuxuntuk mendapatkan perubahan terus. Anda mungkin ingin menambahkan itu.
Marcel
Ya, memiliki ini di masa lalu dan lupa menambahkan.
Perhatikan bahwa jika sistem Anda memiliki pengontrol floppy, ia tidak dapat mengetahuinya sampai ia mencoba menyelidikinya jika ada drive yang terpasang, dan ia tidak dapat membedakan antara "drive kosong" dan "tidak ada drive". Itu sebabnya Anda harus membuat daftar hitam modul untuk menyingkirkan kesalahan jika Anda tidak memiliki drive.
Perkins
1

Coba ini: http://forums.debian.net/viewtopic.php?t=133253

Itu memecahkan bug ini yang tidak jelas dalam kasus saya bug inisialisasi floppy daripada UUID partisi baru (seperti UUID baru untuk partisi swap).

Btw: Tidak perlu mengubah /boot/grub/grub.cfg dari "root = UUID =" ke "root = / dev / sd ??".

59iosl30
sumber
1

Saya telah fideling dan bermain-main dengan itu untuk waktu yang agak lama.

Solusi pendek dan panjang.

Ini yang singkat:

  • Pertama-tama lihat bahwa file fstab Anda baik-baik saja, terutama partisi swap Anda . -Lalu lari:

pembaruan sudo-initramfs -u

dan masalah Anda harus berakhir.

--- + ---

Versi panjangnya ditulis oleh orang lain yang tidak saya perhatikan. (Maaf orang!)

Mencoba:

Gunakan blkid untuk menentukan UUID partisi swap Anda, dan saat itu, pastikan semua partisi lain sudah benar di / etc / fstab UUID. Juga dapat menggunakan lsblk -f untuk menemukan UUID.

Masukkan UUID yang benar ke / etc / fstab, terutama swap, untuk kesalahan ini.

Masukkan UUID yang benar untuk swap ke /etc/initramfs-tools/conf.d/resume.

Jalankan sudo perbarui-initramfs -u

Mulai ulang. Memperbaiki triple boot saya dari Stretch all dengan kesalahan ini, karena file swap telah berubah.

--- + ---

Masalahnya adalah karena swap saya dienkripsi. Jadi skrip lokal-premount di initramfs sedang menunggu perangkat swap yang tidak tersedia, sampai waktunya habis. Pesan yang relevan sudah menyerah menunggu perangkat ditangguhkan / dilanjutkan.

Untuk menonaktifkan ini (karena melanjutkan dari swap tidak dimungkinkan dengan swap terenkripsi, dan saya tidak menggunakan hibernasi), saya memodifikasi file ini: /etc/initramfs-tools/conf.d/resume.

Dalam file ini, sebuah baris dengan

RESUME = tidak ada (selain UUID yang ada di sini) akan menonaktifkan menunggu perangkat resume.

Lari

sudo perbarui-initramfs -u untuk menerapkan perubahan.

Sistem sekarang melakukan boot secara normal.

--- + ---

Bert.

Bert Mariën
sumber
1

Gunakan perintah di bawah ini dan itu pasti akan memperbaiki masalah:

# sudo rmmod floppy
# echo "blacklist floppy" | sudo tee /etc/modprobe.d/blacklist-floppy.conf
# update-initramfs -u -k all

Mulai ulang ...

Bimlesh Singh
sumber