2023年の振り返り

2022年の振り返り に引き続き、2023年の簡単な振り返りです。2月も半ばになってしまいましたが…。

競技プログラミング

2023年はAtCoder Algorithmのratedに18回出場。レートは2022年末の1585から2023年末の1443に激減しました。

2023年もほとんど出場できていない感覚でしたが、意外にも18回も出場していました。 2023年は、コンテストに出る以外のことはほぼなにもできていなかったという点で2022年とほぼ同じですが、 2022年に比べてレートは急激に低下していて、ついに実力の維持すらままならなくなっている状況です。

2024年も状況が変わるようになるとは思えませんが、少しでも実力を改善するためにやりたいと思っていること:

  • 通勤時間に問題と解説を見る
    • 本当は心行くまで問題の解法を考えてから解説を見たいところですが、そんな時間はありません。理想からは外れますが、「問題を見る→すぐ解説を見る」という方法でも競プロの感覚を取り戻せないかというのを試したいです。
  • AtCoder Library (ACL) を一通り使う

下は2024年1月7日に取得したAtCoderAtcoder Problemsのスクリーンショットです。

ブログ

月に一本記事を書くストリークは一応保てましたが、今年も簡単な記事ばかりでした。せっかく良いPCを新調したので新しいことを勉強して記事にまとめたくはあるのですが…

そして2024年1月は記事が書けず、ついにストリークは途切れてしまいました… 今年は無理に月に一本記事を書くことには固執せず何か意味のある記事を書けるように努力したいです。

勉強

2022年は家事をしながらYouTubeで学習コンテンツを流し見、というのをやっていたのですが、2023年はそれもできませんでした。

難しいこと・未知のことを勉強するにはまとまった時間集中して取り組みたいのですが、そのような貴重な時間はほぼとれず。 仮に取れたとしても勉強以外のことに充てたくなってしまい、まったくといっていいほど前進のない一年でした。 今年は隙間時間を使って以下に少しでも勉強するかを追求したいです。

また、LLMや生成モデルの流行に全然ついていけていないのがまずいです。中身の理解をしたりライブラリを触ったりという時間は取れなくても、 せめて一ユーザーとしての最低限の興味を持ってサービスを利用するくらいのことはしておきたいです。

Plotlyに関するメモ

最近グラフの可視化によく使っているPlotlyに関するちょっとしたメモです。

plotly.expressとplotly.graph_objects

plotlyのスクリプト例を検索すると、

import plotly.express as px

しているものと

import plotly.graph_objects as go

しているものの両方があることがわかります。

plotly.expressの方は少ない行数でサクッとグラフを作るのに向いていて、特にPandasのDataFrameとの親和性が高いです。 ただし高水準APIのため、ちょっと難しいこと(例えば二つのサブプロットを並べるとか)をしようとするとすぐ壁に当たります。

逆にplotly.graph_objectsは低水準APIのため、行数は多くなりますが、plotly.expressよりも痒い所に手が届きやすいです。 個人的には初めからplotly.graph_objectsを使用するようにしています。

go.Scatter()よりgo.Scattergl()

散布図を描くサンプルを検索するとgo.Scatter()が使われていることが多いですが、代わりにgo.Scattergl()を用いる方がブラウザでさくさく動くので、 基本的にgo.Scattergl()を使った方がよいはずです。(少なくともそれなりのGPUを積んでいる環境では。)

公式ページの "What About Dash?" は無視してよい

公式ページのチュートリアル、例えば ここを開くと、高確率で最後に "What About Dash?" という節があります。 これはDashというGUIツールの宣伝で、これはこれで便利なツールではありますが、基本的に無視してOKです。

Windows 11の環境構築

自作PCをRyzen 7 5700Xに更新するの続き。自作PCにインストールしたWindows 11の環境構築をしていきます。

(最終更新 2023-10-09)

