たまに掃除は必要!熱暴走…

イメージ
 そんなに暑くないのに… 本日、午前中にオンラインで打合せをしていると、突然マシンがダウン。 一瞬、停電か?と思ったもののディスプレイの電源は入っている。 あれっ?と思い、すぐさまノートで打合せを継続。 その間に、再度マシンの電源を投入。 問題なく起動する。 でも、CPU温度がたまたま目に入り、95℃を超えて徐々に上昇していく。 105℃あたりで再度マシンダウン。 これは、熱暴走によるダウンの可能性が高い。 以前、CPUをRyzen7→9にした頃は、60℃〜70℃程度だった記憶がある。 本当はGW中にSSDの載せ替えを行う予定だったけれど、忙しくて先延ばしにしていた。 その時やっていれば、多分掃除もしただろうに…。 ということで、午後からマシンを解体し、掃除をすることに。 ケース本体のFANはホコリがかなり溜まっている。 GPUのFANは問題ない。 電源とCPU FANはひどい。 一旦、CPU FANを取り外し、きれいにする。ついでにCPUグリスも塗り直しセット。 動作確認すると、投入直後で40℃台。 そりゃ、熱暴走も起こすわけだ。 せっかくバラしたので、SSDの載せ替えを実施。 OSは500GBで、ユーザ領域(/home)は1TBを使用しているもののAIのmodelをいくつも落としていたり、DockerのImageが多種置いてあるため、結構容量を食っている。 今回、2TBのSSD( Hanye SSD ¥17,800- で入手済)を用意してあるので、 1TB→2TB, 500GB→1TBと玉突きで移動させることを計画していたので実施する。 本当は、ddコマンドで移すつもりだったのだけれど、3月にお客さんのところで使いそうだったので、 ORICOのクローン機能付SSDアダプタ を入手済。 裸族のSSD版ですね…。1万円程度の品です。 これに、新品のSSDとこれまでの1TBのSSDを差し込んでクローン開始。 そこそこ時間はかかるものの、放置でOK。 ただ、HanyeのSSDについているヒートシンクが引っかかるため、一旦取り外してクローン後取り付ける必要があった。 続いて、500GB→先程の1TBに書き込み。 ただ、1TB(samsungの980pro)が、先程のクローンでかなり熱くなっていたため、速度低下が激しい感じ。1TB→2TBよりも時間がかかった感じ。 ...

VirtualBoxでUSBを使う方法が分かった!

原因が分かった!

 以前からうまく動作せず、しばらく放置気味だった。久しぶりなので、状況をまとめておこう。要は仮想マシンでプリンタが利用できないということで…。USBがうまく認識できていない。
  • Mac上(Mountain Lion)でVirtualBoxにより仮想マシンを構築。
  • GuestにWindows7を入れている。(他にはXP,Ubuntuなどなど)
  • プリンタはCanon PIXUS 850i でUSB接続
  • 仮想マシンXPでは動作しているが、7だと動作しない。Ubuntuでも動作している。
  • USBメモリもWindows7のみ動作せず。
という状況で、随分前から格闘を続けてきたのだが、今日時間がたっぷり取れたので、じっくり腰を据えて検証してみた。

 この状況で、VirtuaBoxのUSB設定で、プリンタのフィルタを作成しても、しなくても図のようにUSBの認識を正しくしてくれない。USBポートを変更しても、プリンタの電源をOFF/ONしても効果なし。
Windowsのデバイスマネージャで、ドライバを削除しても結局同じ所に行き着いてしまう。
GuestAddtionsもExtentionPackも入れ直している。
もちろん、GuestOSの再起動もHostOSの再起動を行なっても効果はない。

 でも、以前に構築してあった仮想マシンXPでは、同じプリンタが正しく認識されて印刷もできるし、ステータスも確認できる。そこが解せないわけだ…。

 八方塞がりになりかけていたので、本家VirtualBoxのForumを検索して探してみる。同じようにGuestOSがWindowsでUSBがUnknown Deviceとなって利用できないという書き込みが山のようにある。
どうやらバグの可能性が…。でもこれだけ発生しているなら、対策とってとっくにFixしてるはずなのに…と思いながら探してみる。

