Debian 11 + FreeBSD 13
debian 11
もっと時間がかかるかと思っていたら、以外にさっと出てきた。
https://mag.osdn.jp/21/08/17/115600
これはもうupgradeして見る鹿。やり方は、下記を参照。バックアップ大事って口をすっぱく言っているね。 How to upgrade Debian 10 to Debian 11 Bullseye using the CLI
下記は11用のaptファイル。
debian:~$ cat /etc/apt/sources.list deb http://ftp.jaist.ac.jp/debian/ bullseye main contrib non-free deb-src http://ftp.jaist.ac.jp/debian/ bullseye main contrib non-free deb http://security.debian.org/debian-security bullseye-security main contrib non-free deb-src http://security.debian.org/debian-security bullseye-security main contrib non-free # bullseye-updates, previously known as 'volatile' deb http://ftp.jaist.ac.jp/debian/ bullseye-updates main contrib non-free deb-src http://ftp.jaist.ac.jp/debian/ bullseye-updates main contrib non-free
i386なマシンに適用してみた。upgradeの途中で質問が出て来るのは勘弁して欲しい。順調にやってるかと思ったら、質問で止っている事が何度も有ったよ。
2時間もグチャグチャやってて、その進度が確認出来無くなった。lxdeなコンソールから実行したんだけど、途中スクリーンセーバーが働いて暗くなってたんだ。回復しようとしたけど画面がチカチカするだけ。どうしようも無くなったんで、電源を強性的に切断。再起動するも同様にチカチカ。もう諦めるしか。
いじけて、無線LANってどうやって設定したかな、なんてのを調べてみたり。
dual boot
dual boot を考えようってんで、探していたら、面白い物を発見。
https://jssst.or.jp/files/user/taikai/2020/SOFTWARE/software2-2.pdf
そうか、リナとBSDの合作がいいのか。
マルチブートで搜してみるかな。
LinuxBean + FreeBSD + Windows10 マルチブート
grub2 を使うのが楽そう。昔はMBMなんてのを使っていたけどね。
もともと入っていたUbuntuをリサイズしてFreeBSDを 追加する方法
Linuxと一緒にFreeBSDをインストールする(grub) こちらも追加する方法
「GParted」の使い方 肝心の道具の扱い方法
先にリナを入れて後からBSDって方針。それよりどんな組み合わせが良いか。Debian+FreeBSDって事になるな。OpenBSDも混ぜてあげようとか思ったけど、ややこしいのは止め。そんなに頑張らなくてもいいよ。
先にリナを入れるのが本流っぽいけど、debianのハンドブックを見ると、後からリナを入れると、先に入っているOSを自動認識して、良い具合に設定してくれるらしい。
install freebsd 13
と言う事で、先にFreeBSDです。次のようにしてインストール用のUSBを準備する。
debian:~$ sudo dd if=FreeBSD-13.0-RELEASE-i386-memstick.img of=/dev/sdb bs=1M conv=sync 831+1 records in 832+0 records out 872415232 bytes (872 MB, 832 MiB) copied, 136.08 s, 6.4 MB/s
第2章 FreeBSD のインストール こちらを参考にGPTにしておく。
[sakae@fb ~]$ gpart show ada0 => 40 488397088 ada0 GPT (233G) 40 1024 1 freebsd-boot (512K) 1064 100662272 2 freebsd-ufs (48G) 100663336 8388608 3 freebsd-swap (4.0G) 109051944 379345184 - free - (181G)
残りの181Gをリナにする予定。
install debian 11
何時も迷うんだけど、ISOなファイルはどう焼けばいいの? 調べるとdebian上ではcpでいいよらしいんだけど、今の舞台はFreeBSD上。伝統に従ったよ。
root@fb:~ # dd if=debian-11.0.0-i386-netinst.iso of=/dev/da0 bs=1M conv=sync 469+0 records in 469+0 records out 491782144 bytes transferred in 102.201023 secs (4811910 bytes/sec)
メディアがちゃんと使えるか確認で、インストールの真似をしたら、途中でWiFi用に、iwlwifi5000-[1-5].ucode を要求されたよ。後で
sudo apt install firmware-iwlwifi
すればいいのか。
それから、インストールするDesktopは、何も無しにする。先代ではLXDEを使っていたけど、今回の更新で懲りたからね。多分グラフィック・ログイン関係がおかしくなったんだろうね。正直手の施しようが無かった。
オイラーの欲しいのはX環境。必要時にicewmを立ち上げるだけで十分。Windowsの真似をして、複雑怪奇にする事無いよ。
grub2
取り敢えず入れた。難関はHDDへのインストール場所。余っている所を選んで、後はお任せ。 勝手にインストールしてくれた。最後にGRUBを入れるよってんで、候補を230GのHDDに指定した。紛らわしいのは、インストールに使用してるUSBメモリーも候補に出てきた事。これは除外しておいてもいいんでないかい。ま、取り敢えず完了した。
再起動したら、FreeBSDが出てきた。Debianを選ぶチャンスなんて全く無し。これは孤待ったぞと。インストールに使ったUSBからオプションを選んで、レスキューモードを指定。これを使って、GRUBを/dev/sdaに強制書込み。
そしたら、今度はLinuxしか選択肢の無いメニューが出現。さあ、困った。みんなに助けを求めたよ。
sakae@deb:~$ cat /etc/grub.d/40_custom #!/bin/sh exec tail -n +3 $0 # This file provides an easy way to add custom menu entries. Simply type the # menu entries you want to add after this comment. Be careful not to change # the 'exec tail' line above. menuentry 'FreeBSD' { insmod ufs2 set root='(hd0,2)' kfreebsd /boot/loader }
こんな設定を書いてから、更新する。
root@deb:/etc/grub.d# update-grub Generating grub configuration file ... Found linux image: /boot/vmlinuz-5.10.0-8-686-pae Found initrd image: /boot/initrd.img-5.10.0-8-686-pae Found FreeBSD 13.0-RELEASE-p3 on /dev/sda2 done
これが本来の挙動なんだろうね。上の設定を見ると、ufs2なんてのが在るけど、リナって、BSD系のファイル・システムも扱えるんだな。だから、FreeBSDのローダーを見付けて起動出来るとな。
上の例だと、古典的な起動方法になる。FreeBSDのbootの最終段階であるloaderを起動してるからだ。一番素直な方法。ローダーの豊富なサービスが使える。それに対して、 Grub2 Other Os の方法も有る。こちらはダイレクトにカーネルを起動しちゃう方法だ。自由度が低くなるけど、多少は起動が速くなる。まあ、お好みでって事だな。
sakae@deb:~$ sudo parted sda -l Model: ATA HITACHI HTS54502 (scsi) Disk /dev/sda: 250GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 1 20.5kB 545kB 524kB 2 545kB 51.5GB 51.5GB freebsd-ufs 3 51.5GB 55.8GB 4295MB 4 55.8GB 55.8GB 1049kB bios_grub 5 55.8GB 249GB 193GB ext4 6 249GB 250GB 1023MB linux-swap(v1) swap
これを見るとFreeBSDが用意したbootエリアは無視されて、debianが用意したエリアにgrubを入れてるね。
wifi
有線LANを繋いで、インストールをするんだけど、その時に指定したリポジトリィーには、清く正しい設定しか無い。wifi用の倉庫も指定する。(contrib non-free)
sakae@deb:~$ cat /etc/apt/sources.list : deb http://ftp.jaist.ac.jp/debian/ bullseye main contrib non-free
何ヵ所かあるので、追加。そして、apt update する。それから、前記のファームウェアをインストールすれば良い。
sakae@deb:~$ apt list |& grep iwlwifi firmware-iwlwifi/stable,now 20210315-3 all [インストール済み]
確認出来たら、 wpa_supplicant.conf
を作っておいて、
sakae@deb:~$ cat /etc/network/interfaces : auto wlp5s0 iface wlp5s0 inet dhcp wpa-conf /etc/wpa_supplicant.conf
それを使うように指示した。
add app
開発環境を忘れずに入れたよ。で、その試験をしときゃな。aptで入るrubyは古いんで、最新のやつを、入れた。
sakae@deb:~$ ruby -v ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [i686-linux]
後は、goとかjuliaだな。これらは、DLして/usr/localあたりに展開するだけで済むから、わざわざaptで入れる必要はない。
aptで充実してると思ったのはpython系。最新の3.9.2が来てた。まあ、使う予定も無いので、どうでもいいけど。
sakae@deb:~$ apt-file search petite| grep scheme chezscheme: /usr/bin/petite chezscheme: /usr/lib/csv9.5.4/ti3le/petite.boot chezscheme: /usr/share/man/man1/petite.1.gz
何かschemeと思って探してみたよ。
sakae@deb:~$ petite Petite Chez Scheme Version 9.5.4 Copyright 1984-2020 Cisco Systems, Inc. > sakae@deb:~$ scheme Chez Scheme Version 9.5.4 Copyright 1984-2020 Cisco Systems, Inc. >
まだ、サポートされてた。こんな風に色々入れても
sakae@deb:~$ LANG=c df -h Filesystem Size Used Avail Use% Mounted on udev 1.9G 0 1.9G 0% /dev tmpfs 381M 904K 380M 1% /run /dev/sda5 177G 8.7G 159G 6% / tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 1.9G 0 1.9G 0% /tmp tmpfs 381M 4.0K 381M 1% /run/user/1000
まだ、たっぷり入るな。例によって /tmp は
tmpfs /tmp tmpfs rw,nosuid,nodev
こんな具合に、RAMDISKになってます。
便利ついでに、もう一発。LCDな画面の輝度調整スクリプト
FreeBSD backlight
13で入ったらしい。
Adjusting acpivideo brightness increments on FreeBSD
How can I adjust laptop screen backlight brightness?
DESCRIPTION The backlight utility can be used to configure brightness levels for registered backlights. If call without any option it will print the current brightness level of the first registered backlight.
/dev/backlight/backlight0 なんて知らないと言って来くるなあ。要調査。