ฉันกำลังฉีกผมออกจากปัญหานี้
ฉันต้องการเพิ่มช่อง hotswap ให้กับโฮมเซิร์ฟเวอร์ของฉัน เพื่อเพิ่มและลบ HDD ได้อย่างง่ายดาย เช่น เพื่อหมุนเวียนข้อมูลสำรองนอกสถานที่ได้อย่างง่ายดาย เมนบอร์ดที่เป็นปัญหาคือเมนบอร์ด Asrock J4105-ITX ที่มีพอร์ต SATA สี่พอร์ตซึ่งแบ่งระหว่าง ASM1062 และคอนโทรลเลอร์ SATA ของโปรเซสเซอร์ Intel ทั้งทำงานได้ดีและใช้ อาซี
โมดูลเคอร์เนล มีตัวเลือก hot-swap ใน BIOS แต่ดูเหมือนจะไม่มีผล
หากไดรฟ์ถูกตัดการเชื่อมต่อ (ไม่ว่าจะผ่าน เสียงสะท้อน 1 > /sys/block/sdX/device/delete
หรือโดยการถอดไดรฟ์อย่างหยาบคาย) จะไม่มีการจดจำอุปกรณ์ใหม่หลังจากเชื่อมต่อใหม่ ฉันได้ลองบังคับให้สแกนซ้ำ (เสียงสะท้อน "- - -" > /sys/class/scsi_host/host<n>/scan
) แต่ไม่มีประโยชน์ พอร์ต SATA ไม่สามารถใช้งานได้อีกต่อไปจนกว่าจะรีบูตครั้งถัดไป ฉันยังลองใช้คำสั่งที่รุนแรงกว่านี้โดยไม่มีโชค:
เสียงสะท้อน 1 > /sys/class/scsi_device/2:0:0:0/device/reset
เสียงสะท้อน 1 > /sys/devices/pci0000:00/0000:00:1f.2/rescan
เสียงสะท้อน 1 > /sys/devices/pci0000:00/0000:00:1f.2/reset
(เอามาจาก ฉันจะทำให้ Linux รู้จักไดรฟ์ SATA /dev/sda ใหม่ที่ฉันเปลี่ยนโดยไม่ต้องรีบูตได้อย่างไร)
"เอาล่ะ อาจเป็นเพราะชิปเซ็ตไม่รองรับ hot swap หรือ BIOS มีปัญหา"
ดังนั้นฉันจึงสั่งซื้อ PCIe SATA Controller สองตัว (อันหนึ่งใช้ ASM1064 อีกอันใช้ Marvell 88SE9215) ทั้งสองแสดงปัญหาเดียวกัน แม้ว่าผู้ซื้อรายอื่นระบุว่า hot-swap ใช้งานได้ ดังนั้นฉันเดาว่าปัญหาน่าจะเชื่อมโยงกับซอฟต์แวร์ (การติดตั้งของฉัน? ฉันใช้ Arch OS ซึ่งได้รับการปรับปรุงตามหน้าที่)
หวังว่าข้อมูลที่เป็นประโยชน์บางอย่าง:
$ uname -a
ชื่อเซิร์ฟเวอร์ Linux 5.14.14-arch1-1 #1 SMP PREEMPT วันพุธที่ 20 ตุลาคม 2021 21:35:18 +0000 x86_64 GNU/Linux
$dmesg | เกรป อาซี
[ 0.447450] ahci 0000:00:12.0: รุ่น 3.0
[ 0.447842] ahci 0000:00:12.0: ชุดแฟล็ก SSS ปิดใช้งานการสแกนบัสขนาน
[ 0.457970] ahci 0000:00:12.0: AHCI 0001.0301 32 ช่อง 2 พอร์ต 6 Gbps 0x3 โหมด SATA impl
[ 0.457981] ahci 0000:00:12.0: ธง: 64 บิต ncq sntf stag pm clo only pmp pio ส่วนสลัม sxs deso sadm sds apst
[ 0.458750] scsi host0: ahci
[ 0.459204] scsi host1: ahci
[ 0.469788] ahci 0000:01:00.0: AHCI 0001.0000 32 ช่อง 4 พอร์ต 6 Gbps 0xf impl โหมด SATA
[ 0.469801] ahci 0000:01:00.0: ธง: 64 บิต ncq sntf นำเฉพาะ pmp fbs pio ส่วนสลัม sxs
[ 0.470767] scsi host2: ahci
[ 0.471203] scsi host3: ahci
[ 0.471562] scsi host4: ahci
[ 0.471904] scsi host5: ahci
[ 0.472341] ahci 0000:04:00.0: ชุดแฟล็ก SSS ปิดใช้งานการสแกนบัสขนาน
[ 0.472376] ahci 0000:04:00.0: AHCI 0001.0200 32 ช่อง 2 พอร์ต 6 Gbps 0x3 โหมด SATA impl
[ 0.472382] ahci 0000:04:00.0: ธง: 64 บิต ncq sntf กวางนำ clo pmp pio ส่วนสลัม ccc
[ 0.472803] scsi host6: ahci
[ 0.473011] scsi host7: ahci
$lspci -v
[...]
01:00.0 คอนโทรลเลอร์ SATA: Marvell Technology Group Ltd. 88SE9215 PCIe 2.0 x1 คอนโทรลเลอร์ SATA 6 Gb/s 4 พอร์ต (rev 11) (prog-if 01 [AHCI 1.0])
ระบบย่อย: Marvell Technology Group Ltd. 88SE9215 PCIe 2.0 x1 4-port SATA 6 Gb/s Controller
ค่าสถานะ: บัสมาสเตอร์, การพัฒนาที่รวดเร็ว, เวลาแฝง 0, IRQ 127
พอร์ต I/O ที่ e050 [ขนาด=8]
พอร์ต I/O ที่ e040 [size=4]
พอร์ต I/O ที่ e030 [size=8]
พอร์ต I/O ที่ e020 [size=4]
พอร์ต I/O ที่ e000 [size=32]
หน่วยความจำที่ a1340000 (32 บิต ไม่สามารถดึงล่วงหน้าได้) [size=2K]
ROM ส่วนขยายที่ a1300000 [ปิดใช้งาน] [size=256K]
ความสามารถ: [40] การจัดการพลังงานเวอร์ชัน 3
ความสามารถ: [50] MSI: Enable+ Count=1/1 Maskable- 64bit-
ความสามารถ: [70] Express Legacy Endpoint, MSI 00
ความสามารถ: [e0] SATA HBA v0.0
ความสามารถ: [100] การรายงานข้อผิดพลาดขั้นสูง
ไดรเวอร์เคอร์เนลที่ใช้งานอยู่: ahci
[...]