Panasonic の古いノートPC CF-Y7 に、Debian11(Bullsye)をインストールした記録です。
このPCは以前にもDebianを入れようとしましたが、インストールを開始すると画面が真っ暗になって前に進みませんでした。しかたなくUbuntuを入れて使っていましたが、 Ubuntuが32bitのCPUのためのイメージを出さなくなったので、Debianのインストールに再挑戦しようということになりました。
今回はフレームバッファを使わないという起動パラメータを追加してインストールを開始できました。
ただし、どういうわけかロケールに日本を指定できず、インストール後にロケールを追加しなければなりませんでした。これはその記録です。
ロケール追加すれば問題なく使えています。しかし、インストーラの選択と起動パラメータの組み合わせによっては、うまく行く方法があるようなので、今後続報としてページをあらためて記録する予定です。
型番: Panasonic CF-Y7 memory: 2.0GiB SSD: 160GB CPU: Intel Core2 Duo 1.8GHz✕2 入れたOS: Debian GNU/Linux 11 32bit (debian11.2.0-i386netinst.iso)
インストール時に選択するJapaneseやJapanには3つの役割があります。一つはインストール時の説明に使う言語です。これは日本語が選べず英語にしました。2つ目はタイムゾーン選択です。これは注意すると日本を選べます。3つ目はロケールです。ja_JP.UTF-8 を選べず、とりあえず en_US.UTF-8 でインストールしました。再起動後にja_JP.UTF-8 を追加して変更することができます。
漢字変換は ibus-mozc のインストールだけでうまくいきました。フォントは追加せずとも一応の漢字は使えていますが、今後IPAフォントなどを追加する必要が出るかもしれません。
続報、debian11.3.0-i386netinstを日本語ロケールでインストールでは、結局日本語でのインストールはできなかったものの日本語ロケールを指定してインストールすることができたことを報告しています。このへんの事情がi386(32ビット)だけのものかamd64(64ビット)もそうなのかは、試す機会がまだありません。
現在のバージョンは11.2.0が11.3.0になっていますが、基本的に同じです。
本家はwww.debian.orgです。Debian Buster のインストールで紹介した入手先ですが、デザインがちょっと変わりました。
このページの右上の[Download]をクリックすると、https://www.debian.org/download へ移ります。このページにいくと自動的に debian-11.2.0-amd64-netinst.iso のダウンロードが始まってしまいます。このファイルは、64ビットPC(amd64)用です。これは400MB程度なのですが、このページに行くたびにダウンロードになるのは煩わしい気もします。
amd64タイプのCPUが大部分を占め、network install がお勧めなので、こうなっていますが、amd64以外が必要ならば右下部の「More...Further links to downloads and software」からたどることができます。
たどる道筋は省いて32ビット用のものをダウンロードできるのはここ。
入手先はhttps://www.debian.org/distrib/。
このページは日本語で見えるはずです。
中程に [64 ビット PC netinst iso] [32 ビット PC netinst iso] が並んでいます。32ビットの方をクリックすると、debian-11.2.0-i386-netinst.iso のダウンロードが開始されます。現在は debian-11.3.0-i386-netinst.iso になっています。
右上の方には、インストールマニュアルへのリンクもあります。CPUの種類ごとに各国語が用意されています。
今回ダウンロードしたものはこれです。
debian-11.2.0-i386-netinst.iso
11.2.0はバージョンで、11になってからはじめてのバージョンが11.0.0、今回は2つめのものです。netinstはネットワークインストールで、最小限でインストールをはじめて、他のものはネット経由でインストール時に取り寄せるというものなので、多少古くても、インストール後は同等になると期待できます。ただし、不具合などが残っている可能性もあるので新しいもののほうが多少は安心です。
上記はDebianの本家のサイトです。この他に、Debian JP Projectという任意団体が運営する日本のサイトがあります。
それが、https://www.debian.or.jp/です。
Debian10の時には、一時的にリンクミスがありましたが、改善されました。今回のDebian11ではうまく行っています。
普通、一番目立つ「ダウンロード」に行くと思います。下図の赤い矢印です。
これをクリックするとこうなります。
いろいろなインストールイメージが選べるように一覧になっています。本家ではnetinstに誘導されますが、こちらではLiveイメージが推薦されているようです。
今回は、[ PC/サーバー用 netinstイメージ 64 bit(amd64) / 32 bit(i386)]から、[32 bit(i386)]を選択します。
最近はUSBに書き込んでUSBから起動するのが一般的です。Debianではとても簡単です。Windowsでもそれなりの方法があるはずです。
Debianの「インストールマニュアル」に書いてありますが、探すのはちょっと面倒です。Debian JP Projectのダウンロードのページの方がわかりやすい。
# cat hoge.iso > /dev/sdX # sync
です。最後のsyncの代わりにGUIでアンマウントしてもいいでしょう。
sdXのXを調べるためには、mountコマンドが使えます。
今回インストールマニュアルを改めて読むと、USBメモリへイメージを書き込んだ後に、残った領域にファイルシステムを作って追加のファームウェアなどを入れる方法が書いてありました。すでにもう一つのUSBメモリを使って済ませていますが、今後検討する価値はあるかもしれません。
# mkdosfs -n FIRMWARE /dev/sdX3 # mount /dev/sdX3 /mnt # cd /mnt # tar zxvf /path/to/firmware.tar.gz # cd / # umount /mnt
このように端末を使うように書いてありますが、GUIでも行けるでしょう。
現在、Debian10とUbuntu20.04を使っていますが、Ubuntuでは何かとうまくゆかず、Debianで作業しました。
rootになって実行する必要があります。書換対象のUSBメモリを表すsdXがsddかどうかは、よくよく確認しないと危険です。
adachi@fumita:/media/adachi/S1T/M03$ cat debian-11.2.0-i386-netinst.iso > /dev/sdd bash: /dev/sdd: 許可がありません adachi@fumita:/media/adachi/S1T/M03$ su パスワード: root@fumita:/media/adachi/S1T/M03# cat debian-11.2.0-i386-netinst.iso > /dev/sdd root@fumita:/media/adachi/S1T/M03# sync
一度ぬきさしをして、自動マウントさせると、次のように認識されます。
root@fumita:/media/adachi/S1T/M03# df ファイルシス 1K-ブロック 使用 使用可 使用% マウント位置 udev 7100928 0 7100928 0% /dev tmpfs 1425956 136440 1289516 10% /run /dev/sda1 28704676 15579956 11643556 58% / ...省略.... /dev/sdb1 976760404 449451308 527309096 47% /media/adachi/W1T /dev/sdc1 976759804 631019352 345740452 65% /media/adachi/S1T /dev/sdd1 481280 481280 0 100% /media/adachi/Debian 11.2.0 i386 n
Ubuntuでうまく行かなかった理由を調べてみます。必要のない方は読み飛ばしてください。
まず、sudoではダメな様子でした。Ubuntuは管理者のパスワードを入れずに、インストール時の一般ユーザーにsudoの権限を与えます。
adachi@ebook:~/Downloads/iso-deb$ sudo cat debian-11.2.0-i386-netinst.iso > /dev/sdb bash: /dev/sdb: 許可がありません
ちなみに、このUbuntuマシンでは ターゲットのUSBメモリは /dev/sdb に割り当てられています。
sudoではだめなようなので、管理者になります。Ubuntuで管理者(root)になるには sudo su とします。
adachi@ebook:~/Downloads/iso-deb$ sudo su root@ebook:/home/adachi/Downloads/iso-deb# cat debian-11.2.0-i386-netinst.iso > /dev/sdb bash: /dev/sdb: メディアが見つかりません
うまくいっていませんが、sudoとは反応が違いますね。
mountしたまま、パーティション操作を含む操作をしては不味いだろうと、自動でmountされたUSBメモリをGUIからumountしていたのが原因かもしれないと推測して、umountせずに実行してみました。
root@ebook:/home/adachi/Downloads/iso-deb# mount|tail -2 /var/lib/snapd/snaps/core_12941.snap on /snap/core/12941 type squashfs (ro,nodev,relatime,x-gdu.hide) /dev/sdb on /media/adachi/blue type vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2) root@ebook:/home/adachi/Downloads/iso-deb# cat debian-11.2.0-i386-netinst.iso > /dev/sdb root@ebook:/home/adachi/Downloads/iso-deb# sync
うまくいきました。
今回判明したポイントは、(1)sudoでなくsuを使う。(2)マウントしたまま書き込む。
CF-Y7 にUSBメモリを挿して、スイッチを入れるだけでUSBから起動しました。。CF-Y7 の BIOS セットアップは起動時にF2を押すと出てくるのですが、今回は不要でした。
すぐにインストーラーメニューが出てきます。
ここから、最初の [Graphical Install] を選んでも [Install] を選んでも画面は真っ黒で何も表示されません。何年か前に起こったことと同じです。
https://www.debian.org/releases/
「インストーラやカーネルに起動パラメータを追加する必要がある場合は、Tab (BIOS ブート) または e (UEFI ブート) を、次に down arrow を3回、それから end を押してください。これで、選択したメニューエントリのブートコマンドに入り、要望に合わせて変更できます。ヘルプ画面 (後述) では、いくつか共通で使用可能なオプションを列挙しています。オプションを指定してインストーラをブートするには、Enter (BIOS ブート) または F10 (UEFI ブート) を押してください。Esc を押すと、ブートメニューに戻り、行った変更を取り消します。 」
を見つけてとりあえず[Tab]を押すと、画面下部にインストールコマンドが表示されます。上の記述にある 「down arrow を3回、」のところはそのとおりにはなりません。
カーソルが [Graphical Install] にあれば、
/install 386/vmlinuz vga=788 initrd=/install.386/gtk/initrd.gz ---quiet _
カーソルが [Install] にあれば、
/install 386/vmlinuz vga=788 initrd=/install.386/initrd.gz ---quiet _
gtkフォルダ内のinitrd.gzを指定するかどうかの違いです。vga=の値を指定するのは Graphic install の場合だけと思っていたのですが、両方出ています。
実際の画面はこんな感じ。
vga=788 は 800x600 16bitsを指定していることになります。間違った値を指定すると、使用可能な video mode が列挙されますが、それを一覧表にすると次のようになります。列挙されるのは16進で表示されますが、vga=のあとは10進で指定しています。下の表は 16進数(10進数) としました。
Colours | 640x480 | 800x600 | 1024x768 | 1280x1024 |
---|---|---|---|---|
8 bits | 301 (769) | 303 (771) | 305 (773) | 307 (775) |
16 bits | 311 (785) | 314 (788) | 317 (791) | 31A (794) |
32 bits | 312 (786) | 315 (789) | 318 (792) | 31B (795) |
全部を試してみたわけではありませんが、表にある 771や791などを指定しても画面表示はなくなります。
1400x1050-8bit が vga=835 であるという情報を得てこれを試しました。
/install 386/vmlinuz vga=835 initrd=/install.386/gtk/initrd.gz ---quiet _
初めて真っ暗な画面にならずに、次の表示が現れました。343は835の16進表示です。
Undefined video mode number 343 Press <ENTER> to see video modes available, <SPACE> to continue
<ENTER>を押すと上記の「使用可能な video mode」が列挙され、<SPACE>だとエラーログが止まらなくなります。
初めて文字が表示されたので、これに fb=false を加えてみました。これは Help の中に vga=normal fb=false というパラメータの例があったことに由来します。
すなわち
/install 386/vmlinuz vga=835 fb=false initrd=/install.386/gtk/initrd.gz ---quiet _
やはり、次のような表示になります。
Undefined video mode number 343 Press <ENTER> to see video modes available, <SPACE> to continue
違うのは、<SPACE>で install が開始されるところです。
後日、Graphic install ではなく Install を選択して vga=835 を指定していれば、 fb=false を指定しなくても install に進めたことがわかりますが、これは次のページで。
インストールに使う言語の指定ですが、インストール後のシステムのデフォルト言語にもなります。
Bulgarian の右の ∎∎∎∎∎∎∎∎∎ は Debian10 の記録と見比べると、キリル文字がうまく表示されない部分のようです。Catalanの下にChineseがあるはずですが、見えません。スクロールしていくと、Italianの次に出てくるはずのJapaneseもありません。
fbを無効にした影響なのだと推察しますが詳細は不明です。
しかたがないのでEnglishを選択します。
タイムゾーンとロケールに使うと言っています。これもいつもは日本があるのに、なかったのですが、otherからたどっていけます。説明を改めて読むと書いてありました。
[other] ⇨ [Asia] ⇨ [Japan]
とたどってJapanにします。
en_で始まるものしかリストにありません。en_GB.UTF-8, en_US.UTF-8 をはじめ、en_NG.UTF-8, en_PH.UTF-8 などたくさんあります。
en_US.UTF-8にしておきます。あとで追加することも可能でしょう。
これにはJapaneseがあります。
ネットワークハードウェアにnon-freeのファームウェアが必要とか。本来なら有線でインストールして、後にパッケージマネージャで追加するのが良いが、今回は有線のない場所で、Wi-Fi環境で作業せざるを得ないので、仕方がない。
必要なのは iwlwifi-4965-2.ucode
「iwlwifi-4965-2.ucode」などでの検索で https://packages.debian.org/bullseye/
このページの最下部に「firmware-iwlwifi のダウンロード」の欄があって、そこに アーキテクチャ all が一つだけなので、そこから、 https://packages.debian.org/bullseye/
ダウンロードされるパッケージはfirmware-iwlwifi_20210315-3_all.deb。
解凍せずにこのまま適当なUSBメモリにコピーして CF-Y7 に追加で挿せばOKです。
有線の接続口もあるので、インストールでどちらを使うかを選択する必要があります。もちろん今回はWi-Fiの口です。
enp5s0: Marvell Technology Group Ltd. 88E8055 PCI-E Gigabit Ether wlp3s0: Intel Corporation PRO/Wireless 4965 AG or AGN [Kedron] Ne
wlp3s0 を選びます。
Wi-Fiの接続先が検出されて一覧になります。自宅だけでなく隣家のものも検出されるスマホなどで見慣れたものがでます。PassKeyがすぐにわかるものを選択する必要があります。
ネットワークのタイプを聞かれます。
Wireless network type for wlp3s0: WEP/Open Network WPA/WPA2 PSK
WPA/WPA2を選びます。
WPA/WPA2 PSK 認証のパスフレーズを入力します。
認証に少し時間がかかります。
Dedianの昔ながらの設定項目です。いつもと同じなので詳細は省略。
ホスト名 ドメイン名 rootのパスワード rootのパスワード確認入力 一般ユーザーの普通の名前 ユーザー名 そのパスワード パスワード確認入力
選択肢は4つです。
ガイドありで、ディスク全体を使用 ガイドありで、ディスク全体を使用(LVMを使う) ガイドありで、ディスク全体を使用(暗号化してLVMを使う) 手動
ディスク全体を使うのであれば、次にどのディスクにするかの選択が続くと書いてあります。
このPCは現在WindowsVISTAとUbuntuのデュアルインストールです。Windowsはまず使わないので、ディスク全体を使ってもいいのでけれど、今回はいままでのUbuntuの部分だけを入れ替えることにします。
手動(Manual)を選択すると、次のような画面になります。
最初の5つの設定は使いません。次にSCSI2(sda)として #1, #2, #5, #6 の4つのパーティションが見えています。
スクロールすると使用しているUSBメモリも sdb, sdc として見えてきますがこれは使いません。
SCSI2(sda)はUbuntuをインストールした時にWindowsパーティションをWindowsの機能で縮小し、2つのパーティションを追加しています。#1, #2 はWindowsのパーティション、#5が古いUbuntu、#6がスワップです。#5にインストールするように設定します。#6はそのまま使用されるでしょう。
今回は不要ですが、パーティションの切り直しや拡大・縮小もここからできます。
#5を選択します。「Use as: do not use」になっていますが、これは今回のインストールでの役割で使うことになっていないということです。
[Use as: do not use]で[Enter]を押すと、file system の選択になります。
今までどおりに Ext4 として使うことにします。
Ext4を選ぶと、3つの設定項目が増えています。
Format the Partition: を "no, keep existing data" から "yes, format it" にします。
Mount point: を "none" から "/" にします。
どちらも選択することで入力できます。
Formatを選択することで、項目が増えますが変更しなくて良いでしょう。
[Tab]キーを使ってカーソルを<Go Back>に移してから、[Enter]でもどります。
#5の部分に"/"が入っています。ここにルート以下全部の構造を入れるという指示になっています。
これでパーティションへの変更指示は終了ですが、他の指示がないか待っている状態です。
先に進むのには<Go Back>ではありません。スクロールして下の方を表示させ、[Finish partitioning and write changes to disk]を選択して[Enter]します。
(<Go Back>を選択してしまうとインストーラのメインメニューに行ってしまいます。ここのメニューに沿って進行しているとはいえ、我々にとってはここに戻ると戸惑うことになります。この場合は[Pattition disks]に進めば元の所に戻れます。)
[Finish partitioning and write changes to disk]に進むと最終確認になります。確認後<Yes>を選択して[Enter]します。
#5と#6だけが変更されることを示しています。これは指示通りです。違っている場合は<No>で戻ってやり直すことができます。
diskにパーティション情報の書き込みが行われると、Base system をインストールしていると表示が出て少し待たされます。
Debianのミラーサイトを設定します。まずJapan選択し、続いてデフォルトとして、deb.debian.orgを選んでくるので[Enter]します。
次はプロキシーサーバーを尋ねてきますが、なければ空欄のままにします。
次にpopularity-contestに参加するかを聞いてきます。最近はNoがデフォルトになりました。このまま[Enter]で進みます。
次にインストールするソフトを選択します。候補は大してありません。
[*] Debian desktop environment [*] ... GNOME [ ] ... Xfce [ ] ... GNOME Flashback [ ] ... KDE Plasma [ ] ... Cinnamon [ ] ... MATE [ ] ... LXDE [ ] ... LXQt [ ] web server [*] ssh server [*] standard system utilities
以前に比べてデスクトップ環境の種類が増え、サーバーのたぐいは減りました。これ以外のソフト(ここで選択しなかったものを含めて)はインストール後に追加できます。
デスクトップ環境は、やはりデフォルトのままGNOMEを使うことにします。以前Cinnamonを追加で入れて切り替えて使用しようとしたが、アイコンが重複するなど設定がぶつかって難儀したことがあります。またXfceやLXDEなどの軽量を謳った環境を使ったこともありますが、それほど速くならないし、快適ではありませんでした。
このあと、本格的にネットワーク経由でのインストールが始まります。今回はWi-fi経由なので不利ですが、30分程度で終われました。
最後に、GRUBをインストールするか聞いてきます。Windowsも入っているので、現在Windows専用のブートローダーが入っています。これをWindowsとDebianを選択して起動できるブートローダーに変えようとしています。もし、GRUBがすでに入っているDebian以外のOSを正しく認識できなければDebian以外のOSが起動できなくなります。
画面には Windows Vista が入っていることを認識したとありますので、<Yes>と答えればいいのです。認識されない場合に打つ手はありませんが、いままでにそんなことになったことはありません。
次にGRUBをいれる場所を選択します。説明に従って primary drive を選択してやります。
/dev/sda が内蔵されたSSDで、sdb, sdc がUSBメモリです。
これで残るは再起動のみです。インストールに使ったメディアを抜けとありますが、もう少し進んでOSがダウンしてから抜いたほうがすんなり行きます。continueする前に抜くとスクリプトが停止して自動で再起動できなくなったことがありました。そんな時は手動で再起動すればいいだけではあります。
再起動するとGRUBの起動メニューになります。Windows VISTA が入ったままなのでこれを検出してメニューに入っています。
画面の選択肢は次の4つ。
*Debian GNU/Linux Advanced options for Debian GNU/Linux Windows Recovery Environment (on /dev/sda1) Windows Vista (on /dev/sda2)
触らなければ5秒程度でデフォルトの Debian GNU/Linux が起動します。
設定したユーザーを選んで(ひとつしかありませんが)パスワードを入れるとデスクトップになります。
インストールの都合で en_US.UTF-8 になってしまいました。
localeコマンドで現状を把握します。
adachi@dvorak:~$ locale en_US.UTF-8 LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL=
/etc/locale.gen を編集します。ja_JP.UTF-8 UTF-8 の行頭の#を削除するだけです。
# This file lists locales that you wish to have built. You can find a list # of valid supported locales at /usr/share/i18n/SUPPORTED, and you can add # user defined locales to /usr/local/share/i18n/SUPPORTED. If you change # this file, you need to rerun locale-gen. ... # en_SG.UTF-8 UTF-8 # en_US ISO-8859-1 # en_US.ISO-8859-15 ISO-8859-15 en_US.UTF-8 UTF-8 # en_ZA ISO-8859-1 # en_ZA.UTF-8 UTF-8 ... # iu_CA UTF-8 # ja_JP.EUC-JP EUC-JP ja_JP.UTF-8 UTF-8 # ka_GE GEORGIAN-PS # ka_GE.UTF-8 UTF-8 ...
locale-gen でja_JP.UTF-8を作成します。
root@dvorak:/home/adachi# /usr/sbin/locale-gen Generating locales (this might take a while)... ja_JP.UTF-8... done en_US.UTF-8... done Generation complete.
/etc/locale.gen に基づき、#でコメントアウトしていない2つのロケールが生成されたということです。
この2つのロケールのうち、ja_JPを有効にします。
root@dvorak:/home/adachi# /usr/sbin/update-locale LANG=ja_JP.UTF-8 *** update-locale: Warning: LANGUAGE ("en_US:en") is not compatible with LANG (ja_JP.UTF-8). Disabling it.
互換がないのでen_USを無効にすると言っていますね。複数を有効にできる組み合わせもあるということですね。
localeコマンドで確認します。
adachi@dvorak:~$ locale LANG=ja_JP.UTF-8 LANGUAGE= LC_CTYPE="ja_JP.UTF-8" LC_NUMERIC="ja_JP.UTF-8" LC_TIME="ja_JP.UTF-8" LC_COLLATE="ja_JP.UTF-8" LC_MONETARY="ja_JP.UTF-8" LC_MESSAGES="ja_JP.UTF-8" LC_PAPER="ja_JP.UTF-8" LC_NAME="ja_JP.UTF-8" LC_ADDRESS="ja_JP.UTF-8" LC_TELEPHONE="ja_JP.UTF-8" LC_MEASUREMENT="ja_JP.UTF-8" LC_IDENTIFICATION="ja_JP.UTF-8" LC_ALL=
rootで実行したので、これがシステムのデフォルトになるのだろうと思います。ユーザーごとにできるのかもしれません。
/homeのディレクトリは、再起動時(たぶんログインでいいと思う)に日本語に変えると言ってきますが、そのままにします。
これで、いつもやっている LANG=C xdg-user-dirs-gtk-update の実行が今回は不要になりました。
ロケールを変更するのに dpkg-reconfigure locales が使えるという情報もありましたが、ここでは使えませんでした。
日本語の文字と漢字変換を入れて設定するのは、かつてはとても面倒なものでした。最初からインストール言語やロケールに日本,日本語を選べばすんなり入るようになりましたが、後からロケールを変更しただけで全部がうまく行くかについては経験がありません。
パッケージマネージャによると、input-method には ibus が入っている様子です。前のバージョンのDebian10ではuimでしたが、漢字変換モードなのか直接入力なのかの表示が出なくて、ibusに変更してうまく行ったという記憶があります。これで正解でしょう。
ただし、ibus-mozc が入っていないので、漢字変換がanthyです。パッケージマネージャで ibus-mozc 導入すれば必要なものは依存関係を考慮して入れてくれます。
IPAなどのフォントが必要であれば入れておくのがいいでしょう。