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

イメージ
 そんなに暑くないのに… 本日、午前中にオンラインで打合せをしていると、突然マシンがダウン。 一瞬、停電か?と思ったもののディスプレイの電源は入っている。 あれっ?と思い、すぐさまノートで打合せを継続。 その間に、再度マシンの電源を投入。 問題なく起動する。 でも、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よりも時間がかかった感じ。 ...

LinuxでC#

Ubuntu上でC#を使う

Windows7/10にVisual Studio Communityを入れれば、すんなりと環境は構築できる。

でも、メインマシンがUbuntuなので、VMのWindowsを起動して、その上で動かすのが時間もかかって面倒なのですよ…。
 しかも、めったにWindowsを使わないため、起動するたびに更新の罠にはまって、使い始めるのに時間がかかりすぎるという状況。

そこで、Ubuntu上で、普通にコードがかければ楽じゃね?と思い探してみる。



コンソールアプリならOK

結果的には、コンソールならWindowsと何ら変りなく利用できることが分かった。

マイクロソフトのサイト

へ行けば、以下の手順が乗っている。

curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg
sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-xenial-prod xenial main" > /etc/apt/sources.list.d/dotnetdev.list'
まずは、上記のリポジトリを追加

そして、以下のコマンドで.NET関係のインストール。

sudo apt-get install apt-transport-https
sudo apt-get update
sudo apt-get install dotnet-sdk-2.1.105

あとは、いつも使っているVisual studio codeで、マイクロソフト製の拡張機能を入れれば良い。

拡張機能も、ページの下の方に書かれている。
https://marketplace.visualstudio.com/items?itemName=ms-vscode.csharp


vscodeの拡張機能で、「c#」で検索すればすぐに見つかるはず。

でもって、入れればその他必要なものは、インストールしてくれる仕様だ。


実際に動かしてみる

まずは、適当な作業用ディレクトリで、プロジェクトを作成する。
$ cd tmp
$ dotnet new console -o myApp
これで、myAppというフォルダが掘られて、雛形ファイルがザザッと作られる。

Program.csという雛形が出来上がっているので、これを編集することになる。

この辺りの、ファイル・フォルダ構成がvisual studioと同じになっているのが、ある意味素晴らしい。


実行すると以下のようなメッセージが表示される。

$ dotnet new console -o myApp
テンプレート "Console Application" が正常に作成されました。
作成後のアクションを処理しています...
'dotnet restore' を myApp/myApp.csproj で実行しています...
  Restoring packages for /home/yoshimura/tmp/myApp/myApp.csproj...
  Generating MSBuild file /home/yoshimura/tmp/myApp/obj/myApp.csproj.nuget.g.props.
  Generating MSBuild file /home/yoshimura/tmp/myApp/obj/myApp.csproj.nuget.g.targets.
  Restore completed in 492.65 ms for /home/yoshimura/tmp/myApp/myApp.csproj.
正常に復元されました。
最後の「正常に復元されました」というのは、少々気持ち悪いw

vscodeで開いてみる。

別にHello Worldは無しでも良いのだけれど…。

しかも、このままDebug可能と来たもんだ!
もちろん、以下のコマンドで実行も可能。

$ dotnet run

これなら、visual studioなしでも、ちょろっと書いてテストするには充分。

何となくMicrosoftの本気度を垣間見た気がする。

コメント

このブログの人気の投稿

Ubuntu24.04 でGUIが死んだ

VirtualBoxが異常

MEGAにも弱点があった?