Systemd

世の中みんなsystemdになってきました.筆者が最初にいじったsystemdのシステムは,1〜2代前のRaspberry Pi OSで,たぶん2017年頃だったと思います.Raspberry Piに赤外線リモコンのソフトを組み込んだ時,デーモンの起動にsystemdを使いました.

その後はたぶん,Gentoo, Manjaro, Debianをインストールして評価して,いつものように,習うより慣れろ的にやってきました.

今回,とあるサーバーの更新に際して,慣れたSlackwareではなく,次のLTSへのupgradeもオンラインでできることを期待して,Debianにしました

で,いろいろ必要なサービスを設定していくのですが,そのために細かいことまでsystemdに対応するようservice設定をしているところです.設定が終わったら,

systemctl start サービス名

で,起動して,動作を確認する場合は,

systemctl status サービス名

なので,キーボードの上矢印を押して前のコマンドを編集するわけですが,まん中のコマンドを書き換えるのは,ちょっとやりにくいなと感じています.

systemctl サービス名 コマンド

というシンタックスにして欲しかったです.

それはさておき,困るのは,何か困った時に,

debian 困った事柄

で,ネット検索しても.systemdでない方の情報が圧倒的に多いことです.

いちいち検索のキーワードにsystemdを入れるか,あるいはdebianは入れずに,

systemd 困った事柄

で検索するようにしています.

実用的な用途のためのインストールではなく,インストールのためのインストール😓
Debianでそう呼ぶかは知りません😓
根こそぎupdateをSlackwareの場合リモートからできないため.

実マシンの仮想化 Lesson 4 起動のまじない(grub)

実マシンから,仮想ディスクにまるまるコピーできたら,あとは若干のまじないが必要です.

一つは,まじないというより即物的な設定で,/etc/fstabの書き換えです.とりあえずは,仮想ディスクを/dev/sdaとして設定しておきます.この作業はコピーが終了したら仮想ディスクのイメージをマウントしたまま作業した方が楽です,というか,他にやりようがないです

次は一番肝心なgrubのインストールです.grubをインストールするためには,そのターゲットとなるディスクから起動した環境が必要となります.しかし,まだ起動の仕組みがないので自力ではできません.そのためにchrootを利用しますが,色々ややこしいので,後で自分でわかるように,固定ページに書いときました.

ちなみに,Slackwareの場合は,インストールDVDイメージから起動する際に,ルートパーティションを指定できるので,chrootしなくてもgrubのインストールができます.

ターゲットのパーティションをルートにできたら,ルート権限で,

grub-install /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg

実行します.これは,Slackware, Manjaro, Debian共通です.

これで,実マシンからコンバートした仮想マシンが起動しますが,Debianでは

sudo update-initramfs -u

を実行するなど,多少のチューニングが必要です.

Manjaroの実マシンの中で,仮想化したManjaroを動かしている様子.
インストール用DVDイメージから起動して,マウントしてという方法がないわけではないですが,活きているWSに,それもマウント済ですから,それを利用しない手はないです.

実マシンの仮想化 Lesson 3 ディスクのコピーのやり直し

コピーは終わりましたが, “BIOS boot” というパーティションを作っていないことを思い出して,パーティションを切り直すことにしました.

しかし,これまでupdate不能状態とは言え,その “BIOS boot” パーティションなしで動いていたのに必要なのか,と疑問がわきました.たぶん,今まではDOSパーティションだったので不要だったのでしょう.gptで “BIOS boot” パーティションを含むようにしてパーティションを切り直し,必然的にルートのパーティションをフォーマットし直しました.

もう一度,qcow2型式のルートパーティションをマウントして,念のためにリードオンリーでマウントしたコピー元になる実マシンのManjaroのパーティションからrsyncでコピーしました.

そういえば,以前はnbdで接続したディスクイメージをマウントする場合,mountコマンドにオフセット指定が必要でしたが,最近は改善されて,

mount  /mnt/nbd  /dev/nbd0p2

と,そのままマウントできるようになりました.人間がますますバカになります😥

実マシンの仮想化 Lesson 2 ディスクのコピー

コピーに使用する実マシンは,第2 Workstation(WS)の第2 OSであるDebianです.

ディスクイメージは,今回update不能と判断したqcow2を使います.formatはしません.まるまるコピーするときはformatしたほうがあとのコピーが速いケースが多いですが,update不能なほど古いとはいえManjaro同士なので多少そのまま使えるファイルがあってコピーが早く済むかなと期待しました.

実Manjaro (第2 WSの第1 OS)を念の為read onlyで,Debianにマウントし,仮想ディスクは,nbdのモジュールを使って,write enableでマウントしました.

コピーはrsyncでします.

実マシンのディスクスペースは400GBなのに対して仮想マシンは80GBしかないので,Raspberry Piのバックアップや,ISOファイルづくりの過程や完成品などはコピーしないよう,rsyncのフィルター設定をしました.

途中でなんか余計なもののコピーを始めたら,とめて,フィルターを追加してまたコピーし直すというのができるのが,rsyncでするコピーの大きなメリットです.

20分ほどでコピーが終わったので,/etc/fdiskを修正して今夜は終わりにします.

Firefoxが勝手に最後までスクロールする(解決)

OSを変えたら治ったなどという絶望的な記事を見つけて,諦めてしまっていましたが,ブラウザによらないということで,これはなんかブラウザではないところに原因がありそうと,もう少し検索を進めたところ解決しました.

なんと,システム設定のアクセシビリティーにあるスクリーンリーダーONがいけないとのことです.

そんなものONにした覚えは全く無いです.