मुझे काम पर प्रशंसक नियंत्रण कैसे मिलता है?


34

मुझे पता है कि फैनकंट्रोल नाम की कोई चीज है, जो आपको अपने सिस्टम के वेंटिलेशन की गति को नियंत्रित करने में सक्षम बनाती है। मैं अपने प्रशंसकों को थोड़ी तेज़ी से घूमने देना चाहूंगा क्योंकि मेरा लैपटॉप बहुत ही आसानी से गर्म हो रहा है। मेरे द्वारा देखे गए सभी ट्यूटोरियल और सामान उबंटू के पुराने संस्करणों के लिए हैं और अब काम नहीं कर रहे हैं।

क्या कोई मुझे समझा सकता है या मुझे एक अच्छा लिंक दे सकता है कि मैं इसे उबंटू पर कैसे काम कर सकता हूं? एक ही प्रभाव के साथ कुछ अलग भी ठीक है।


हार्डवेयर के बारे में अधिक जानकारी प्राप्त करने में मदद मिलेगी, जैसे लैपटॉप का ब्रांड, मॉडल का नाम / नंबर और बायोस प्रकार / संस्करण।
filescraps

@filescraps डेल लैटीट्यूड D620: paste.ubuntu.com/699801
रोबिनज

5
@RobinJ - क्या आपने ओवरहेटिंग मुद्दों के लिए सामान्य जांच की है - धूल / रुकावटों के लिए जांच करें - अपने प्रोसेसर हीट सिंक को भी देखें। अपने बायोस को नवीनतम उपलब्ध के लिए अपडेट करें। क्या आपने अपने ग्रब में "acpi_osi = Linux" जोड़ने की कोशिश की है? क्या आप किसी अतिरिक्त बूट विकल्प का उपयोग कर रहे हैं? मूल रूप से मेरा कहना है - ओवरहेटिंग मुद्दे धूल / एसीपी प्रकार के सामान हैं - आपको कभी भी अपने प्रशंसक को मैन्युअल रूप से नियंत्रित करने की आवश्यकता नहीं होनी चाहिए।
जीवाश्म

खैर, फैन केवल तभी तेज चलना शुरू करता है जब यह लगभग 65 ° C पर होता है, और ऐसा लगता है कि यह बहुत देर हो चुकी है, क्योंकि एक बार जब यह उठना शुरू होता है तो यह 75 ° C के नीचे भी जल्दी नहीं जाता है। यह एक लैपटॉप है और मैं इसे एपार्ट करने के लिए हार्डवेयर के साथ पर्याप्त आश्वस्त नहीं हूं। क्या करता acpi_osi=Linuxहै? कोई अतिरिक्त बूट विकल्प नहीं है, बस डिफ़ॉल्ट GRUB है।
रॉबिनजे

1
@RobinJ - वेबसाइट की शैली को मत भूलना प्रासंगिक जानकारी को अपने प्रश्न में वापस जोड़ने के बजाय इसे टिप्पणियों में दफनाने के लिए है।
जीवाश्म

जवाबों:


8

i8kutils मेरे डेल वोस्त्रो 3350 लैपटॉप के प्रशंसक को नियंत्रित करने के लिए काम करता है।

# डेल लैपटॉप के लिए ही:
$ sudo apt-get install i8kutils 
$ i8kfan 1 2 # कम गति (1) पर बाएं-पंखे को सेट करें; उच्च गति पर सही एक (2)।

केवल ऐसा लगता है कि BIOS में कुछ हमेशा कुछ सेकंड के बाद हमेशा अपने पिछले मूल्य पर वापस सेट करता है: पी वैसे भी, भले ही थोड़ा देर हो चुकी है, यह अभी भी सबसे उपयोगी उत्तर है।
रॉबिनज

यह मेरे एलियनवेयर m14x पर काम करता है। लेकिन, यह अभी भी कूलर को इसकी अधिकतम गति पर सेट नहीं कर सकता है और यह अभी भी लैपटॉप को उच्च गति पर चलाने का कारण बन रहा है। यह विंडोज पर था की तुलना में काफी गर्म है ...
iLemming

BIOS इसे वापस सेट करता है इसलिए मैंने हर 2 मिनट में क्रोनजॉब रन जोड़े: crontab -eऔर */2 * * * * /usr/bin/i8kfan 1 1। अब के लिए पूरी तरह से काम करता है
goksel

14

आप इस उत्तर में दी गई विधि द्वारा अपने i8kctl फैन कमांड को ओवरराइड करने के साथ अपनी समस्या को हल करने में सक्षम होंगे। पूर्णता के लिए, मैं डेल लैपटॉप पर प्रशंसक नियंत्रण पर कुछ सामान्य नोट्स शामिल करूंगा, और इसके लिए पूर्ण निर्देश i8kutils

