ฉันจะเริ่มพัดลมด้วยตนเองใน Linux ได้อย่างไร


11

แฟนของฉันไม่ทำงานใน Linux ฉันกังวลว่าแล็ปท็อปอาจปิดหากอุณหภูมิสูงขึ้นอย่างมาก

ฉันรันคำสั่งต่อไปนี้:

dmesg | grep -I fan

สิ่งนี้ทำให้ฉัน:

ACPI: Fan [FAN0] (off)
ACPI: Fan [FAN1] (off)

/proc/acpi/fanไม่มีไดเรกทอรี ฉันจะทำอย่างไรเพื่อให้แฟนทำงาน


ฉันคิดว่าสิ่งนี้จะขึ้นอยู่กับเคอร์เนลและฮาร์ดแวร์ของคุณ มีโมดูลเคอร์เนลที่เกี่ยวข้องกับ ACPI ที่คุณต้องการแทรกเพื่อติดตั้งหรือไม่? ตัวอย่างเช่นฉันมีthinkpad_acpiโมดูลที่ทำให้สิ่งเหล่านี้ทั้งหมดปรากฏใน / proc ด้วย ฉันไม่คิดว่าแฟนของคุณจะถูกปิด (เว้นแต่จะมีปัญหาฮาร์ดแวร์)
Noufal Ibrahim

นี่เป็นเฉพาะใน Linux หรือไม่ คุณได้ดูที่ประวัติของคุณพูดเกี่ยวกับเรื่องนี้หรือไม่?
Coren

คำตอบ:


5

โดยปกติแล้วพัดลมจะไม่ได้รับการควบคุมโดย CPU และระบบปฏิบัติการ แต่โดยตัวควบคุมการจัดการระบบ วิธีนี้ใช้ได้แม้ว่าระบบปฏิบัติการจะล้มเหลว

น่าเสียดายที่นี่หมายความว่าข้อผิดพลาด "การไม่ใช้งานพัดลม" เป็นปัญหาของฮาร์ดแวร์ อ่าน: พัดลม (ชุดประกอบ) จำเป็นต้องเปลี่ยน

ข้อยกเว้นเพียงอย่างเดียวคือการใช้งาน ACPI ที่เสียมากซึ่งสามารถปิดพัดลมได้ ในกรณีนี้พัดลมจะทำงานใน BIOS ฉันไม่เคยได้ยินการกำหนดค่าดังกล่าวมาก่อน


2
ฉันไม่คิดว่าเป็นอย่างนั้น ตัวอย่างเช่นใน macbook pro ของฉันการควบคุมพัดลมหมุนได้มากขึ้นแม้หลังจากการบูตเย็นเมื่อเทียบกับ windows และหลังจากนั้นก็ช้าลง หลังจากอัปเดตเป็น linux แล้วดูเหมือนว่าจะทำงานใกล้ชิดกับวิธีที่ windows ทำอยู่ในขณะนี้ ความเร็วของพัดลมแน่นอนเป็นซอฟต์แวร์ขับเคลื่อน
Matt H

@MattH บ่อยครั้งที่ผู้จำหน่ายเมนบอร์ดมีซอฟต์แวร์ Windows ที่คุณสามารถติดตั้งเพื่อควบคุมแฟน ๆ แต่โดยค่าเริ่มต้นพวกเขาจะถูกควบคุมโดยฮาร์ดแวร์
psusi

4

แฟน ๆควรได้รับการจัดการโดย ACPI ซึ่งช่วยให้เคอร์เนลร่วมมือกับไบออสเพื่อตรวจสอบอุณหภูมิและปรับความเร็วพัดลมโดยอัตโนมัติโดยใช้ไบออสที่กำหนดไว้ น่าเสียดายที่ฉันยังไม่เห็นผู้ขายไบออสตัวใดตัวหนึ่งปฏิบัติตามมาตรฐานจริง คุณอาจดูใน / sys / class / thermal และดูว่ามีแฟน ๆ ที่ปรากฏภายใต้ที่นั่นและถ้าพวกเขาสามารถเปลี่ยนการตั้งค่าของพวกเขา โดยทั่วไปแล้วตาราง bios ACPI นั้นไม่มีส่วนต่อประสานกับพัดลม

ตัวควบคุมฮาร์ดแวร์เหล่านี้หลายตัวสามารถตรวจจับได้โดยแพ็คเกจ lm-sensors คุณเรียกใช้sensors-detectและมันจะสอบสวนหาตัวควบคุมที่รู้จักและสามารถกำหนดค่าไดรเวอร์ที่ถูกต้องที่จะโหลดเพื่อจัดการกับมัน ซึ่งมักส่งผลsensorsให้สามารถรายงานอุณหภูมิและแรงดันไฟฟ้าที่อ่านได้หลากหลายและfancontrolสคริปต์ (บรรจุแยกต่างหากใน Debian / Ubuntu) สามารถกำหนดค่าเพื่อจัดการความเร็วพัดลมในการตอบสนองต่ออุณหภูมิที่อ่าน

โมดูลเหล่านี้จำนวนมากต้องการให้คุณเพิ่มลงacpi_enforce_resources=laxในบรรทัดคำสั่งเคอร์เนลเพื่อโหลด


2

การสะท้อนด้วยตนเอง 1/0 ไปยังไฟล์ cur_state ของ cooling_device จะเป็นการเปิด / ปิด:

for cdev in /sys/class/thermal/cooling_device*; do
   [ $(cat $cdev/type) == "Fan" ] && { echo 1 | sudo tee $cdev/cur_state; }
done

1

เป็นไปได้ที่จะควบคุมพัดลมโดยใช้ตัวควบคุมแบบฝัง อุณหภูมิซีพียูและการลงทะเบียนตัวควบคุมพัดลมบางตัวอาจสัมผัสกับระบบนิเวศ ใน Linux คุณสามารถเข้าถึงได้ง่ายและทิ้งการลงทะเบียนเหล่านั้น แล็ปท็อปของฉันใช้งานไม่ได้และ ACPI นั้นถูกทำลายโดยการออกแบบและพัดลมส่วนใหญ่ควบคุมโดย BIOS และเปิดตลอดไป ใน Windows คุณสามารถดาวน์โหลดเครื่องมือทุกอย่างของ RW เพื่อตรวจสอบ ec ด้วยเครื่องมือทุกอย่างของ RW คุณสามารถลองปรับเปลี่ยนค่าบางอย่างได้ สิ่งนี้ใช้ได้กับกล่องของฉันและฉันสามารถควบคุมพัดลมอัตโนมัติและโหมดแมนนวลและความเร็วได้


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.