UEFI環境でUSBメモリにLinuxをインストールする

USBメモリにLinuxをインストールする場合、UEFIではなくレガシーで起動させてインストールする必要がありましたが、最近はノートPCを中心にUEFIオンリーのPCが増えています。また、UEFI環境でSSDの領域を分割してデュアルブートというのもかなりハードルが高いようです。

となると、UEFI環境でUSBメモリから(Liveシステムではなく)Linuxを起動したいということで、どうしたらよいか調べてみました。

“UEFI環境でUSBメモリにLinuxをインストールする” の続きを読む

WebARENAのUbuntuをアップデートしてみた

WebARENAのUbuntuは18.04あたりで運用していたのですが、22.04.1 LTSにアップデートしてみました。

18.04の状態でアップデートをかけて再起動してログインしてみたら、

New release '22.04.1 LTS' available.
Run 'do-release-upgrade' to upgrade to it.

というメッセージが出ました。

早速、

$ sudo do-release-upgrade

としてみたところ、しばらくしてsshで接続して実行するのはオススメしない、というようなメッセージが出ましたので、Webコンソールからログインして実行しました。

いくつか設定ファイルが新しくなるようですが、書き換えているものもあったので古いものを保持した意外は特に操作はありません。

ただ、アップグレード後、以前構築したFlaskで動かしているアプリが動作しなくなってしまいました。
ちょっと悩んでしまいましたが、調べてみたところ、Pythonのモジュールが入っていないだけでしたので、

$ sudo pip3 install paho-mqtt
$ sudo pip3 install uwsgi
$ sudo pip3 install Flask-HTTPAuth

でほぼアップデートは完了です。

CPUの動作周波数を制限する

いまさらですが、作業用のPCとは別にWeb閲覧・調査用にCore i3-3220TのPCをLinuxMint21を入れて使っています。
が、このPCはCPUの負荷がかかるとCPUファンの音がうるさくて耳障りなので、閲覧用にエントリーレベルのCPUで1台組もうかと思ったのですが、今はあまり自由にパーツを選択できる状況ではないようです。そこで、CPUの周波数を制限してみました。

$ sudo apt install linux-tools-common linux-tools-generic

としてから、

$ sudo cpupower frequency-set -g powersave

として、CPU周波数のガバナを最低周波数に固定します。現在の設定は以下で確認できます。

$ sudo cpupower frequency-info
analyzing CPU 0:
  driver: intel_cpufreq
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 20.0 us
  hardware limits: 1.60 GHz - 2.80 GHz
  available cpufreq governors: conservative ondemand userspace powersave performance schedutil
  current policy: frequency should be within 1.60 GHz and 2.80 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency: Unable to call hardware
  current CPU frequency: 1.60 GHz (asserted by call to kernel)
  boost state support:
    Supported: no
    Active: no
    2800 MHz max turbo 4 active cores
    2800 MHz max turbo 3 active cores
    2800 MHz max turbo 2 active cores
    2800 MHz max turbo 1 active cores

これでしばらく様子を見てみたいと思いますが、とりあえずはすぐにうるさくなったりはしないようです。また、Webの閲覧くらいなら全く問題はなさそうです。

nimを動かしてみた

nimをインストール

公式サイトのインストール手順の一番最初にあるchoosenimを使った方法を試してみる。

$ curl https://nim-lang.org/choosenim/init.sh -sSf | sh

とすると、テレメトリ情報の取得可否の質問をされるが、すぐ完了する。
~/.profile か ~/.bashrc に

export PATH=/home/${USER}/.nimble/bin:$PATH

を追加するよう表示されているので、 ~/.bashrc の最後に記述を追加してシェルを開いて、バージョンを確認する。

$ nim -v
Nim Compiler Version 1.6.6 [Linux: amd64]
Compiled at 2022-05-05
Copyright (c) 2006-2021 by Andreas Rumpf

git hash: 0565a70eab02122ce278b98181c7d1170870865c
active boot switches: -d:release

サンプルを動かしてみる

nimのドキュメントにある、Learn X in Y minutesからソースコードをダウンロードしてきて、

$ nim c learnNim.nim

でコンパイル、

$ ./learnNim

で実行できた。

$ nim c -r learnNim.nim

とすると、コンパイル後実行してくれるので、Pythonと同じ感覚で使える・・・・かもしれない。

オンラインでコンパイル&実行