शायद क्या काम नहीं करेगा

लैपटॉप पर पंखे को नियंत्रित करने के दो सामान्य और सीधे-सीधे साधन ACPI के माध्यम से और PWM पिन के माध्यम से हैं, हालांकि, दुर्भाग्य से:

  • डेल लैपटॉप में एसीपीआई फैन कंट्रोल क्षमता (* 1) का अभाव है

    • परिणाम के रूप में, एसीपीआई बूट मापदंडों और इस तरह की कोशिश विफल हो जाएगी
  • डेल अक्षांश लैपटॉप, जहाँ तक मुझे पता है, pwm नियंत्रणीय प्रशंसकों की कमी है (* 2)

    • परिणाम के रूप में, fancontrol/ pwmconfigप्रोग्राम काम नहीं करेगा

I8kutils का उपयोग करें

हालाँकि, एक पैकेज है जिसे एसएमएम BIOS केi8kutils माध्यम से डेल इंस्पिरॉन लैपटॉप पर प्रशंसक को नियंत्रित करने के लिए लिखा गया है । कई उपयोगकर्ता अपने डेल लैडिट लैपटॉप पर सफलता की रिपोर्ट करते हैं (मैं उनमें से एक हूं, डेल लैटीट्यूड E7440 पर) - हालांकि, BIOS प्रशंसक नियंत्रण में हस्तक्षेप करने से छुटकारा पाने के लिए अक्सर एक चाल की आवश्यकता होती है। आप पिछली एक टिप्पणी के अनुसार इससे पीड़ित हैं।

स्थापित करें i8kutils:

$ sudo apt-get install i8kutils

कोशिश करो:

$ i8kfan 2 2     # set to max speed
$ i8kfan 0 0     # set to 0 speed

... और सुनने के लिए कि क्या यह काम करता है।

BIOS प्रशंसक नियंत्रण अक्षम करें

यदि यह काम करता है, लेकिन कुछ और बसने वाली गति पर वापस लड़ रहा है (डेल अक्षांश लैपटॉप पर कई उपयोगकर्ताओं द्वारा रिपोर्ट किया गया है), यह अनुसूचित एसएमएम सत्रों के कारण प्रशंसक गति को वापस सेट करना है। सौभाग्य से SMM रजिस्टरों को लिखकर BIOS फैन नियंत्रण को निष्क्रिय करने का एक तरीका है ।

चेतावनी: smm.c के शीर्ष में चेतावनी देखें। यह विधि एसएमएम रजिस्टरों को लिखेगी। हालाँकि, मैंने देखा है कि कोई उपयोगकर्ता रिपोर्ट इस परेशानी का कारण नहीं है। इसके अलावा, इस पर प्रयास करने वाली सभी रिपोर्टों ने BIOS प्रशंसक नियंत्रण को अक्षम करने में सफलता का संकेत दिया है।

i8kutilsएक कार्यक्रम के स्रोत को शामिल करता है smmलेकिन i8kutilsपैकेज में संकलित बाइनरी शामिल नहीं है। हम क्या करेंगे स्रोत कोड को डाउनलोड करने के i8kutilsलिए, प्रोग्राम को संकलित करें smm, और इसे एसएमएम रजिस्टरों को लिखकर BIOS प्रशंसक नियंत्रण को अक्षम करने के लिए एक उपयुक्त तर्क के साथ चलाएं।

भवन के लिए आवश्यक पैकेज डाउनलोड करें:

$ sudo apt-get build-dep i8kutils

i8kutilsस्रोत कोड डाउनलोड करें , निर्देशिका निकालें और दर्ज करें (i8k संस्करण के आधार पर सटीक नाम):

$ apt-get source i8kutils
$ tar xvf i8kutils_1.33.tar.gz
$ cd i8kutils-1.33/

संकलन smm:

  • यदि 32-बिट सिस्टम पर:

    $ make
    

    (ऊपर निष्पादित होगा gcc -g -O2 -Wall -I. -o smm smm.c)

  • यदि 64-बिट सिस्टम पर:

    $ gcc -g -O2 -Wall -I. -o smm -m32 smm.c
    

SMM प्रशंसक नियंत्रण को अक्षम करने के लिए smmतर्क के साथ चलाएँ 30a3:

$ sudo ./smm 30a3

अब, BIOS प्रशंसक नियंत्रण अक्षम होना चाहिए। के साथ गति सेट करके प्रयास करें i8kctl, पंखे के लिए सुनें और सुनिश्चित करें कि गति बनी रहती है।

नोट: यह एक सेटिंग है जो रिबूट और पावर-ऑफ को जारी रखेगा। BIOS प्रशंसक नियंत्रण को फिर से सक्षम किया जा सकता है $ sudo ./smm 31a3


