質問: プラグインされたpci-eグラフィックカードをosレベルで無効にする方法は? vgaに接続された画面でサーバーにアクセスできるようにしたいサーバーを実行しています(ほとんどの場合、ssh経由でアクセスされます)。したがって、pci-eグラフィックカードを接続し、vgaケーブルを取り外しました。グラフィックカードは受動的に冷却され、ケースを開いて涼しい体に触れると、顕著な暖かさを感じ、エネルギーを消費していると結論付けることができます(熱エネルギーを伝達できる消費者は近くにいません)。カードを抜いた場合( 未使用のグラフィックカードを無効にする必要がありますか? )、画面を接続するたびにカードを組み込む必要があります。それとエネルギー消費を避けたいと思います。非アクティブ化と再アクティブ化は、osレベルで(たとえばsshを介して)実行する必要があります。それ以外の場合は、uefiを構成する画面(またはそれを盲目的に実行する方法はありません)が必要であり、鶏卵に実行する必要があるためです。問題。linux 4.0.2でubuntu 15.04を使用しています。グラフィックカードにはxfxhd 5450 850mというラベルが付いており、vga、hdmi、およびd-subコネクタが付いています。メインボードはasrockx99-extremeで、グラフィックは統合されていません。編集:sudo lspci -vにリストされている使用済みモジュールをブラックリストに登録した後(以下の@whimsicalwombatの有望な回答に従って)(私の場合、modprobe.blacklist=module_to_blacklistカーネルパラメーターを使用する必要がありました- https://askubuntu.com/questions/110341/を参照してください詳細については、how-to-blacklist-kernel-modules -radeonおよびsnd_hda_intelの場合)pcieグラフィックカードはまだ加熱されます(パッシブクーラーは60度を超え、近くに熱源はありません)。デバイスのlspci -vにモジュールがリストされていません。デバイスのlspci -vの出力は01:00.0 vga compatible controller: advanced micro devices, inc. [amd/ati] cedar [radeon hd 5000/6000/7350/8350 series] (prog-if 00 [vga controll er]) subsystem: xfx pine group inc. device 303e physical slot: 4 flags: bus master, fast devsel, latency 0, irq 11 memory at e0000000 (64-bit, prefetchable) [size=256m] memory at fbe20000 (64-bit, non-prefetchable) [size=128k] i/o ports at e000 [size=256] expansion rom at fbe00000 [disabled] [size=128k] capabilities: [50] power management version 3 capabilities: [58] express legacy endpoint, msi 00 capabilities: [a0] msi: enable- count=1/1 maskable- 64bit+ capabilities: [100] vendor specific information: id=0001 rev=1 len=010 <?> capabilities: [150] advanced error reporting 01:00.1 audio device: advanced micro devices, inc. [amd/ati] cedar hdmi audio [radeon hd 5400/6300 series] subsystem: xfx pine group inc. device aa68 physical slot: 4 flags: bus master, fast devsel, latency 0, irq 10 memory at fbe40000 (64-bit, non-prefetchable) [size=16k] capabilities: [50] power management version 3 capabilities: [58] express legacy endpoint, msi 00 capabilities: [a0] msi: enable- count=1/1 maskable- 64bit+ capabilities: [100] vendor specific information: id=0001 rev=1 len=010 <?> capabilities: [150] advanced error reporting 編集2: https://askubuntu.com/a/138953/173287 はecho 0 > /sys/bus/pci/slots/$n/powerを実行することを提案し、私は/sys/bus/pci/slots/$nを持っています。ここで$nはlspci -vにリストされているスロットの番号ですが、 powerファイルがありません。編集3:/sys/bus/pci/devices/[device]/modaliasのモデリアをmodprobe.blacklist=カーネルパラメータに追加しても、 http://kernel.ubuntu.com/~kernel-ppa/mainline/ のubuntuメインラインカーネルには影響しませんmake localmodconfigを使用したカスタム4.0.5ビルドとすべてのpciオプションのアクティブ化により、グラフィックカードがまだ加熱されている間、[loading initramfs [version]]画面が表示されたままになります。
回答: 最も簡単な方法は、カーネルモジュールをブラックリストに登録してアンロードすることです。最初にsudo lspci |egrep -i (vga|video)でバス番号をチェックアウトし、01:00.0のような番号の最初のフィールドに注目すると、現在のモジュールであることがわかります。次に、_sudo lspci -vs 01:00 |grep modules_は使用中のモジュールを表示します。 hdmi対応デバイスの場合、通常、hdmiオーディオデバイスである01:00.1のようなサブデバイスがあります。それもブラックリストに載せてください。これらの/etc/modprobe.d/blacklistまたはblacklist.confの両方の前にblacklistコマンドを追加します。たとえば、「ブラックリストradeon」や「ブラックリスト「snd-hda-intel」」などです。デバイスを使用する場合は、sudo modprobe [モジュール名]を使用して有効化できます。それだけでは不十分な場合、または実際に使用するgpu(統合アダプターまたは2番目のアダプター)に同じモジュールを使用する場合は、無効にするモジュールをpci-stubドライバーにバインドします。これを行う最良の方法は、ブート時のカーネルコマンドラインからです。 _pcistub="pci-stub.ids=..."_を追加し、その後にlcpci -nns (your bus number from above)で見つけることができるvendorid:deviceidコードを追加するだけです__pcistub="pci-stub.ids=1002:6718,1002:aa80"_pcistubにバインドした後で使用したい場合は、sysfsを介してバインドを解除し、選択したドライバーに再バインドするか、コマンドラインなしで(より簡単に)再起動して起動できます。モジュールの自動ロードを無効にするだけで十分な場合は、最初に試してみます。編集:ブラックリストに登録すると、カーネルが次に利用可能なドライバーを試す可能性があります。もしそうなら、あなたがそれを必要としない限り、あなたもそれをブラックリストに載せることができます。すぐに互換性のあるドライバーが不足し、デバイスはドライバーなしのままになり、電源がオフ(または少なくともロー)になります。カーネルドライバを使用していなくても熱くなる場合は、投稿を更新してください。それを聞いてとても興味があります。