Недавно я начал замечать некоторые blk_update_request: I/O error, dev fd0, sector 0
ошибки на моем втором компьютере под управлением Arch Linux, который я использую в качестве сервера. Это началось, когда мне пришлось перезагрузить компьютер, когда я переехал в новую квартиру. У меня была следующая /etc/fstab
конфигурация:
#
# /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
Таким образом, мой основной жесткий диск монтируется /
и мой внешний жесткий диск монтируется /media/marcel/videos
. Проблема в том, что после перезагрузки мой внешний диск получил /dev/sda
и мой внутренний диск получил /dev/sdb
. Насколько я мог судить, компьютер загрузился нормально, пока не выяснил, /media/marcel/videos
что это за клон /
. Теперь у меня отключен внешний диск, и я просто пытаюсь устранить неполадки моего основного диска.
Релавент 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
(всякий раз, когда я бегу fdisk -l
, я blk_update_request
снова получаю сообщение об ошибке):
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
Это серьезная проблема или что-то, что можно игнорировать?
Изменить 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
источник
fd0
иfloppy
из dmesg не связаны с HDD. Если на вашей машине есть дисковод гибких дисков и вы им не пользуетесь - лучше его удалить. Такие программыfdisk
могут запрашивать все соответствующие блочные устройства с помощью внешних программ или библиотек.blk_update_request
ошибки приходят с моей дискеты? Если это так, это действительно странно, потому что у меня даже нет дисковода.ls -ld /dev/fd0
lsmod
отправьте пожалуйстаОтветы:
Кажется, что ядро ошибочно обнаружило какое-то устройство как дискету или просто создало несуществующую ссылку, потому что на вашей машине нет реального дисковода. Так что это
blk_update_request
дляfd0
абсолютно не связаны с ваших жестких дисков. Многие программы управления дисками, такие как,fdisk
например, перечисляют все доступные блочные устройства, и определенноfdisk
ударили по модулю дискеты, и эти сообщения начали появляться в вашем dmesg.Поскольку на вашей машине нет дисковода гибких дисков, рекомендуется и безопасно удалить
floppy
модуль ядра из черного списка, чтобы он не беспокоил вас в будущем:затем добавьте
/etc/modprobe.d/blacklist-floppy.conf
в/etc/mkinitcpio.conf
переменную FILES и сделайтеmkinitcpio -p linux
так, чтобы initramfs тоже не загружал ее.Так что после следующей перезагрузки он не появится и не испортит вашу устойчивую конфигурацию.
источник
/etc/modprobe.d/blacklist-floppy.conf
к/etc/mkinitcpio.conf
и затем запустить ,mkinitcpio -p linux
чтобы получить изменения в трюм. Вы можете добавить это.Попробуйте это: http://forums.debian.net/viewtopic.php?t=133253
Это решает эту ошибку, которая в моем случае явно не была ошибкой инициализации дискеты, а не новым UUID раздела (как новый UUID для раздела подкачки).
Кстати: нет необходимости менять /boot/grub/grub.cfg с «root = UUID =» на «root = / dev / sd ??».
источник
Я возился и дурачился с этим еще довольно долго.
Короткое и длинное решение.
Это короткий:
sudo update-initramfs -u
и ваши проблемы должны быть закончены.
--- + ---
Длинная версия, написанная кем-то другим, которую я не принял к сведению. (Извините люди!)
Пытаться:
Используйте blkid, чтобы определить UUID вашего раздела подкачки, и, находясь там, убедитесь, что все другие разделы имеют правильные UUID в / etc / fstab. Также можно использовать lsblk -f для поиска UUID.
Поместите правильные UUID в / etc / fstab, особенно swap, для этой ошибки.
Поместите правильный UUID для обмена в /etc/initramfs-tools/conf.d/resume.
Запустите sudo update-initramfs -u
Перезагрузка. Исправлена моя тройная загрузка Stretch all с этой ошибкой, так как файл подкачки изменился.
--- + ---
Проблема была в том, что мой своп был зашифрован. Таким образом, скрипт local-premount в initramfs ожидал недоступного устройства подкачки, пока не истекло время ожидания. Соответствующее сообщение было прекращено в ожидании приостановки / возобновления работы устройства.
Чтобы отключить это (поскольку восстановление из свопа невозможно с помощью зашифрованного свопа, и я в любом случае не использую спящий режим), я изменил этот файл: /etc/initramfs-tools/conf.d/resume.
В этом файле строка с
RESUME = нет (вместо UUID, который был здесь) отключит ожидание устройства возобновления.
Запустить
sudo update-initramfs -u для применения изменений.
Система теперь загружается нормально.
--- + ---
Берт.
источник
Используйте приведенную ниже команду, и она наверняка решит проблему:
Перезагрузка...
источник