* 1: मैंने इस पर एक आधिकारिक स्रोत देखा है, यह अभी नहीं मिल सकता है। यदि आप यह सत्यापित करना चाहते हैं कि आपके हार्डवेयर में इसकी कमी है, तो यहां दिए गए निर्देशों का पालन करें: https://wiki.ubuntu.com/DebuggingACPI

* 2: इस, चलाने pwmconfig पुष्टि करने के लिए: sudo apt-get install fancontrol, sudo pwm-configबताएगा कि यदि एक PWM सक्षम प्रशंसक मौजूद है या नहीं


मैं वास्तव में acpi_osi='!Windows 2012'अपने डेल इंस्पिरॉन 15R 5520 के प्रशंसकों को नियंत्रण में लाने के लिए एसीपीआई पैरामीटर का उपयोग करता था , क्योंकि वे हमेशा तापमान की परवाह किए बिना अधिकतम गति से घूमते थे।
user311982

यह सही उत्तर होना चाहिए। यह अच्छी तरह से सूचित और बहुत प्रासंगिक है!
ppr

बहुत बढ़िया जवाब। यहां
मैलाट

1
बहुत बहुत धन्यवाद, यह मेरे लिए काम करने के बाद और कोई फायदा नहीं हुआ। जब मैं एस एम एम मैं sys / cdefs.h याद आ रही थी संकलन करने की कोशिश की लेकिन sudo apt-get install g++-multilib(के रूप में में संदर्भित में लाया askubuntu.com/questions/470796/... )
फिलिप डेनियल

मुझे थोड़ी देर हो सकती है, लेकिन क्या इसे अधिकतम गति पर रखने का कोई नकारात्मक पहलू है?
Zerquix18

14

पैकेज lm-सेंसर एलएम-सेंसर स्थापित करें हो सकता है कि आप क्या देख रहे हैं।

और जैसा कि आपने fancontrol का सुझाव दिया है Fancontrol स्थापित करें

सुनिश्चित करें कि सभी प्रशंसक जिन्हें आप सॉफ़्टवेयर के माध्यम से नियंत्रित करने का प्रयास कर रहे हैं, उनमें 4 पिन कनेक्टर हैं।

"एक पीडब्लूएम सक्षम प्रशंसक 4-पिन कनेक्टर (पिनआउट: ग्राउंड, + 12 वी, अर्थ, कंट्रोल) से जुड़ा हुआ है।" स्रोत

जब मैं दौड़ता हूं pwmconfigजो मुझे मिलने वाले फैनकंट्रोल का एक हिस्सा है

/usr/sbin/pwmconfig: There are no pwm-capable sensor modules installed यदि आपके पास संगत हार्डवेयर है तो यह आपका मार्गदर्शन करेगा।

यहाँ कुछ स्क्रिप्ट्स हैं जो कि जेनरेट की गई कॉन्फिगर फाइल के साथ संयोजन में उपयोग होती हैं। मुझे लगता है कि आप यहाँ एक उच्च मूल्य निर्धारित कर सकते हैं।

label fan1 "Side Fan"
set fan1_min 1000
label fan2 "PSU Fan"
set fan2_min 1000
label fan5 "CPU Fan"
set fan5_min 1000

लेकिन जैसा कि मैंने कहा, मैं खुद इसका परीक्षण नहीं कर सकता, क्योंकि मेरा हार्डवेयर इसका समर्थन नहीं करता है, मैं अपने प्रशंसकों को बायोस से नियंत्रित कर सकता हूं, लेकिन यह एक ग्रेड 3 है। मैं इसे अपने प्रशंसक के धीमे और चुप रहने के लिए उपयोग करता हूं।


1
/ usr / sbin / pwmconfig: कोई pwm- सक्षम सेंसर मॉड्यूल नहीं हैं जो किसी भी अन्य तरीके से स्थापित हो?
रॉबिनज

आपको आमतौर पर sensors-detectपहले चलाने की आवश्यकता होती है , और तापमान और पंखे की गति को पढ़ने के लिए एक मॉड्यूल लोड करने के लिए कहा जाता है, और फिर pwmconfig इसे हेरफेर कर सकता है।
psusi

@ रोबिनजे, ऐसा प्रतीत होता है कि आपके पास एक मान्यता प्राप्त / समर्थित चिप नहीं है।
Psusi

मैं आपको इनाम देने जा रहा हूं क्योंकि यह सबसे अधिक जानकारीपूर्ण उत्तर था जो अधिकांश अन्य लोगों की मदद कर सकता था।
रोबिनज

5

