gentoo (2)

取り繕うのは無理だと思って仮想ディスクをフォーマットして,また1からインストールを始めてみました。

ところが今日は配布元のGPG/PGPキーがサーバーから受け取れず、全く進まず終わりになっちゃいました。

明日もう一度ディスクをフォーマットし直して、マニュアルを1からちゃんと読みながら進めたいと思います。

何を迷ったかgentoo遊び

仮想マシンは,100%希望通りの形ではないですが,安定して動くようになりました.この際ですから,仮想マシンのディスクイメージを搭載するため,2TBのHDDを買いました.これで,いくらでも仮想マシンが作れます😓

既にいくつかある仮想マシンのうちDebianとUbuntuに関しては,up to dateにしてあります.他に何を動かすか参考にしようと,最近の人気のdistrosのランキング紹介ページをいくつか見ましたが,人気があるのは,結局DebianやUbuntuをベースにしたdistrosであり,極端な言い方をすれば,skinsが異なるだけです

Slackwareとこれら以外に,本質的に違うdistroはあるか.あります.gentooです.

gentooはかなり昔からパーティションを切ってdual bootにしたり,仮想マシンとしてインストールして動かしてきました.しかし,まあ,率直に言って実用マシンになるまでの過程があまりにも遠いです.実際32bit版のgentooの仮想マシンの残骸があるのですが,何年もいじってないのでupdateの仕方すらわかりません.

そこで,x86_64版(AMD64版)を一からインストールしてみることにしました.

ようやくKernelがbuildできましたので,これから,HDDからブートするように仕立てていきます.

いったん頓挫

やっちまいました.Kernelを構築したあと,別立てのSystemdのマニュアルに進まなければいけないのに,SysVinitをベースにした古い系列の流れのマニュアルにそのまま沿って進んでしまって,アウトです.

また最初からやり直すことにします.SysVinitにした方が楽ですが,世の中の流れがsystemdなので,systemdにします.

極端な言い方ですので😓
と言っても仮想ディスク.

QEMU/KVM 作業メモ2

QEMU

QEMU本体は特に問題なくbuildできました.

libvirt

Slackbuilds.orgにある説明によれば,前のバージョンのlibvirtファイルを削除しないといけないとあるので,/usr/lib64や/usr/sbinにある,libvirt関係と思われるファイルをパスの通らないところに移動して,sbopkg -bしましたところ,何のエラーも出ずにbuildできてしまいました.

libvirt-glib

libvirt-glibがないと,既存のvirt-mangerがQEMUに接続できないようなので,sbopkg -iしときました.また,ついでにlibvirt-pythonもsbopkg -iしました.

起動テスト

ここで,システムをリブートした後,

/etc/rc.d/rc.libvirt start

を実行してみたところ,libvirtdの起動時にエラーが出てデーモンが常駐しません.エラーメッセージに,–daemonなしで起動してエラーを確認せよ的なメッセージが出るのでそのようにしてみましたが,その場合エラーが出ずに,libvirtdが常駐してくれます.

この状態で,virt-mangerを起動したら問題なく動いてくれますので,debianのクライアントを起動して,しばらく様子を見ています.

まだ,10分位しか動かしていませんが,scsi_eh_なんとかのプロセスは今の所現れていません.なんとか本質的な問題は,解決した模様です

あとは,rc.libvirtで起動したときデーモンが居座らない問題を調べてみます.

rc.libvirt

libvirtdを起動するオプションに-lがついていて,これを手動で起動するときにつけるとやはりエラーが出ます.-lがなくてもネットに繋がるので,起動スクリプトから-lを外しました.

QEMU/KVM 作業メモ1

SlackwareでQEMU/KVMを更新することにした.基本的には,slackbuils.orgにあるものはそのまま利用することにする.

Mesa 12

QEMU本体buildの準備だが,virglrendererを使用するには,Mesa 12が必要とある.Slackware64 14.2ではMesaは11なので,Slackware64-currentからソースを持ってきてbuildしようとしたが,含まれているソースはMesa 20で,あまりにも新しすぎてbuild不能.

そこで,Slackware64 14.2のSlackbuildスクリプトに,ソースだけmasa-11.2.2からmesa-12.0.6に差し替えてbuildを試みたら成功した

SDL2

Slackware64 14.2に標準でついてくるSDL 1.2はdeplicatedなので,SDL2をインストールせよということだが,幸いSlackbuilds.orgにあるので,

sbopkg -i SDL2
sbopkg -i SDL2_gfx
sbopkg -i SDL2_image
sbopkg -i SDL2_mixer
sbopkg -i SDL2_net
sbopkg -i SDL2_ttf

で特に問題なく完了.

その他

Optionalと書かれているパッケージをsbopkgでインストール,もしくはbuildしてからupgradepkgする.

  • sphinx
  • libiscsi
  • libcacard
  • spice (upgrade. 先にspice-protocolをupgradeする)
  • usbredir (upgrade)
  • virglrenderer
  • device-tree-compiler (install済み)
  • libnfs
  • snappy
  • glusterfs
  • vde2

glusterfsのみファイルのfetchに失敗してbuildできない(2020/12/07現在).その他はsbopkg -bでbuildできる.

Optionalということなので,glusterfsは放置して先に進む.

Follow-up

そんなに難しくないだろうということで,glusterfsのbuildをしました.まず,liburcuが必要になりますが,これは,sbopkg -iでインストールできます.

結論的には,Slackbuilds.orgのスクリプトが対象としている,glusterfs 4.1.0というのが,古すぎのため,本家でarchive送りとなっていて,ダウンロードできないようです.そこで,展開したbuildスクリプトのディレクトリーに適当なところから見つけてきた,glusterfs-4.1.0.tar.gzをおいて,glusterfs.Slackbuildを走らせたらbuildできました.

ただし,4.1.0はoutdatedということになるので,QEMUが許してくれるかはわかりません.

いよいよ,  QEMU本体のbuildに進みます.

Mesaを12に上げたことによる副作用として,KDEのOpenGLを必要とするいくつかのデスクトップ効果が動かなくなります(MesaはOpenGLとコンパチで,OpenGLの代わりにインストールされている).たぶん,KDEをbuildし直さないといけないのだと思いますが,それはやめときます😓