"Windows does not recognize USB devices"というタイトルの投稿にヒントがあった。
簡単にいえば「プロセッサの数を1にすると治ったよ」ということらしい。

 自分の環境を確認してみる。たしかに7はマルチプロセッサ設定になっている。
XPはLinux時代に構築した仮想マシンのイメージを持ってきている。随分昔のことなのだが、当時はプロセッサが非力なので、当然仮想マシンのプロセッサ数が1にしてある。
ところが、昨年構築したWindows7はプロセッサ数を2にしてあった。メモリも実プロセッサも余裕があるし、VisualStdioを使ってコンパイルするのに多めがいいだろうと思って増やした記憶がある。

設定変更してみる

 本当にそうか?と思いながら、設定を変更して再度起動してみる。
今度は、ドライバのインストールを開始するではないか!!

 しばらく待つと、作業は完了し何事もなかったかのように、無事USB Deviceを認識し、プリンタドライバのインストールまで完了する。念のためプリンタのプロパティからテスト印刷と、プリンタのステータスを確認するが、残インクなどちゃんと取得できている。

たった、これだけだったのか…。

さて、ここで再度CPU数を2に戻すとどうなるのか?
一旦認識してしまえば、そのまま運用できるのか、できないのか。

一旦仮想マシンをシャットダウンし、CPU数を元の値に変更する。
さて起動してみる。
昔のWindowsはCPU数が変更になると起動時にエラーこいて逝ってしまった覚えがあるのだけれど、Windows7はそんなことは起きず、何事もなかったように起動してくれるのは嬉しい。
と言っている間に再起動完了。
しかし、USBはUnknownとな…。

つまりプリンタを使用するためには、プロセッサ数を1にしなければならないということが分かった。

まあ、それ程重たい処理をするわけではないので、このまま使うことにする。

再度プロセッサ数を1に戻すと、正しくUSBを認識して動作することが確認できた。

これまで、プリンタやUSBメモリが利用できないのでPDFの仮想プリンタを入れたり、ネットワーク経由でHOSTマシンにデータを送って処理していたのが、これで楽になるわ〜。

今回は、一件落着!ということでスッキリしたわ。
Oracleさ〜ん。早く修正してよね〜。


コメント

  1. 私もUSBメモリが使えずずっと困っていました。
    2011年以来VirtualBoxが新しくなる毎に期待していたのですが・・・
    記事にあるとおり1CPUにしたら使用できるようになり、大変助かっています。どうもありがとうございました。

    なお、環境は以下の通りです。
    Macmini OSX10.6.8
    VirtualBox 4.2.12
    Guest Windows 7 SP1

    返信削除
    返信
    1. 僕も長い間、原因が分からず試行錯誤してました。
      お役に立てて良かったっす〜。

      削除
  2. 私もUSBが認識せず(ディスクドライブもプリンタも232Cの変換も...)ホトホト困り果てていたところこの記事に助けられました!
    シングルプロセッサにしたところ全く問題なく動作しております。
    症状は全く同じで XP ですとCPUコア数に関係なく問題なく動作。
    7のみ32bit/64bitに限らずシングルプロセッサ時のみUSB問題なしです!
    貴重な記事を上げて頂き感謝致しますm(_ _)m

    環境
    iMac 27 Late 2012
    i7 3.4GHz /16GB
    OSX 10.8.3(12D78)
    VirtualBox 4.2.12 r84980
    Win7 Ultimate SP1 32bit/64bit

    返信削除
  3. 私もCPU数を1にしたところ完全解消されて感激です。
    素晴らしい記事です。ありがとうございます。

    [ホスト]
    自作機
    Linux Mint 16 (64bit)
    VirtualBox 4.3.6 r91406
    [ゲスト]
    Windows Professional (64bit)

    なお、Linuxホストの場合、ホストのグループ vboxusers にユーザを追加する必要があるという別の理由もあり、余計にハマってました。

    返信削除
  4. 同じ状況で悩んでます。
    CPUを1にするってどうすればいいのでしょうか。

    返信削除
    返信
    1. 仮想マシンの設定→「システム」→「プロセッサー」→「プロセッサー数」という欄のスライダか、数値を入力する欄で設定可能です。

      削除

コメントを投稿

励みになりますので、簡単で良いので一言くださいませ。

このブログの人気の投稿

Ubuntu24.04 でGUIが死んだ

VirtualBoxが異常

MEGAにも弱点があった?