コンピューターの電源が完全にオフになってから再びオンになった場合にのみ正しく機能するPCIeデバイスがあります。簡単なreboot
を発行する またはreboot -p
コマンドがPCIeカードの電源を入れ直していないように見えるため、再起動後にカードが機能しなくなります。
OSからPCIeスロット内のデバイスへの電源を入れ直す方法はありますか? /sys/bus/pci/devices/0000*/
にあります 、しかし、ボードを適切にリセットする方法がわかりません。パワーを切り替えることが唯一の方法のようです。
それを除いて、reboot
でフルパワーサイクルが発生するような設定を変更できますか? コマンド?
ちなみに私はUbuntu12.10を実行しています。
承認された回答:
ポテンシャル法#1
次のコマンドで実行できると思います:
無効にする
echo 0 > /sys/bus/pci/slots/$NUMBER/power
有効にする
echo 1 > /sys/bus/pci/slots/$NUMBER/power
$NUMBER
の場所 はPCIスロットの番号です。
lspci -vv
デバイスの識別に役立つ場合があります。これはあまり文書化されていません…
ポテンシャル法#2
U&Lでこのスレッドに出くわしました。同様の問題です。このコマンドでリセットできるという、その質問に対する回答がいくつかあります。
echo "1" > /sys/bus/pci/devices/$NUMBER/reset
しかし、私はそこで答えを読みます!このようにすることには条件があります!具体的には、この回答を読みます!
ポテンシャル法#3
Unixコマンドsetpci
があります 、PCIバス内のデバイスをリセットする方法が提供される場合があります。
このコマンドの具体的な例は見当たりませんでした。そのため、例をグーグルで検索して、マニュアルページを確認する必要があります。このコマンドの使用に自信が持てるようになるまで、このコマンドを軽く踏みます。私が読んだところによると、ハードウェアを直接操作しているため、このタイプの機能を公開しているツールを使用する場合と比べて、自分で操作する場合には常にリスクがあります。