ठीक है, यह वह उत्तर नहीं हो सकता है जिसकी आप तलाश कर रहे हैं, लेकिन मेरी ओवरहीटिंग समस्याओं का समाधान किया गया था, जब वेंटिलेशन इनलेट्स पर वैक्यूम क्लीनर डालकर धूल को हटा दिया गया था। यदि आप कम सीपीयू-आवृत्तियों पर ओवरहीटिंग का अनुभव करते हैं, तो यह एक कोशिश के लायक हो सकता है। ध्यान रखें कि शायद छोटे भागों में चूसा जा सकता है। यदि आप भाग्यशाली हैं तो यह विधि आपको ओवरहेटिंग समस्याओं का समाधान कर सकती है।


मैंने ऊपर दिए गए इनाम के लिए बाउंटी को सम्मानित किया क्योंकि यह सबसे अधिक जानकारीपूर्ण था, लेकिन मेरा मुद्दा हार्डवेयर से संबंधित है, इसलिए आपका जवाब समाधान के करीब आया। लेकिन जैसा कि मैं अपने लैपटॉप के हार्डवेयर के साथ गड़बड़ करने के लिए पर्याप्त आश्वस्त नहीं हूं, मैंने इसे दुकान में लाया क्योंकि यह अभी भी गारंटी के तहत था।
रॉबिनजे

मैंने बस यही कोशिश की और यह काम कर गया। धन्यवाद! मेरे प्रशंसक को जोर का दर्द होने लगा था और अधिक गर्म होने के कारण मेरे पास एक या दो शटडाउन थे। उम्मीद है कि यह तय किया गया है। प्रशंसक अब सामान्य सीपीयू उपयोग के साथ चालू और बंद साइकिल चला रहा है जो महान है (हर समय रहने से पहले)।
साइमन

@ साइमन बस सुनिश्चित करें कि वैक्यूम एक विरोधी स्थैतिक वैक्यूम है, सुरक्षित होने के लिए। मैं vents को साफ करने के लिए संपीड़ित हवा की एक कैन का उपयोग करता हूं, जिसे आप एक विकल्प के रूप में भी कर सकते हैं।
उपयोगकर्ता 311982 3

3

मेरे पास डेल लैटीट्यूड ई ४२०० है और निम्नलिखित ने मेरे लिए काम किया क्योंकि BIOS i8kfan सेटिंग को ओवरराइड कर रहा था। इन चरणों का उपयोग करने के बाद मेरे कंप्यूटर का प्रारंभिक तापमान 105F डिग्री और लगभग 10 मिनट था (प्रशंसक सेटिंग = 2) CPU / Core temps 96F डिग्री तक गिर गया। यह प्रक्रिया पहले से ही किसी ने पोस्ट की थी:

चरण 1. i8ktutils डाउनलोड और स्थापित करें:

# sudo apt-get install i8kutils

चरण 2. कस्टम प्रशंसक सेटिंग्स को बाधित करने से रखने के लिए BIOS को ओवरराइड करें। स्रोत कोड डाउनलोड करें और ऐसा करने के लिए एक प्रोग्राम (SMM) संकलित करें:

# sudo apt-get build-dep i8kutils

फिर:

# apt-get source i8kutils

चरण 3. स्रोत कोड और सीडी को निर्देशिका में निकालें:

# tar xvf i8kutils_1.33.tar.gz

फिर:

# cd i8kutils-1.33/

चरण 4. संकलन एसएमएम

For 32-bit systems:

# make SMM

(Output: # gcc -g -O2 -Wall -I. -o smm smm.c.)

For 64-bit systems

# make SMM:

(Output: # gcc -g -O2 -Wall -I. -o smm -m32 smm.c)

चरण 5. मापदंडों के साथ एसएमएम निष्पादित करें:

# sudo ./smm 30a3

चरण 6. प्रशंसक गति सेट करें:

# i8kfan 2 2 (Listen as this will set fans to maximum speed)

# i8kfan 1 1 (This will set fans to slow speed)

अब BIOS प्रशंसक नियंत्रण को प्रशंसक सेटिंग्स को ओवरराइड नहीं करना चाहिए। यह सेटिंग सिस्टम के रिबूट होने पर भी रहेगी। किसी कारण से BIOS को नियंत्रण वापस देने के लिए निम्नलिखित प्रक्रिया करें:

# sudo ./smm 31a3.

Lm_sensors का उपयोग करके टेम्प को जांचने का एक तरीका भी है:

http://www.cyberciti.biz/faq/howto-linux-get-sensors-information/

1
Ubuntu 14.04 पर i8kutils-1.41 के सबसे हाल के संस्करण के लिए यह कोशिश की और "smr.c: 27: /usr/incete/features.h: से /usr/include/stdio.h:27 फ़ाइल का उपयोग करके शामिल किया।" 374: 25: घातक त्रुटि: sys / cdefs.h: ऐसी कोई फ़ाइल या निर्देशिका नहीं "हालांकि यह इस समस्या को हल करता है जो askubuntu.com/questions/470796/…
k-den-
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.