最初にやる設定

  • CapsをCtrlに
    • MS公式のCtrl2Cap v2.0を使って、Capsキーを潰してCtrlキーとして使う
      • 以前のCtrl2capはダウンロード先がリンク切れになっていました。
  • OneDriveの同期設定
    • 個人的にデスクトップやドキュメントフォルダなどの同期は不要なので設定を切ります。 (参考)
    • 通常のフォルダの場合
      • タスクトレイのOneDriveアイコンから「設定」を開く   - 「アカウント」から「フォルダーの選択」を選ぶ
    • 特殊フォルダ(デスクトップやドキュメントなど)の場合
      • タスクトレイのOneDriveアイコンから「設定」を開く
      • 「同期とバックアップ」から「バックアップを管理」を選ぶ
  • 仮想化設定
    • WSL2などのため、事前にUEFI BIOSで「仮想化」を有効にする。AMD Ryzenの場合は "SVM (Secure Virtual Machine)" が該当

基本アプリの手動インストール

インストーラで個別にインストール

開発

ドライバ類

一般アプリ

Wingetを使ってインストール

Windows 10のときはChocolateyを使いましたが、今回はMicrosoft公式ツールであるwingetを使ってみました。wingetは初めからWindows 11に搭載されています。

基本の流れは、

  • powershellwinget search <アプリ名> として、所望のアプリがあるかを検索。IDを得る
  • powershellwinget install -e --id <ID>とする
    • -eはパッケージ名の完全一致という意味

以下に書いているのは上の方法で得たIDです。

開発

  • winget install -e --id Anaconda.Anaconda3
  • winget install -e --id Git.GIt
  • winget install -e --id JetBrains.PyCharm.Community
  • winget install -e --id Kitware.cmake
  • winget install -e --id Microsoft.VisualStudioCode
  • winget install -e --id Microsoft.VisualStudio.2022.Community
    • インストールの後、C++など必要な言語を手動でインストールする必要あり
  • winget install -e --id Mintty.WSLtty
  • winget install 9P3395VX91NR -s msstore # "Windows Subsystem for Android™ with Amazon Appstore" をStoreからインストールするのに相当

以下はインストールに失敗

一般アプリ

  • winget install -e --id 7zip.7zip
  • winget install -e --id Adobe.Acrobat.Reader.64-bit
  • winget install -e --id Apple.iTunes
  • winget install -e --id CrystalDewWorld.CrystalDiskInfo
  • winget install -e --id FastCopy.FastCopy
  • winget install -e --id Piriform.Recuva
  • winget install -e --id VideoLAN.VLC
  • winget install -e --id Google.JapaneseIME # Google日本語入力
    • タスクバーにある「Jに〇」のアイコンをクリックして切り替える必要あり

以下はインストールに失敗

  • winget install -e --id Dropbox.Dropbox
    • インストーラの指示に従いログインしようとすると"このリクエストの送信中にエラーが発生しました" と出て失敗
  • winget install -e --id LINE.LINE
    • "インストーラーのハッシュが一致しません。" というエラーが出て失敗
  • winget install -e --id Spotify.Spotify
    • "インストーラーが終了コードで失敗しました: 29" というエラーが出て失敗

個別設定

WSL2

  • 管理者権限でpowershellを開く
  • > wsl --install # Ubuntuが入る
  • PC再起動
    • WslRegisterDistribution failed with error: 0x80370114 というエラーが出た場合は、UEFI BIOSでCPUの仮想化が許可されているかを確認してやり直す
  • パッケージのインストール
    • $ sudo apt update && sudo apt upgrade
    • $ sudo apt install cmake emacs git g++ lv nkf python3 screen zsh
    • $ sudo apt install language-pack-ja
  • シェルをzshに変更
    • $ chsh -s /bin/zsh
  • 各種設定ファイルを旧PCからコピー
  • Anaconda Pythonをインストール

PCがスタンバイから勝手に目覚める問題

  • やること

    • バイスマネージャ→「マウスとそのほかのポインティングバイス」→「HID準拠マウス」のプロパティ→「電源の管理」→「このデバイスで、コンピューターのスタンバイ状態を解除できるようにする」をアンチェック
  • 参考

    • %20%5D%20%E3%82%92,%E8%A7%A3%E9%99%A4%E3%81%8C%E3%81%A7%E3%81%8D%E3%81%AA%E3%81%8F%E3%81%AA%E3%82%8A%E3%81%BE%E3%81%99%E3%80%82)

自作PCをRyzen 7 5700Xに更新する

