ブート時にモジュールをロードするにはどうすればよいですか?


32

で述べたように、なぜ私のオーディオ(サウンド)出力が動作していませんか?、サウンドドライバーを初期化するには、サウンドsudo modprobe snd_bcm2835を出力するたびに実行する必要があります。

ブート時にこれを実行するにはどうすればよいですか?(つまり、ログインする前に、入力なしで)


1
これは、トピック外と見なされる可能性がある別の質問です。U&Lに適している場合があります。
-Jivings

2
@Jivings:Unix&Linuxで話題になっているからといって、Raspberry Piでも話題にならないのですか?
デアホッホステープラー

2
@OliverSalzburg:この特定の質問にはあまりにも多くの重複があると思います。この質問については、Raspberry Pi固有のものではありません。
Jivings

1
meta.raspberrypi.stackexchange.com/questions/24/での決定は、この質問がここで問題ないことを意味しませんか?
グラハムウェイガー

1
@Jivingsありがとう、コメントが質問を閉じることを指していたので、将来の訪問者のためにそれをクリアしたかっただけです。代わりに、すべてのコメントを削除する必要がありますか?
グラハムウェイガー

回答:


24

起動時のモジュールのロードは、起動コマンドの実行とは少し異なります。

Debianの場合:

モジュール名を新しい行として追加します /etc/modules

Arch Linuxの場合:

モジュール名をのモジュール配列に追加します。/etc/rc.conf行は次のようになります。

modules=(snd_bcm2835)

または、新しいsystemd構成の場合:

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

Xbian snd_bcm2835/etc/modulesファイルに追加しましたが、起動時にループが作成されました。OSMCの起動時にこれは許可されていないようです
rubo77

@ rubo77面白い!あなたはそれの底に着きましたか?
Jivings

わからない。偶然かもしれない。全体のインストールは、今では壊れて少し...らしい
rubo77

14

ブート時のModprobe-Debian

に関する特定の質問に答えるにはsudo modprobe snd_bcm2835、モジュールを追加し/etc/modulesて再起動します。(rootこれを行う必要があります。)

サービスの開始-Debian

Debianはinitscriptsを使用してシステムを初期化し、それらを使用して任意のコマンドを実行できます。次のようなスクリプトをインストールする必要があります/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

実行可能で、rootが所有していることを確認する必要があります。

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

次に、起動時に実行するように登録する必要があります。

sudo update-rc.d blah defaults

参照資料


1
これらはどちらもDebianに固有のものではありません。また、initスクリプトは、モジュールをロードするために使用すべきものではありません。最初のセクションのみが質問に関連しています。
Jivings

どちらもArchで動作しません。QtonPiについてはわかりません。
アレックスチェンバレン

もちろん彼らはそうするでしょう。
Jivings

ああ...なぜあなたのArchの答えは違うのですか?
アレックスチェンバレン

Archはスタートアップイベントの便利な抽象化を定義しているためです。
-Jivings

3

Linuxの起動時にコマンドを実行する方法はたくさんありますが、私の好みのアプローチは、で初期化スクリプトを作成し、/etc/init.dそれを使用して登録することupdate-rc.dです。これにより、システムの起動/シャットダウン時にアプリケーションが自動的に起動および停止します。

Raspberry Piで作成する方法については、この投稿をご覧ください。


1
Raspberry Pi Betaへようこそ!これは理論的には質問に回答するかもしれませんが、回答の重要な部分をここに含め、参照用のリンクを提供することが望ましいでしょう
デアホッホステープラー

systemd他のシステムを通じてどのように行いますか?
ArchHaskeller

0

私が推奨する方法は、セットアップコマンドを/etc/rc.localに追加することです。ここで、ブートの最後に、ログインを求められる前に初期化されます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.