https://play.nim-lang.org/ にて、オンラインでコンパイル&実行ができる。ただし、対話的なものはだめっぽい。(よくわからん)

プログラミング言語Nim

Nimというプログラミング言語があるらしい。
ちょっと見た感じ、とても興味深い気がするので、是非トライしてみたい。
知ったのは、

がきっかけ。

お役立ちリンクも貼っていただいた。

同じ内容だけど、自分で参照するために貼っておこう。

電気通信事業法

ググっていてたまたま見つけたのだけど、電気通信事業参入マニュアルガイドブックなるものがあることがわかった。

これによると、

ということで、特定のユーザー間での送受信機能があると、電気通信事業法上の登録または届出が要るらしい。

これって、もしかして例えばWordPressにユーザー間のメッセージの送受信ができるプラグインを入れて運用を始めた時点で該当しちゃうってことなのだろうか??(自分は入れてないけど)

あ、広告入れなければいいのかな??

Ryzen Pro 4750G + Linux Mint 20.3 Cinnamon(Edge)

4度目(実際にはもっといろいろ試しています)の挑戦です。

Linux Mintのエディションには、Cinnamon、Cinnamon(Edge)、MATE、Xfceがあり、2番目の『Cinnamon(Edge)』ってなんだ?と思って調べてみたところ、初めからカーネルが5.13系になっているもののようです。

ですので、こんどはこちらでトライしてみました。あわせて、今回はインストールUSBで起動する際にBIOSではなく、UEFIを選択しました。(先にセキュアブートは禁止してあります)

で、インストーラでは平然とマルチモニタをしっかり認識して、らくらくとインストールが進みます・・・が、インストールして再起動すると、GRUBでRecovery Modeじゃないと起動できません。正確には、Linuxの起動メッセージが2〜3行くらい表示された後、何も画面が表示されなくなります。

Recovery Modeでは800×600しか表示されないのですが、なんとかこれでアップデートの際のミラー選択をして、すべて更新をかけます。

で、更新しても、やっぱりGRUBでRecovery Modeじゃないと起動できません。おまけに、ドライバインストールがいるよ、という表示が出るものの、ハードウェアをスキャンしても何も検出されません。

で、このままAMDのGPUドライバをインストールしてきます。


http://repo.radeon.com/amdgpu-install/latest/ubuntu/

の下の、

http://repo.radeon.com/amdgpu-install/latest/ubuntu/focal/

からインストール用のドライバパッケージ(amdgpu-install_21.50.50000-1_all.deb)をダウンロードしてきて、ダブルクリックしてインストールします。

その後、

$ sudo apt update
$ sudo apt upgrade
$ sudo apt install build-essential
$ sudo amdgpu-install

としたところ、無事にマルチモニタで動作するようになりました。

で、あとはいつものように言語の設定で、システムのロケールと言語サポートをインストール。
こんどは無事に動作し続けるといいのですが・・・。

Ryzen Pro 4750G + Linux Mint XFCE

先にマルチモニタ表示ができずにUbuntuにしたRyzen 7 Pro 4750G + DeskMini X300ですが、やはりUbuntuが使いにくくてなんとかLinux Mintに戻すチャレンジをしてみました。

が、今回はいつものMATEではなく、Cinnamonでチャレンジしたところ、

  • 標準のkernel 5.4系 : マルチモニタ認識せず
  • kernel 5.8系 : メンテされてないので対象外
  • kernel 5.11系 : まったく画面表示が出ない
  • kernel 5.13系 : マルチモニタ認識しない上に、ネットワークデバイスも認識しない(dmesgでは認識してるのに・・・)

ということで、Cinnamonでも途方に暮れてしまいました。

そこで、Linux Mint XFCEを試してみたところ、標準ではやはりマルチモニタを認識しなかったのですが、インストール後にとりあえずアップデートだけかけて、

http://repo.radeon.com/amdgpu-install/latest/ubuntu/

の下の、

http://repo.radeon.com/amdgpu-install/latest/ubuntu/focal/

からインストール用のドライバパッケージ(現在あるのはamdgpu-install_21.50.50000-1_all.deb)をダウンロードしてきてインストール、

その後、


$ sudo apt update $ sudo apt upgrade $ sudo amdgpu-install

としたところ、無事にマルチモニタで動作するようになりました。\(^o^)/

しばらくこれで使ってみようと思います。

【追伸】

しばらく・・・・というほど使って見るまでもなく、Chromeを使っているとフリーズするようになってしまいました。😔