Windows 11 PCの入手計画を立てるの続き。2017年に作成した自作PCCore i7-7700 + GTX 1070 )を更新してWindows 11を入れ、 2023年でも通用するPCにするまでの記録です。アマゾンアフィリエイトを利用しています。

パーツ選定

CPU

結論を言うとAMDAMD Ryzen 7 5700Xを購入しました。以下は選定の過程です。

CPUの世代は最新であることにはこだわらず、代わりに値段がこなれていることと、かつ消費電力が小さいことを重視しました。 つまりコストパフォーマンスとワットパフォーマンス重視です。

前に使っていたCPU (Core i7-7700) のTDPが65Wであったので、これを基準とし、 TDPが同じく65WのCPUから選定することにしました。 私見ですがTDP 65Wは性能と消費電力のバランスが優れているように思います。

IntelのCPUだと、以下あたりが候補でした。

CPU 価格 (調査時点) Passmarkのスコア
Core i5-13500 36,940 32,513
Core i5-13400F 30,726 25,691
Core i5-13400 33,680 25,473

AMDのCPUだと、以下あたりが候補でした。

CPU 価格 (調査時点) Passmarkのスコア
Ryzen 7 5700X 26,977 26,813
Ryzen 5 5600X 21,450 21,945
Ryzen 5 5600 17,980 21,651

最新世代のCPU (Zen 4) だとソケットがAM5に、メモリがDDR5のみの対応になります。 ソケットがAM5のATXマザーボードは高く(現時点で最低2万1千円)、またメモリも買い直しになってしまいます。

旧世代のCPU (Zen 3) だとソケットはAM4、メモリはDDR4になります。 ソケットがAM4のATXマザーボードはAM5のそれに比べると比較的安く、またメモリは古いのを使いまわせます。

今から旧世代のマザーボードとCPUとをそろえるのは心情的に微妙ですが、 私は頻繁にCPUを買い替えるようなことはしないだろうと思い、 現時点での値段を考慮して、今回は旧世代のCPU (Zen 3) のみを選定対象としました。

また、AMDのCPUにはグラフィック機能付きのCPU(例えばRyzen 7 5700G)がありますが、 PCI Express 4.0に対応していなかったりして性能が劣るので、これも選外にしました。

上記のように候補出ししたあと、まずIntelAMDにどちらにするかの大きな分岐点がありました。 非常に迷いましたが、以下の理由からAMDを選びました。

  • まだ使ってみたことのないAMDのCPUを試してみたかった
  • Intelはおおむね2世代ごとにソケットが変わるのに痛い目を見たので、心情的にIntelは避けたかった
  • AMDのほうがIntelより若干コスパが良かった

Intelにも以下の魅力がありましたが、今回は選びませんでした。

  • Core 第13世代CPUはDDR4メモリ、DDR5メモリの両方に対応しているので、DDR4メモリ対応のマザーボードを買えばDDR4メモリを使いまわせる
  • IntelのCPUに最適化しているソフトのほうが多い(らしい)

残るはどのCPUにするかですが、ここは単純にもっともPassmarkのスコアが高く、長く使えそうなRyzen 7 5700Xにしました。

悔しかったのは過去の価格で、このCPUは今年の6月ころ22,000 ~ 23,000円程度で購入できたという事実です。 待つと再び安くなる可能性もありましたが、逆に高くなる可能性ももちろんあったので、 結局私はドスパラで26,980円で購入しました。

マザーボード

ATX規格、かつ、AM4ソケット、かつ、重いGPUをさしても大丈夫なようにスロットが補強されているマザーボード価格.comで調べました。

値段だけでいうとASRockのB550 Phantom Gaming 4が最安でしたが、使用経験のあり、かつI/FがASRockより優れているASUSのTUF GAMING B550-PLUSを購入しました。 購入先はドスパラで、16,902円でした。 今さらですが、ATXマザボのよりMicro-ATXマザボのほうが数千円安かったので、ケースはスカスカになりますがMicro-ATXマザボを選んでもよかったかもしれません。

マザーボードは選択肢が少なかったのであまり迷いませんでした。

CPUクーラー

Ryzen 7 5700XにはCPUクーラーがついていないので、 価格.comで売れ筋のDEEPCOOL AK400を購入しました。同じくドスパラで2,975円でした。

