![blk_update_request: I/O 오류, dev fd0, 섹터 0](https://linux55.com/image/88258/blk_update_request%3A%20I%2FO%20%EC%98%A4%EB%A5%98%2C%20dev%20fd0%2C%20%EC%84%B9%ED%84%B0%200.png)
저는 최근 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
답변1
커널이 실수로 일부 장치를 플로피 디스크로 감지하거나 컴퓨터에 실제 플로피 드라이브가 없기 때문에 존재하지 않는 참조를 생성하는 것 같습니다. blk_update_request
따라서 이것들은 fd0
하드 드라이브와 전혀 관련이 없습니다. 많은 디스크 관리 프로그램(예: fdisk
사용 가능한 모든 블록 장치를 열거하는 것과 같은) fdisk
이 플로피 모듈에 도달하면 이러한 메시지가 dmesg에 나타나기 시작합니다.
컴퓨터에 플로피 드라이브가 없기 때문에 floppy
나중에 문제가 되지 않도록 커널 모듈을 제거하고 블랙리스트에 추가하는 것이 좋습니다.
sudo rmmod floppy
echo "blacklist floppy" | sudo tee /etc/modprobe.d/blacklist-floppy.conf
그런 다음 initramfs도 로드하지 않도록 FILES 변수 /etc/modprobe.d/blacklist-floppy.conf
에 추가합니다 ./etc/mkinitcpio.conf
mkinitcpio -p linux
따라서 다음에 재부팅하면 안정적인 구성이 표시되지 않고 중단됩니다.
답변2
다음 명령을 사용하면 문제가 확실히 해결됩니다.
# sudo rmmod floppy
# echo "blacklist floppy" | sudo tee /etc/modprobe.d/blacklist-floppy.conf
# update-initramfs -u -k all
재시작...
답변3
나는 오랫동안 이것저것 만지작거리고 장난을 쳐왔습니다. 짧고 긴 솔루션.
이것은 짧은 이야기입니다
먼저 당신의 모습을 보세요시스템 테이블파일에는 문제가 없습니다. 특히 귀하의 파일에는 문제가 없습니다.교환문서.
실행하는 것보다:
sudo update-initramfs -u
당신의 문제는 끝났을 것입니다.
긴 버전
다른 사람이 내가 눈치채지 못한 매우 긴 버전을 작성했습니다. (모두들 미안해요!)
노력하다:
스왑 파티션을
blkid
식별 하고 다른 모든 파티션에 올바른 파티션이 있는지 확인하는 데 사용됩니다 . 검색하는 데에도 사용할 수 있습니다 .UUID
UUID
/etc/fstab
lsblk -f
UUID
이 오류의 경우 특히 스왑에 올바른
UUID
' 를 입력하세요./etc/fstab
올바른
UUID
스왑을 넣으십시오/etc/initramfs-tools/conf.d/resume
.달리기
sudo update-initramfs -u
재시작. 스왑 파일이 변경되었기 때문에 Stretch에서 세 가지 모두 실행 시 이 오류가 수정되었습니다.
설명의 긴 버전
문제는 내 교환이 암호화되었기 때문입니다. 따라서 local-premount
initramfs의 스크립트는 시간이 초과될 때까지 사용할 수 없는 스왑 장치를 기다립니다. 관련 메시지는 장치 일시중단/재개를 보류하면서 폐기됩니다.
이 기능을 비활성화하기 위해(암호화된 스왑으로는 스왑 복구가 불가능하고 어쨌든 최대 절전 모드를 사용하지 않기 때문에) 다음 파일을 수정했습니다 /etc/initramfs-tools/conf.d/resume
.
이 파일에는 다음 줄이 포함됩니다.
RESUME=none
(여기서 UUID 대신)은 복구를 기다리는 장치를 비활성화합니다.
sudo update-initramfs -u
변경 사항을 적용하려면 실행하세요 .이제 시스템이 정상적으로 시작될 수 있습니다.
버트
답변4
이 시도: http://forums.debian.net/viewtopic.php?t=133253
내 경우에는 분명히 플로피 초기화 오류가 아니고 새 파티션 UUID(예: 스왑 파티션의 새 UUID)가 아닌 오류를 해결했습니다.
참고: /boot/grub/grub.cfg를 "root=UUID="에서 "root=/dev/sd??"로 변경할 필요가 없습니다.