Arch-Linuxをインストールしてみた

だいぶ前から触ってみたかったArch-Linuxをインストールしてみることにします。インストールガイドが秀逸なので、これ沿ってVirtualBox上でインストールしてみました。早速、ガイドに沿ってすすめていきます。

インストールイメージGnuPG鍵をダウンロードして、

$ gpg --keyserver-options auto-key-retrieve --verify archlinux-2022.03.01-x86_64.iso.sig

として、署名検証をします。出力された結果のフィンガープリントが公開されているものと一致していればいいのでしょう。

一致していたら、とりあえずCPU4コア、メモリ4GB、ストレージ30GBとして仮想マシンを作成し、インストールメディアをマウントして起動します。

起動したら、

# loadkeys jp106

として、日本語キーボードにマップを合わせます。

マップがあったら、

# ping archlinux.jp

としてネットワークの疎通を確認します。

# timedatectl set-ntp true
# timedatectl status

として、時計を合わせ、合っていることを確認します。

# fdisk /dev/sda

として、ディスクのパーティションを作成します。

/dev/sda1を4GBでLinux swapに、/dev/sda2を26GBでLinuxに設定しました。

wコマンドでパーティションテーブルを書き込んで、確認します。

パーティションをフォーマットします。

swapを有効化して、ルートパーティションを /mnt にマウントします。

必須パッケージをインストールします。

# pacstrap /mnt base linux linux-firmware

fstabを生成します。

インストールしたシステムにchrootします。

タイムゾーンと時刻の設定をします。

ローカリゼーションします。

で、ここで、

とさらっと書かれていたりするのですが、viすら入ってません。

なので、

# pacman -S vim

として、vimをインストールしてからvimで /etc/locale.gen を編集して、

en_US.UTF-8 UTF-8
ja_JP.UTF-8 UTF-8

の行のコメントを外して保存してからロケールを生成します。

LANG環境変数を設定する/etc/locale.confを作成します。

コンソールキーマップを設定する/etc/vconsole.confを作成します。

ホストネームを設定します。

initramfsを生成します。

rootのパスワードを設定します。

GRUBをインストールする

ブートセクタにインストールする。

chroot環境から抜けて再起動する。

仮想メディアを外して起動すると・・・

で、Enterキーを叩くと、無事に

ということで、起動成功しました。

引き続き、一般的な推奨事項に沿って、設定していく感じでしょうか。

Ryzen Pro 4750G + Ubuntu 20.04.4 LTS

前回、LinuxMintでマルチモニタ表示ができなかったのでkernel 5.8系をインストールしたDeskmini X300 + Ryzen Pro 4750Gですが、kernel 5.8系はアップデートが提供されていないことに気づきました。

調べてみると、AMDが提供しているドライバをインストールするのが正しいようです。(なんで?標準で表示してくれる方が圧倒的に嬉しいのですけど)

手順は、

http://repo.radeon.com/amdgpu-install/latest/ubuntu/

の下の、

http://repo.radeon.com/amdgpu-install/latest/ubuntu/focal/

からインストール用のドライバパッケージ(現在あるのはamdgpu-install_21.50.50000-1_all.deb)をダウンロードしてきて、これをインストールします。

インストールしたら、

$ sudo apt update
$ sudo apt upgrade
$ sudo amdgpu-install

でインストールします。自分でコンパイル環境とソースを引っ張ってきてビルドするようなので、数百MBのダウンロードを行った後でコンパイルを行うようです。

で、Linux Mintのデフォルトのkernel 5.13系で起動してインストールしようとしたところ、5.8系をインストールしたためか、依存関係に矛盾があるということで失敗してしまいました。

どうせならということで、クリアインストールすることにしたのですが、手元にUbuntu 20.04.4 LTSのインストーラが入ったUSBメモリがあり、(LinuxMintだと思って)起動したところ2画面とも正しく認識することに気づきました。

で、「もしかして、Ubuntuはドライバインストールしなくても大丈夫なのでは?」と思って、そのままインストールしたところ・・・インストール後は全く画面が出なくなりました。

仕方ないので、GRUBのところからRecovery Modeで起動して、上記の手順でインストールしてから、通常手順で起動すると無事に2画面表示できるようになりました。

それにしても、インストール手順が書いてある

https://amdgpu-install.readthedocs.io/en/latest/install-prereq.html#downloading-the-installer-package

にたどり着くのにすごく苦労しました。もう少し探しやすくしてほしい・・・。