SSD

今使用しているストレージがCrucial SSD MX300 525GB M.2 Type CT525MX300SSD4というやつで、M.2スロットに刺さるものの実はSATAタイプで、読み込みが530MB/秒しか出ません。 これは最近のものに比べると1/10程度の速度なので、買い替えることにしました。

最初は価格.comで商品を並べて速度・価格だけを見て選ぼうと思っていたのですが、調査するにつれ、他にも発熱の程度や実用速度(ストレージの空き容量が少ないときの速度など)など スペック表だけを見てはわからない要素がたくさんあることがわかってきました。

【2023年版】おすすめなSSD「10選」:SSDベンチオタクの筆者が解説 | ちもろぐ の記事を全面的に参考にして、結局以下の2つのSSDを購入しました。

  • WD BLACK SN770 2TB
    • 読み込み速度は 5150 MB/s と控えめなものの総合性能は高く、発熱は低めだそうです。
    • Windows向けのシステムディスクを意図。
    • ツクモ パソコン Yahoo!店で購入。19,872円で、初回利用限定クーポン1,500円とPayPayポイント1,497円相当がついて、実質16,875円でした
  • HIKSEMI FUTURE 2TB
    • 読み込み速度は 7450 MB/s、全体的にトップクラスの性能の割に安いと評判のSSDです。
    • Ubuntu向けのシステムディスクを意図。
    • 正直、耐久性は心配ですが、意外と故障報告は少ないようですので思い切って購入。
    • Amazonのタイムセールで13,980円でした。

今回初めてYahoo! ショッピングを使用しましたが、PayPayポイント分を考慮すると価格.com最安よりも安くなることがままあり、今後も覗いてみようと思えました。

CPUグリス

当初買う予定はなかったものの、CPUクーラーを取り付け時にグリスをべったりと床につけてしまったために慌てて追加購入。 シミオシ OC Master 1g SMZ-01R-01Amazonで666円で購入。

Wi-Fiカード

選定したマザーボードTUF GAMING B550-PLUSにはWi-Fiモジュール用M.2スロットが存在します。これを活用してみたかったので、Wi-Fiカードを買うことにしました。

ただ、Wi-FiカードはPCの筐体内なので、電波を拾うためにアンテナも必要になるそうです。 AmazonでOKN(OK Networking Japan)という業者が出している AX210NGWとアンテナのセット を3,280円で購入しました。 これでWi-Fi 6EとBluetooth 5.3が使えるようになります。

Windows 11 Pro

HomeとProとでかなり差額がありますが、今後もMicrosoftが無料でOSのアップグレードを行ってくれることを期待して後悔しないようProを選択。 ショッピングサイトで"Windows 11"と検索するとどう考えても違法としか思えない怪しい商品が多くて辟易しますが、 大手で信頼できるぱーそなるたのめーるでパッケージ版を購入。24,050円で、PayPayポイント3,943円相当がついて、実質20,107円でした

買わなかったもの

以下は前のものを持ち越したので買いませんでした。

  • パソコンケース: SAMA 黒鉄
  • メモリ: Crucial DDR4-2400 8GB * 2
  • GPU: ASUS ROG STRIX-GTX1070-8G-GAMING
  • 電源: Corsair CX650M 80PLUS BRONZE

総額

今回のPC更新でかかった金額を合算すると、 26,980 + 16,902 + 2,975 + 16,875 + 13,980 + 666 + 3,280 + 20,107 = 105,708円でした。思ったより高かった…

PC組み立て

PC組み立てに関する自分用メモです。

旧部品の取り外し

おおむね以下の順番でやりました。

  • 光学ドライブを取り外す
  • GPUを取り外す
  • マザーボードからケーブル類を取り外す
    • ATX電源コネクターはとても固いので注意。ロック用の爪を押し込みながら、左右に揺らして少しずつ抜いていく。
  • PC本体からI/Oシールドを取り外す
    • 外側から押し込めば取れる。
  • メモリを取り外す
  • マザーボード本体を取り外す

新部品の設置

