मैं बूट समय पर मॉड्यूल कैसे लोड करूं?


32

जैसा कि कहा गया है कि मेरा ऑडियो (ध्वनि) आउटपुट काम क्यों नहीं कर रहा है? , साउंड ड्राइवर को इनिशियलाइज़ करने के लिए, आपको चलना होगाsudo modprobe snd_bcm2835 हर बार ध्वनि को आउटपुट करने के लिए ।

बूट करने के लिए मुझे यह कैसे मिलेगा? (यानी लॉग इन करने से पहले और बिना किसी इनपुट के)


1
यह एक और सवाल है जिसे ऑफ-टॉपिक माना जा सकता है। यह U & L के लिए बेहतर हो सकता है ।
Jivings

2
@ लाइविंग: सिर्फ इसलिए कि यह यूनिक्स और लिनक्स पर विषय है, रास्पबेरी पाई के लिए इसे ऑफ-टॉपिक नहीं बनाता है , क्या यह है?
डेर होकस्टापलर

2
@ ऑलिवरसालबर्ग: मुझे लगता है कि इस विशेष प्रश्न में बहुत अधिक ओवरलैप है। इस प्रश्न के बारे में कुछ भी रास्पबेरी पाई के लिए विशिष्ट नहीं है।
जीव

1
Meta.raspberrypi.stackexchange.com/questions/24/… पर निर्णय नहीं लिया जाएगा कि यह प्रश्न यहाँ ठीक है?
ग्राहम दांव

1
@Jivings धन्यवाद, किसी भी भविष्य के आगंतुकों के लिए यह स्पष्ट करना चाहता था क्योंकि टिप्पणियाँ प्रश्न को बंद करने की ओर इशारा कर रही थीं। शायद सभी टिप्पणियों को इसके बजाय हटा दिया जाना चाहिए?
ग्राहम दांव

जवाबों:


24

बूट पर लोडिंग मॉड्यूल स्टार्टअप कमांड चलाने के लिए थोड़ा अलग है।

डेबियन में:

में एक नई लाइन के रूप में मॉड्यूल का नाम जोड़ें /etc/modules

आर्क लिनक्स में:

मॉड्यूल सरणी में मॉड्यूल नाम जोड़ें /etc/rc.conf, लाइन इस तरह दिखनी चाहिए:

modules=(snd_bcm2835)

या नए systemd विन्यास के लिए:

echo "snd_bcm2835" | sudo tee -a /etc/modules-load.d/snd_bcm2835.conf

मैं जोड़ा snd_bcm2835करने के लिए /etc/modulesमेरी Xbian पर फ़ाइल लेकिन बूट समय पर एक पाश बनाया है। OSMC
rubo77

@ rubo77 दिलचस्प! क्या आप इसकी तह तक गए?
जीवों

निश्चित नहीं। शायद यह एक संयोग था। पूरी स्थापना अब तक थोड़ी टूट गई है ...
rubo77

14

बूट पर मोडप्रोब - डेबियन

के बारे में विशिष्ट प्रश्न का उत्तर देने के sudo modprobe snd_bcm2835लिए, मॉड्यूल जोड़ें /etc/modulesऔर रीबूट करें। (आपको ऐसा करने की आवश्यकता होगी root।)

शुरुआती सेवाएं - डेबियन

डेबियन सिस्टम को इनिशियलाइज़ करने के लिए इनस्क्रिप्ट्स का उपयोग करता है, और आप इनका उपयोग मनमाने कमांड्स चलाने के लिए कर सकते हैं। आपको निम्नलिखित के समान एक स्क्रिप्ट स्थापित करने की आवश्यकता है /etc/init.d

#! /bin/sh
# /etc/init.d/blah
#

# Some things that run always
touch /var/lock/blah

# Carry out specific functions when asked to by the system
case "$1" in
  start)
    echo "Starting script blah "
    echo "Could do more here"
    ;;
  stop)
    echo "Stopping script blah"
    echo "Could do more here"
    ;;
  *)
    echo "Usage: /etc/init.d/blah {start|stop}"
    exit 1
    ;;
esac

exit 0

आपको यह सुनिश्चित करना चाहिए कि यह जड़ से चलने योग्य और स्वामित्व में है।

sudo chmod 755 /etc/init.d/blah
sudo chown root:root /etc/init.d/blah

फिर आपको इसे स्टार्टअप पर चलाने के लिए पंजीकृत करना होगा।

sudo update-rc.d blah defaults

संदर्भ


1
इनमें से कोई भी चीज़ डेबियन के लिए अद्वितीय नहीं है। इसके अलावा, init स्क्रिप्ट वह नहीं हैं जो आपको मॉड्यूल लोड करने के लिए उपयोग करना चाहिए। केवल पहला खंड प्रश्न के लिए प्रासंगिक है।
Jivings

दोनों में से कोई भी आर्क पर काम नहीं करेगा, कटनपई के बारे में निश्चित नहीं है।
एलेक्स चैंबरलेन

बेशक वे करेंगे।
जीवा

ओह ... आपका आर्क जवाब अलग क्यों है?
एलेक्स चेम्बरलेन

क्योंकि आर्क स्टार्टअप घटनाओं के लिए एक आसान अमूर्तता को परिभाषित करता है।
जीवा

3

लिनक्स में स्टार्ट-अप पर कमांड चलाने के तरीके लोड होते हैं, लेकिन मेरा पसंदीदा तरीका यह है कि आप एक इनिशियलाइज़ेशन स्क्रिप्ट बनाएँ /etc/init.dऔर इसका उपयोग करके रजिस्टर करें update-rc.d। इस तरह से सिस्टम बूट / शटडाउन होने पर एप्लिकेशन अपने आप शुरू और बंद हो जाता है।

रास्पबेरी पाई पर एक बनाने के लिए निर्देशों के एक सेट के लिए इस पोस्ट को देखें ।


1
रास्पबेरी पाई बीटा में आपका स्वागत है! जब भी यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, तो उत्तर के आवश्यक भागों को शामिल करना और संदर्भ के लिए लिंक प्रदान करना बेहतर होगा
डेर होकस्टाप्लर

आप इसे systemdया अन्य प्रणालियों के माध्यम से कैसे करेंगे ?
आर्चरस्केलर

0

मेरा पसंदीदा तरीका सेटअप कमांड को /etc/rc.local में जोड़ना होगा जहां इसे बूट के अंत में आरंभ किया जाएगा, इससे पहले कि आप लॉगिन करने के लिए कहें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.