Debian

cat an file 程序無法訪問文件但 vi 工作正常 (Debian)

  • April 24, 2020

通過 ctrl+alt+del 進行錯誤重置後,我的系統出現了一些問題。從那時起,報告了與 ACPI 和 ata6 相關的錯誤。為了解決這個問題(以一種野蠻的方式:我是 n00b),我開始測試目錄 /sys/class/ata_port/ata6/ 中的競爭。我的意思是測試是尋找有用的資訊或其他東西這可以激勵我學習或在論壇中提出更清晰的問題。不管怎樣,除了這個問題,還有一件奇怪的事情發生了:

當我將cat文件與文件 /sys/class/ata_port/ata6/autosuspend_delay_ms 一起使用時,我得到**“I/O erro”。但是…使用vi我讀取了“1”**文件的內容。

主要問題:為什麼以及如何發生這種情況?(這真的把我嚇壞了!vi更像是“使用者空間”,而cat文件更像是“核心空間”)

**附帶問題:**如果有人知道如何解決這個系統問題,我會很高興!現在,系統僅使用啟動參數“acpi_enforce_responses=lax”啟動(祝你好運!有時甚至這還不足以啟動並且監視器失去通信(NULL 輸出))”

細節:

系統: Linux debian 4.9.0-11-amd64 #1 SMP Debian 4.9.189-3+deb9u2 (2019-11-11) x86_64 GNU/Linux

錯誤系統日誌:acpi PNP0A03:00:_OSC 失敗(AE_NOT_FOUND);禁用 ASPM

輸出:dmesg | grep ‘失敗 \ | erro’

$$ 0.234571 $$acpi PNP0A03:00:_OSC 失敗(AE_NOT_FOUND);禁用 ASPM $$ 2.239147 $$ata6.00:辨識失敗(I/O 錯誤,err_mask=0x100) $$ 7.971272 $$ata6.00:辨識失敗(I/O 錯誤,err_mask=0x100) $$ 13.603109 $$ata6.00:辨識失敗(I/O 錯誤,err_mask=0x100) $$ 20.228845 $$EXT4-fs (sda1):重新安裝。選項:errors=remount-ro $$ 23.170590 $$r8169 0000:05:00.0:韌體:未能載入 rtl_nic/rtl8168e-1.fw (-2) $$ 23.174073 $$r8169 0000:05:00.0:rtl_nic/rtl8168e-1.fw 的直接韌體載入失敗並出現錯誤 -2 輸出:dmesg | grep -i ‘ata’

$$ 0.000000 $$BIOS-e820:$$ mem 0x00000000cffb0000-0x00000000cffbdfff $$ACPI 數據 $$ 0.000000 $$已分配 NODE_DATA(0)$$ mem 0x22fff9000-0x22fffdfff $$ $$ 0.000000 $$記憶體:8089844K/8387896K 可用(6288K 核心程式碼,1162K rwdata,2880K rodata,1424K init,656K bss,298052K 保留,0K cma-保留) $$ 0.235157 $$pci 0000:00:11.0:將 SATA 設置為 AHCI 模式 $$ 1.692680 $$防寫核心只讀數據:12288k $$ 1.744345 $$已載入 libata 3.00 版。 $$ 1.746053 $$scsi 主機 0:pata_atiixp $$ 1.747319 $$scsi 主機 1:pata_atiixp $$ 1.747387 $$ata1:PATA 最大 UDMA / 100 cmd 0x1f0 ctl 0x3f6 bmdma 0xff00 比賽 14 $$ 1.747388 $$ata2: PATA 最大 UDMA / 100 cmd 0x170 ctl 0x376 bmdma 0xff08 irq 15 $$ 1.748026 $$ahci 0000:00:11.0:AHCI 0001.0200 32 個插槽 4 個埠 6 Gbps 0xf impl SATA 模式 $$ 1.749170 $$ata3: SATA 最大 UDMA / 133 abar m1024 @ 0xfe7ffc00 埠 0xfe7ffd00 irq 25 $$ 1.749172 $$ata4: SATA 最大 UDMA / 133 abar m1024 @ 0xfe7ffc00 埠 0xfe7ffd80 irq 25 $$ 1.749173 $$ata5:SATA 最大 UDMA / 133 abar m1024 @ 0xfe7ffc00 埠 0xfe7ffe00 irq 25 $$ 1.749175 $$ata6:SATA 最大 UDMA / 133 abar m1024 @ 0xfe7ffc00 埠 0xfe7ffe80 比賽 25 $$ 1.928821 $$ata1.01:ATA-9:WDC WDS240G2G0A-00JH30,UF450000,最大 UDMA / 133 $$ 1.928823 $$ata1.01:468877312 個扇區,多 1:LBA48 NCQ(深度 0/32) $$ 1.929427 $$ata1.01:由於 40 線電纜,僅限於 UDMA/33 $$ 1.952293 $$ata1.01:為 UDMA/33 配置 $$ 1.952499 $$scsi 0:0:1:0:直接訪問 ATA WDC WDS240G2G0A-0000 PQ:0 ANSI:5 $$ 2.076991 $$ata5:SATA 連結斷開(SStatus 0 SControl 300) $$ 2.077014 $$ata4: SATA 連結中斷 (SStatus 0 SControl 300) $$ 2.237428 $$ata6: SATA 連接 1.5 Gbps (SStatus 113 SControl 300) $$ 2.237447 $$ata3: SATA 連接 3.0 Gbps (SStatus 123 SControl 300) $$ 2.238304 $$ata3.00:ATA-7:ST3160815AS,3.CHH,最大 UDMA/100 $$ 2.238306 $$ata3.00:312581808 扇區,多 16:LBA48 NCQ(深度 31/32) $$ 2.239147 $$ata6.00:辨識失敗(I/O 錯誤,err_mask=0x100) $$ 7.493471 $$ata3.00:為 UDMA/100 配置 $$ 7.493630 $$scsi 2:0:0:0:直接訪問 ATA ST3160815AS H PQ:0 ANSI:5 $$ 7.969453 $$ata6: SATA 連接 1.5 Gbps (SStatus 113 SControl 300) $$ 7.971272 $$ata6.00:辨識失敗(I/O 錯誤,err_mask=0x100) $$ 7.971275 $$ata6:將 SATA 連結速度限制為 1.5 Gbps $$ 13.601480 $$ata6: SATA 連接 1.5 Gbps (SStatus 113 SControl 310) $$ 13.603109 $$ata6.00:辨識失敗(I/O 錯誤,err_mask=0x100) $$ 19.233505 $$ata6: SATA 連接 1.5 Gbps (SStatus 113 SControl 310) $$ 19.884310 $$EXT4-fs (sda1):以有序數據模式掛載的文件系統。選項:(空) $$ 20.449088 $$acpi_cpufreq:覆蓋 BIOS 提供的 _PSD 數據

不在此列表中的磁碟是有缺陷的磁碟。

在您的輸出中,我看到了這些磁碟

[ 1.928821] ata1.01: ATA-9: WDC WDS240G2G0A-00JH30, UF450000, max UDMA/133
[ 2.238304] ata3.00: ATA-7: ST3160815AS, 3.CHH, max UDMA/100

西部數據 Green 240Gb 和希捷 Barracuda 160Gb。兩個硬碟。可能是問題驅動器是 DVD 或 CDROM?那將是個好消息:沒有數據失去。如果我是你,我會簡單地移除 sata 或 pata 電纜並將其放回原處,你永遠不會知道這只是一個糟糕的連接。

引用自:https://serverfault.com/questions/1013969