おおむね以下の順番でやりました。

  • 帯電防止袋の上にマザーボードを設置
  • 物理メモリを装着。説明書を見て、速度の出る推奨のスロットに刺す
  • CPUを装着
    • 向きがあるので注意。AMDのCPUには隅に目印の小さな三角があるので、それを目印にする。
  • CPUクーラーを装着
    • AK400を箱から取り出し、CPUグリスが塗ってあることに気づかず無作為に床に置いてしまうミスをする… 後日、前述のCPUグリスを購入。
    • CPUクーラーの土台を説明書に従い設置。マザーボードに付属していたパーツが余るので、袋に入れてとっておく。
    • ここにあるようにCPUグリスの塗り方には様々な流派があるが、Intel公式が推薦する、中央に米粒大のグリスを置く方法をとる。
    • CPUクーラーを説明書に従い設置。CPUグリスがうまく拡がっているのかはわからず不安。ヒートシンクとファンをつなぐ金具が2個余ったが、なぜ余るのかよくわからない。
    • CPU_FANという端子にケーブルを接続。CPU_OPTは水冷のファンやデュアルファンのCPUクーラー用なので基本使わない(参考)。
  • M.2 SSDを装着
    • マザーボードの説明書には「取り付ける M.2 SSD が部品を片面のみに搭載する片面実装タイ プの場合は、付属のゴムパッドを貼り付けてからご使用ください」と記述がある。しかし、M.2スロットは2つあるのにゴムパッドが1個しか付属しない。
    • テックウィンドのサポートに問い合わせたところ、「付属のゴムパッドはヒートシンクを取り付けるM.2にお取り付けください。ヒートシンクがついていない方についてはゴムパッドなしでも取り付けを行っていただいても問題ありません。」と返事あり。
    • よって以下のように設置。いずれもマザボ付属の長ネジを使用
      • M.2_1 (Gen4) の方にはゴムパッドなしでHIKSEMI FUTURE 2TBを装着(HIKSEMI FUTURE 2TBに付属していたネジは使わない)
      • M.2_2 (Gen3) の方にはゴムパッドありでWD_BLACK SN770 2TBを装着。さらにマザボ付属のM.2ヒートシンクをかぶせる。
  • Wi-FIモジュールを装着
    • Wi-FIモジュール用のM.2スロットにすんなり接続。マザボ付属の短ネジを使用。
    • アンテナ2個をブラケットに通し、付属していたネジでブラケットを固定。PC筐体の問題かもしれないが、ブラケットはゆるゆる。
    • Wi-FIモジュールの説明書には「付属のBluetoothケーブルの白い端をこのネットワークカードに接続し、黒い端をマザーボードのUSBソケット(F-USB)に接続します。」とあるが、そのようなケーブルは付属していない。→ 特にこのような接続はせずともBluetoothは使えている。
  • I/Oシールドを装着
    • 内側から外側へ。
  • マザーボードをPC本体に装着
    • ネジ穴の位置がなかなか合わず、力でマザーボードを押してネジ穴の位置を無理やり合わせながらネジを装着。あってるのか?
  • マザーボードに各種ケーブルを接続
    • ATX電源コネクターははめるのが大変。隙間がなくなるまで押し込む。  - USBケーブルを接続。ケーブルにはUSB3.0と印字があるがマザボにはUSB3.2と印字あり。どちらの速度になるのだろう?  - 背面ファンから延びるコネクターはCPU_FAN1に接続。ピンが1個余るがこれでよいらしい(回転数制御できるファンなら4pin、できないファンなら3pinを使う)
    • POWER SWやRESET SWは、三角のしるしがあるほうがプラス、無印のほうがGNDらしい。(参考
    • マザーボード側にPLEDの端子が2つあるが、普通は2ピンのほうを使うらしい。(参考
    • POWER SWなどの細かなケーブルは、テープで仮止めして一気に刺すと刺しやすいかも。
  • 光学ドライブを設置
  • GPUを接続

ここで電源を投入。マザーボードBIOSバージョンは3202と表示されました。ここによるとこれは 2023/07/31リリースのバージョンなので十分新しく、CPUもそのまま認識されました。ただ、気になったのはM.2_2に接続したWD_BLACKが認識されていない模様であることです。

画面の指示に従いF1キーを押してUEFI BIOSに入り、一旦電源切って再起動しました。こんどはWD_BLACKが認識されました。 これ以降はずっとWD_BLACKは認識されていますが、やや不安です。

起動するごとにピッとビープ音がなりますが、これは正常であることを表すものだそうです。 UEFI BIOSの設定でこのビープ音をオフにすることはできません。 スピーカーにテープを巻いてもうるさかったため、スピーカーは抜きました。

あとは、M.2_2に装着したWD_BLACKにWindows 11 Proを、M.2_1に装着したHIKSEMI FUTURE 2TBにUbuntu 22.04 LTSをインストールして無事トラブルなく動作することを完了。 Wi-FIモジュールは手動でドライバを当てる必要もなく、最初から認識してくれました。

使用しての感想

前のPCではリテールクーラーを使っていてかなりうるさかったのですが、AK400は3千円なのに静かでびっくりです。こんなことならもっと早く買っておけばよかったです。

若干期待外れだったのはアイドル時の消費電力です。更新前の自作PCではアイドル時の消費電力は40W程度でした(1ディスプレイ、Ubuntu 20.04)。しかし更新後では、アイドル時の消費電力は1ディスプレイで55W前後、2ディスプレイで60W前後という感じです(Windows 11)。 刺さっているデバイス数が増えていてOSも異なるので公平な比較ではありませんが、思っていたより消費電力が大きいです。作業してない時でもほぼ常に60W以上の電力を使用しているのはプレッシャーです。

Windows 11 PCの入手計画を立てる

仕事と私生活が忙しすぎて、現実逃避のために新しいPC、具体的にはWindows 11を入手したくなってしまい、 ここ1~2ヶ月ずっと調査をしていました。さっさと買えばいいだけの話なのですが、回り道しすぎでした…。

購入候補1. 中古ノートPCを買う

今、第8世代のインテル Coreプロセッサーを搭載した中古PCが大量に流通しています。ジャンクワールドなどを監視していると、程度にもよりますが第8世代のCore i5Core i7を積んだマシンが2 ~ 4万円程度で入手できます。

実は今実質的にメインとして使っているPCも中古で買ったDynabook R734で、CPUはCore i5-4200M。ストレージをSSDに換装しメモリを8GBに増強してはいますが、意外と使えています。

中古は気楽に扱えるという点では良いのですが、最近の世代のCPUと比べるとCPUの能力がやはり見劣りするのと、昔の機種に比べるとメモリ増設できないタイプの機種が増えているのとから、今回は購入を見送りました。

購入候補2. 新品ノートPCを買う

https://little-beans.net/を監視していると7万円前後でそこそこのスペックのノートPCが買えそうでした。例えば Ryzen 7 7730U+16GBメモリーで実質7万6668円! 楽天でHP Pavilion 15-ehが超激安【7/30まで】 – こまめブログ などです。

いざとなれば持ち出せるという点、UPS代わりのバッテリーが付属するという点でノートPCは魅力的ですが、 冷静に考えると持ち出すことはほとんどないのと、同じ額を出すならデスクトップのほうが良いスペックになることから、これも見送りました。

購入候補3. ミニPCを買う

会社で支給されているPCが大手メーカ製の超小型デスクトップなのですが、意外と問題なく使えます。 そこでミニPCも選択肢に入れていました。

最初はThinkCentre neo 50q Tiny Gen 4 /len102c0033)やIdeaCentre Mini Gen 8あたりの大手のものを考えていたのですが、調査につれ先鋭化してきて、いわゆる中華ミニPCに傾いていきました。

中華ミニPCはライセンス周りが怪しいものが多いらしい(参考)のですが、その中でもMINISFORUMはライセンスもクリアで、日本に代理店が存在し、ヨドバシカメラビックカメラなどの大手家電量販店でも取り扱いがあることから、MINISFORUMにほぼターゲットを絞りました。

その頃、ちょうどUN1265という製品が出ることを知りました(【西川和久の不定期コラム】USB PD給電でも動作する5万円台のCore i7搭載ミニPC。MINISFORUM「UN1265」 - PC Watch)。CPUはCore i7-12650H、メモリ32GB、SSD1TB、3画面同時出力、Wi-Fi 6E付属などと基本スペックが高いのに実質63,163円とかなり安く、ほぼこれを購入する寸前でした。

しかし、5chのスレを見ると、UM790Proという他機種で不具合報告を多く見つけました。 問題遭遇時に自力で解決できる自信がなかったので、今回は見送りました。

実際、後日UN1265公式のレビューを見たところプリインストールのWin11 Homeの動作がおかしいと報告があがっており、 自力で問題を解決できる人でないと使いこなすのは厳しい印象を受けました。

購入候補4. 自作PCを更新する

2017年に作成した自作PC ( 2017-02-11 Core i7 7700 + GTX 1070 なPCを自作 ) に入れていたLinuxを潰してWindows 11を入れることも考えましたが、 このPCのCPUがちょうど第7世代のインテル CoreプロセッサーのためにWindows 11のシステム要件をぎりぎり満たさず。自作PCを半分腐らせている状態でした。

これのCPUとマザーボードを入れ替えれば、これ以上PCを増やさずに、ミニPCを買うよりも安価に構成を更新できるはずです。 なので今回はこの方法を取りました。

詳細は別記事に書きますが、結局あれこれと部品を更新したくなったせいで、結果的にはミニPCを買うよりも高くついてしまいました。しかし出来栄えには満足しています。

Ubuntuでのディスク管理について調べたことのメモ

自作PCに入れているUbuntu 20.04.6 LTSのためにあれこれ調べたことのメモです。

接続されている物理デバイスに関する情報を得る

方法1: lsblkコマンド

$ lsblk

とすると、

sda      8:0    0 489.1G  0 disk 
├─sda1   8:1    0   512M  0 part /boot/efi
└─sda2   8:2    0 488.6G  0 part /
sdb      8:16   0 465.8G  0 disk 
├─sdb1   8:17   0   512M  0 part 
└─sdb2   8:18   0 465.3G  0 part 

と表示され、sda, sdbと2つのデバイスが接続されていることがわかります。

方法2: fdiskコマンド

$ sudo fdisk -l

とすると、i以下のようにデバイスのモデル名も含めたより詳細な情報が取れます。

ディスク /dev/sda: 489.5 GiB, 525112713216 バイト, 1025610768 セクタ
Disk model: Crucial_CT525MX3
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: gpt
ディスク識別子: (略)

デバイス   開始位置   最後から     セクタ サイズ タイプ
/dev/sda1      2048    1050623    1048576   512M EFI システム
/dev/sda2   1050624 1025609727 1024559104 488.6G Linux ファイルシステム


ディスク /dev/sdb: 465.78 GiB, 500107862016 バイト, 976773168 セクタ
Disk model: Samsung SSD 860 
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: gpt
ディスク識別子: (略)

デバイス   開始位置  最後から    セクタ サイズ タイプ
/dev/sdb1      2048   1050623   1048576   512M EFI システム
/dev/sdb2   1050624 976771071 975720448 465.3G Linux ファイルシステム

方法3: gnome-disks (GUI)

$ gnome-disksGUIツールが起動し、ストレージの容量やモデル名を確認可能です。

バイスの温度取得

方法1: hddtempコマンド

hddtempというコマンドが使えます。

$ sudo apt install hddtemp
$ sudo hddtemp /dev/sda
/dev/sda: Crucial_CT525MX300SSD4: 41°C

方法2: smartctlコマンド

smartctlというコマンドを使うと温度以外の多様な情報も同時に取れます。(参考)

$ sudo apt install smartmontools
$ sudo smartctl -A /dev/sda
smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.4.0-159-generic] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
...略...
194 Temperature_Celsius     0x0022   060   048   000    Old_age   Always       -       40 (Min/Max 9/52)
...略...

方法3: gnome-disks (GUI)

前述の$ gnome-disks で起動するGUIツールでも温度を始めSMARTデータの閲覧が可能です。

フォーマットなど

gnome-disks (GUIツール)

$ gnome-disksGUIツールが起動します。このツールで再フォーマットなどが可能です。

物理デバイスのマウント先

接続されている物理デバイスは基本自動でマウントされる模様。前述の$ gnome-disks で該当のデバイスを選択し、「内容」の欄を見ると、「/media/アカウント名/xxx にマウント中」と表示されているはず。