re0 watchdog timeout その1(FreeBSD 13.1R、2022/07/05) [FreeBSD]
ベアメタルのFreeBSDでファイルサーバを立てて楽しんでいる訳ですが、大量のファイルをsamba上で移動させていた際に急に音信不通になりました。ssh、sambaのセッションは切断され、pingすら通らない状況です。
いよいよマザーボードクラッシュかと思い、J5040-ITXのマザーボードを買い直したらいくらになるだろう?などと調べていました。
とりあえず手探りで電源ボタンを押しても何も起こらず。数分待ってもpingすら通りません。状況を把握するために、VGAケーブルと液晶ディスプレイをつないで再度電源ON。
あれ、普通に起動した。
システムログを確認してみると「MyFreeBSD kernel: re0: watchdog timeout」の文字列が。おおお、これか…という感じです。簡単に言うと、ハードウェアの相性やソフトウェア・ドライバの品質で発生する「よろしくない状態」です。しかも一般に解決は不可能か、困難を極めます。
昔、NetBSDをいじっていたときに同様の状況になり、その時はNetBSDの使用を諦めました。
遊び倒そうと思っていたFreeBSD機でこれが発生してしまうのは、ちょっと絶望を感じます。蟹チップでないNICを探してきて、新たに搭載するのも一つですが…Intelチップかなぁ。高いけど。
とは言っても、類似事象があるかもしれないので、一応ググっておきます。と思ったらあっさりと類似事象が見つかりました。しかも解決できる希有なケースです。
http://kawabata.jippg.org/wp/freebsd/434/
簡単に言うと、
・FreeBSD標準搭載のドライバが粗悪(不具合持ち)
・Realtek社がFreeBSD向けの最新ドライバ(ソースコード)を提供している
とのことで、入れ替えれば解決するとのことです。ソースコードはFreeBSD 7.x and 8.0向けとありますが、実際にダウンロードして中身を開いてみると、最新のFreeBSD13系にまで対応していることが分かります。
しかしまあ、導入にはシステム全体のmake worldが必要なんですね。10年振りでしょうか。make worldなんてやったら、freebsd-updateコマンドでお手軽アップデートできなくなるのでは?とちょっと心配です。
■インストールの流れ
標準インストール状態で、蟹チップ向けドライバ「re」がカーネルに組み込まれてしまっているので、
1)インストール構成から不具合持ちreドライバを除去(conf/GENERICの修正)
2)その状態でmake world && make installし、一度不具合持ちreドライバがない環境を作る
※代替NICがない場合、ネットワークは不通になります
3)再起動後にreドライバ向けソースコードをメーカー最新のものに入れ替え、
新reドライバを個別にコンパイル&インストール
※添付のReadme.txtにはmake installが抜けています(66行目あたり)
基本的には添付のReadme.txtにしっかり書いてありますので、その通り実施すれば大丈夫です。
久々にHackしたなぁ~(大したことしてないけど)
蟹チップで不安な人は、watchdog timeoutの不具合が出ていなくても、この対策は実施しておいた方が良いかもしれません。
いよいよマザーボードクラッシュかと思い、J5040-ITXのマザーボードを買い直したらいくらになるだろう?などと調べていました。
とりあえず手探りで電源ボタンを押しても何も起こらず。数分待ってもpingすら通りません。状況を把握するために、VGAケーブルと液晶ディスプレイをつないで再度電源ON。
あれ、普通に起動した。
システムログを確認してみると「MyFreeBSD kernel: re0: watchdog timeout」の文字列が。おおお、これか…という感じです。簡単に言うと、ハードウェアの相性やソフトウェア・ドライバの品質で発生する「よろしくない状態」です。しかも一般に解決は不可能か、困難を極めます。
昔、NetBSDをいじっていたときに同様の状況になり、その時はNetBSDの使用を諦めました。
遊び倒そうと思っていたFreeBSD機でこれが発生してしまうのは、ちょっと絶望を感じます。蟹チップでないNICを探してきて、新たに搭載するのも一つですが…Intelチップかなぁ。高いけど。
とは言っても、類似事象があるかもしれないので、一応ググっておきます。と思ったらあっさりと類似事象が見つかりました。しかも解決できる希有なケースです。
http://kawabata.jippg.org/wp/freebsd/434/
簡単に言うと、
・FreeBSD標準搭載のドライバが粗悪(不具合持ち)
・Realtek社がFreeBSD向けの最新ドライバ(ソースコード)を提供している
とのことで、入れ替えれば解決するとのことです。ソースコードはFreeBSD 7.x and 8.0向けとありますが、実際にダウンロードして中身を開いてみると、最新のFreeBSD13系にまで対応していることが分かります。
しかしまあ、導入にはシステム全体のmake worldが必要なんですね。10年振りでしょうか。make worldなんてやったら、freebsd-updateコマンドでお手軽アップデートできなくなるのでは?とちょっと心配です。
■インストールの流れ
標準インストール状態で、蟹チップ向けドライバ「re」がカーネルに組み込まれてしまっているので、
1)インストール構成から不具合持ちreドライバを除去(conf/GENERICの修正)
2)その状態でmake world && make installし、一度不具合持ちreドライバがない環境を作る
※代替NICがない場合、ネットワークは不通になります
3)再起動後にreドライバ向けソースコードをメーカー最新のものに入れ替え、
新reドライバを個別にコンパイル&インストール
※添付のReadme.txtにはmake installが抜けています(66行目あたり)
基本的には添付のReadme.txtにしっかり書いてありますので、その通り実施すれば大丈夫です。
久々にHackしたなぁ~(大したことしてないけど)
蟹チップで不安な人は、watchdog timeoutの不具合が出ていなくても、この対策は実施しておいた方が良いかもしれません。
FreeBSD13.1Rでブート領域を含めた完全ソフトRAID1を組む その4(FreeBSD13.1R、2022/06/18) [FreeBSD]
この構成で、プライマリディスクを抜線すると問題なく起動することが確認できました。
なお、今回のインストール方法だと、最終的なgmirrorのステータスの見え方は以下のようになります。12系まで(freebsd-bootタイプ)の振り方では各パーティーションごとに細かく分かれていましたが、(今回のやり方だと)以下のように2つだけが見える形となります。
で、前回にも少し触れましたが、実は大変なことをやらかしてました。お分かりいただけるだろうか。前回newfsところのオプションが足らず、soft update journalingのところがdisabledになってるんですね。あれは-jオプションを有効にしておくべきでした。
tunefsで修正ができるのですが、稼働中は変更ができないため、またLiveCDで起動して修正すればOKです。
なお、今回のインストール方法だと、最終的なgmirrorのステータスの見え方は以下のようになります。12系まで(freebsd-bootタイプ)の振り方では各パーティーションごとに細かく分かれていましたが、(今回のやり方だと)以下のように2つだけが見える形となります。
root@MyFreeBSD:~ # gmirror status Name Status Components mirror/g COMPLETE ada0 (ACTIVE) ada1 (ACTIVE)
で、前回にも少し触れましたが、実は大変なことをやらかしてました。お分かりいただけるだろうか。前回newfsところのオプションが足らず、soft update journalingのところがdisabledになってるんですね。あれは-jオプションを有効にしておくべきでした。
root@MyFreeBSD:~ # tunefs -p /dev/mirror/gp2 tunefs: POSIX.1e ACLs: (-a) disabled tunefs: NFSv4 ACLs: (-N) disabled tunefs: MAC multilabel: (-l) disabled tunefs: soft updates: (-n) enabled tunefs: soft update journaling: (-j) disabled tunefs: gjournal: (-J) disabled tunefs: trim: (-t) disabled tunefs: maximum blocks per file in a cylinder group: (-e) 4096 tunefs: average file size: (-f) 16384 tunefs: average number of files in a directory: (-s) 64 tunefs: minimum percentage of free space: (-m) 8% tunefs: space to hold for metadata blocks: (-k) 6400 tunefs: optimization preference: (-o) time
tunefsで修正ができるのですが、稼働中は変更ができないため、またLiveCDで起動して修正すればOKです。
タグ:gmirror
FreeBSD13.1Rでブート領域を含めた完全ソフトRAID1を組む その3(FreeBSD13.1R、2022/06/16) [FreeBSD]
最初に書いておきますが、私はブートプロセスまわりはまったく理解できていない素人なので、変なことをやっていても笑って許して下さいね。試行錯誤の結果、理解できていく知識もありますし。
----------------------------
実は以下のWebページは割と早めに見つけていました。さすがに手順が面倒そうなので、ここまでやらなくてもうまくいけば…って思って、その1、その2を試した訳ですが、結論から言うとほぼこの通り実施する必要がありました。
https://forums.freebsd.org/threads/gmirror-before-installation.75025/
1.FreeBSDインストール時に、パーティーションの設定を「マニュアル」を選択する
2.だいたい前述のWebの通り
2-1.# kldload geom_mirror でgmirrorを有効にする
2-2.# 私の場合それまでの試行錯誤でディスクにgmirrorのラベルが付与されてしまっていたので、
ddで消せず、gmirror destroy~でラベル情報を消去
2-3.# gmirror label -v gm0 /dev/ada0 /dev/ada1(この通り、ラベル名はお好みで)
2-4.# gpart create -s gpt /dev/mirror/gm0(この通り)
2-5.# gpart add -t efi -a4k -s 200M /dev/mirror/gm0(この通り、a4kは4kセクタのアライメントを揃えるため)
2-6.# gpart add -t freebsd-ufs /dev/mirror/gm0(この通り)
2-7.# newfs_msdos -F 32 -c 1 /dev/mirror/gm0p1(この通り)
2-8.# mount -t msdosfs /dev/mirror/gm0p1 /mnt(この通り)
2-9.# mkdir -p /mnt/efi/boot(この通り、小文字に揃えた)
2-10.# cp /boot/loader.efi /mnt/efi/boot/bootx64.efi(この通り)
2-11.# mkdir -p /mnt/efi/freebsd(たぶん不要。仮インストールしたFreeBSD13.1Rの構造と合わせた)
2-12.# cp /boot/loader.efi /mnt/efi/freebsd/loader.efi(同上)
2-13.# umount /mnt(このパーティーションは以降触らないので)
2-14.# newfs -U /dev/mirror/gm0p2(この通り。実は…)
2-15.# mount /dev/mirror/gm0p2 /mnt(この通り)
2-16.# vi /tmp/bsdinstall_etc/fstab(echoでも良いけど、編集の方が楽なので)
一応、最終形(参考)
2-17.# vi /tmp/bsdinstall_boot/loader.conf(編集の方が楽なので。以下を足す)
geom_mirror_load="YES"'
終わったらexitしてそのままインストール工程を続ければOKです。
その4へつづく。
----------------------------
実は以下のWebページは割と早めに見つけていました。さすがに手順が面倒そうなので、ここまでやらなくてもうまくいけば…って思って、その1、その2を試した訳ですが、結論から言うとほぼこの通り実施する必要がありました。
https://forums.freebsd.org/threads/gmirror-before-installation.75025/
1.FreeBSDインストール時に、パーティーションの設定を「マニュアル」を選択する
2.だいたい前述のWebの通り
2-1.# kldload geom_mirror でgmirrorを有効にする
2-2.# 私の場合それまでの試行錯誤でディスクにgmirrorのラベルが付与されてしまっていたので、
ddで消せず、gmirror destroy~でラベル情報を消去
2-3.# gmirror label -v gm0 /dev/ada0 /dev/ada1(この通り、ラベル名はお好みで)
2-4.# gpart create -s gpt /dev/mirror/gm0(この通り)
2-5.# gpart add -t efi -a4k -s 200M /dev/mirror/gm0(この通り、a4kは4kセクタのアライメントを揃えるため)
2-6.# gpart add -t freebsd-ufs /dev/mirror/gm0(この通り)
2-7.# newfs_msdos -F 32 -c 1 /dev/mirror/gm0p1(この通り)
2-8.# mount -t msdosfs /dev/mirror/gm0p1 /mnt(この通り)
2-9.# mkdir -p /mnt/efi/boot(この通り、小文字に揃えた)
2-10.# cp /boot/loader.efi /mnt/efi/boot/bootx64.efi(この通り)
2-11.# mkdir -p /mnt/efi/freebsd(たぶん不要。仮インストールしたFreeBSD13.1Rの構造と合わせた)
2-12.# cp /boot/loader.efi /mnt/efi/freebsd/loader.efi(同上)
2-13.# umount /mnt(このパーティーションは以降触らないので)
2-14.# newfs -U /dev/mirror/gm0p2(この通り。実は…)
2-15.# mount /dev/mirror/gm0p2 /mnt(この通り)
2-16.# vi /tmp/bsdinstall_etc/fstab(echoでも良いけど、編集の方が楽なので)
# cat /tmp/bsdinstall_etc/fstab /dev/mirror/gp2 / ufs rw 1 1インストール工程はこれだけでOK。足らないものはインストール後に足す。
一応、最終形(参考)
#cat /etc/fstab # Device Mountpoint FStype Options Dump Pass # /dev/mirror/gp1 /boot/efi msdosfs rw 0 0 /dev/mirror/gp2 / ufs rw 1 1 /dev/mirror/gp3 none swap sw 0 0 /dev/mirror/gp4 /usr/home ufs rw 2 2
2-17.# vi /tmp/bsdinstall_boot/loader.conf(編集の方が楽なので。以下を足す)
geom_mirror_load="YES"'
終わったらexitしてそのままインストール工程を続ければOKです。
その4へつづく。
タグ:gmirror
FreeBSD13.1Rでブート領域を含めた完全ソフトRAID1を組む その2(FreeBSD13.1R、2022/06/12) [FreeBSD]
最初に書いておきますが、私はブートプロセスまわりはまったく理解できていない素人なので、変なことをやっていても笑って許して下さいね。試行錯誤の結果、理解できていく知識もありますし。
----------------------------
で、機械的にefi(msdosfs)のパーティーションをgmirrorに加えようとしたのが問題なんでしょうね。
gmirrorに加えた(ラベル作成した)efiパーティーションを、LiveCD上でmount_msdosfsしようとしてもInvalid argumentと表示されてしまいます。ufsSなら普通にマウントできるのですが、msdosfsではそうはいかないようです。
efiのパーティーションって、以下の通り実態はほとんど何もファイルがないので、次に考えたのが無理矢理msdosfsでフォーマットしてファイルを再配置する方法です。まあブートプロセスってそんなに単純ではないので、おそらく失敗するんでしょうけど。
gmirrorに加えた(ラベル作成した)efiパーティーションをnewfs_msdosでフォーマットし、上記と同じようにファイルをコピー配置してみました。(当然、LiveCD上でやっています)
するとあらあら、ちゃんとFreeBSDがブートするようになりました。
が、プライマリ側のハードディスクを物理的に外して(疑似故障)起動させたら、まったく起動しなくなりました。UEFI(BIOS)のロゴが表示された後暗転したまま再起動してしまい、デーモン君のアスキーアートメニューすら表示されません。
その3へつづく。
----------------------------
で、機械的にefi(msdosfs)のパーティーションをgmirrorに加えようとしたのが問題なんでしょうね。
gmirrorに加えた(ラベル作成した)efiパーティーションを、LiveCD上でmount_msdosfsしようとしてもInvalid argumentと表示されてしまいます。ufsSなら普通にマウントできるのですが、msdosfsではそうはいかないようです。
efiのパーティーションって、以下の通り実態はほとんど何もファイルがないので、次に考えたのが無理矢理msdosfsでフォーマットしてファイルを再配置する方法です。まあブートプロセスってそんなに単純ではないので、おそらく失敗するんでしょうけど。
root@MyFreeBSD:~ # ll /boot/efi/ drwxr-xr-x 1 root wheel 512 Jun 4 05:46 efi/ root@MyFreeBSD:~ # ll /boot/efi/efi/ drwxr-xr-x 1 root wheel 512 Jun 4 05:46 boot/ drwxr-xr-x 1 root wheel 512 Jun 4 05:46 freebsd/ root@MyFreeBSD:~ # ll /boot/efi/efi/boot/ -rwxr-xr-x 1 root wheel 892928 Jun 4 05:46 bootx64.efi* root@MyFreeBSD:~ # ll /boot/efi/efi/freebsd/ -rwxr-xr-x 1 root wheel 892928 Jun 4 05:46 loader.efi*
gmirrorに加えた(ラベル作成した)efiパーティーションをnewfs_msdosでフォーマットし、上記と同じようにファイルをコピー配置してみました。(当然、LiveCD上でやっています)
するとあらあら、ちゃんとFreeBSDがブートするようになりました。
が、プライマリ側のハードディスクを物理的に外して(疑似故障)起動させたら、まったく起動しなくなりました。UEFI(BIOS)のロゴが表示された後暗転したまま再起動してしまい、デーモン君のアスキーアートメニューすら表示されません。
その3へつづく。
タグ:gmirror
FreeBSD13.1Rでブート領域を含めた完全ソフトRAID1を組む その1(FreeBSD13.1R、2022/06/11) [FreeBSD]
ベアメタルのFreeBSDに戻ってきて、最初に取りかかったこと、それはブート領域を含めた冗長環境(ソフトRAID1環境)を作ることです。FreeBSDではgeom_mirrorがあるので、わりと簡単にミラーリング環境を作れたのですが、ブートプロセスにEFIなどの新しい概念が登場してきた結果、従来の方法が使えなくなってしまいました。
なお、従来の方法(12系)であれば、私の過去記事にある方法で問題ないです。
FreeBSD13系に戻ってきて最初に気付いたことは、インストール時のパーティーション分割にefiが登場したことです(※1)。12系ではパーティーションタイプfreebsd-bootが自動生成されたのですが、それがefiになっています。
しかもmsdosfs(FAT)なんですよねぇ。
※1)補足
UEFI対応のベアメタルサーバだからだと思います。仮想環境にインストールすると、依然としてfreebsd-bootパーティーションが登場します。
12系であれば、
・LIVE CDで立ち上げ
・geom_mirror.koをカーネルに読み込む
・gmirror label~でターゲットを作成
・loader.confにgeom_mirrorを読み込む行を追記
・gmirrorのターゲットに合わせてfstabを書き換える
で、冗長環境を作れるので、まずは同じようにやってみました。
ブートプロセスが失敗してシングルユーザモードに落ちました。
その2へつづく。
なお、従来の方法(12系)であれば、私の過去記事にある方法で問題ないです。
FreeBSD13系に戻ってきて最初に気付いたことは、インストール時のパーティーション分割にefiが登場したことです(※1)。12系ではパーティーションタイプfreebsd-bootが自動生成されたのですが、それがefiになっています。
しかもmsdosfs(FAT)なんですよねぇ。
※1)補足
UEFI対応のベアメタルサーバだからだと思います。仮想環境にインストールすると、依然としてfreebsd-bootパーティーションが登場します。
12系であれば、
・LIVE CDで立ち上げ
・geom_mirror.koをカーネルに読み込む
・gmirror label~でターゲットを作成
・loader.confにgeom_mirrorを読み込む行を追記
・gmirrorのターゲットに合わせてfstabを書き換える
で、冗長環境を作れるので、まずは同じようにやってみました。
ブートプロセスが失敗してシングルユーザモードに落ちました。
その2へつづく。
タグ:gmirror
ASRock J5040-ITXの消費電力(FreeBSD13.1R、2022/06/08) [FreeBSD]
ASRock J5040-ITXはMini-ITX規格で、CPUはPentium Silver Processor J5040をオンボードに積んでいます。最近はラズパイも人気なようですが、パソコン型の自宅サーバとしてはなかなか使い勝手が良いモデルです。
私はこれにCitrix Hypervisorを入れて仮想基盤を構築していたのですが、Citrix Hypervisorの無償ライセンスの方針が変わったのと、一通り遊び尽くしたので再びベアメタルのFreeBSDに戻ってきました。
まあ、省エネについて考え始めたというのもありますけどね。
CPUの消費電力はカタログ10Wですが、ディスクを2本を積んでいたり、マザーボードの消費で、Citrix Hypervisorでは無負荷で26Wでした。
FreeBSD 13.1Rでは、cpufreqやpowerdを駆使して無負荷25Wでした。仮想環境だと、物理ハードウェアをいじるチューニングとは無縁だったので、楽しいですね。なおRAID1同期中の高負荷状態では、消費電力32Wでした。
私はこれにCitrix Hypervisorを入れて仮想基盤を構築していたのですが、Citrix Hypervisorの無償ライセンスの方針が変わったのと、一通り遊び尽くしたので再びベアメタルのFreeBSDに戻ってきました。
まあ、省エネについて考え始めたというのもありますけどね。
CPUの消費電力はカタログ10Wですが、ディスクを2本を積んでいたり、マザーボードの消費で、Citrix Hypervisorでは無負荷で26Wでした。
FreeBSD 13.1Rでは、cpufreqやpowerdを駆使して無負荷25Wでした。仮想環境だと、物理ハードウェアをいじるチューニングとは無縁だったので、楽しいですね。なおRAID1同期中の高負荷状態では、消費電力32Wでした。
FreeBSD13.1R ベアメタル dmesg(FreeBSD13.1R、2022/06/05) [FreeBSD]
FreeBSD13.1Rが出たので、dmesgです。Citrix Hypevisorを消して久々のオンプレ版FreeBSDです。マザーボードはASRock J5040-ITXです。
Copyright (c) 1992-2021 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 13.1-RELEASE releng/13.1-n250148-fc952ac2212 GENERIC amd64 FreeBSD clang version 13.0.0 (git@github.com:llvm/llvm-project.git llvmorg-13.0.0-0-gd7b669b3a303) VT(vga): resolution 640x480 CPU: Intel(R) Pentium(R) Silver J5040 CPU @ 2.00GHz (1996.80-MHz K8-class CPU) Origin="GenuineIntel" Id=0x706a8 Family=0x6 Model=0x7a Stepping=8 Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE> Features2=0x4ff8ebbf<SSE3,PCLMULQDQ,DTES64,MON,DS_CPL,VMX,EST,TM2,SSSE3,SDBG,CX16,xTPR,PDCM,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,TSCDLT,AESNI,XSAVE,OSXSAVE,RDRAND> AMD Features=0x2c100800<SYSCALL,NX,Page1GB,RDTSCP,LM> AMD Features2=0x101<LAHF,Prefetch> Structured Extended Features=0x2294e287<FSGSBASE,TSCADJ,SGX,SMEP,ERMS,NFPUSG,MPX,PQE,RDSEED,SMAP,CLFLUSHOPT,PROCTRACE,SHA> Structured Extended Features2=0x40400004<UMIP,RDPID,SGXLC> Structured Extended Features3=0xac000400<MD_CLEAR,IBPB,STIBP,ARCH_CAP,SSBD> XSAVE Features=0xf<XSAVEOPT,XSAVEC,XINUSE,XSAVES> IA32_ARCH_CAPS=0x6b<RDCL_NO,IBRS_ALL,SKIP_L1DFL_VME,MDS_NO> VT-x: PAT,HLT,MTF,PAUSE,EPT,UG,VPID,VID,PostIntr TSC: P-state invariant, performance statistics real memory = 17179869184 (16384 MB) avail memory = 16224980992 (15473 MB) Event timer "LAPIC" quality 600 ACPI APIC Table: <INTEL GLK-SOC > WARNING: L1 data cache covers fewer APIC IDs than a core (0 < 1) FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs FreeBSD/SMP: 1 package(s) x 4 core(s) random: registering fast source Intel Secure Key RNG random: fast provider: "Intel Secure Key RNG" random: unblocking device. ioapic0 <Version 2.0> irqs 0-119 Launching APs: 2 3 1 random: entropy device external interface kbd1 at kbdmux0 efirtc0: <EFI Realtime Clock> efirtc0: registered as a time-of-day clock, resolution 1.000000s smbios0: <System Management BIOS> at iomem 0x6d8f1000-0x6d8f101e smbios0: Version: 3.2, BCD Revision: 3.2 aesni0: <AES-CBC,AES-CCM,AES-GCM,AES-ICM,AES-XTS,SHA1,SHA256> acpi0: <ALASKA A M I > unknown: I/O range not supported cpu0: <ACPI CPU> on acpi0 attimer0: <AT timer> port 0x40-0x43,0x50-0x53 irq 0 on acpi0 Timecounter "i8254" frequency 1193182 Hz quality 0 Event timer "i8254" frequency 1193182 Hz quality 100 atrtc0: <AT realtime clock> port 0x70-0x77 on acpi0 atrtc0: Warning: Couldn't map I/O. atrtc0: registered as a time-of-day clock, resolution 1.000000s Event timer "RTC" frequency 32768 Hz quality 0 hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff irq 8 on acpi0 Timecounter "HPET" frequency 19200000 Hz quality 950 Event timer "HPET" frequency 19200000 Hz quality 550 Event timer "HPET1" frequency 19200000 Hz quality 440 Event timer "HPET2" frequency 19200000 Hz quality 440 Event timer "HPET3" frequency 19200000 Hz quality 440 Event timer "HPET4" frequency 19200000 Hz quality 440 Timecounter "ACPI-fast" frequency 3579545 Hz quality 900 acpi_timer0: <32-bit timer at 3.579545MHz> port 0x408-0x40b on acpi0 pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0 pci0: <ACPI PCI bus> on pcib0 vgapci0: <VGA-compatible display> port 0xf000-0xf03f mem 0xa0000000-0xa0ffffff,0x90000000-0x9fffffff at device 2.0 on pci0 vgapci0: Boot video device hdac0: <Intel Gemini Lake HDA Controller> mem 0xa1310000-0xa1313fff,0xa1000000-0xa10fffff irq 25 at device 14.0 on pci0 pci0: <simple comms> at device 15.0 (no driver attached) ahci0: <Intel Gemini Lake AHCI SATA controller> port 0xf090-0xf097,0xf080-0xf083,0xf060-0xf07f mem 0xa1314000-0xa1315fff,0xa1318000-0xa13180ff,0xa1317000-0xa13177ff at device 18.0 on pci0 ahci0: AHCI v1.31 with 2 6Gbps ports, Port Multiplier supported ahcich0: <AHCI channel> at channel 0 on ahci0 ahcich1: <AHCI channel> at channel 1 on ahci0 pcib1: <ACPI PCI-PCI bridge> at device 19.0 on pci0 pci1: <ACPI PCI bus> on pcib1 pcib2: <ACPI PCI-PCI bridge> at device 19.1 on pci0 pci2: <ACPI PCI bus> on pcib2 pcib3: <ACPI PCI-PCI bridge> at device 19.2 on pci0 pci3: <ACPI PCI bus> on pcib3 re0: <RealTek 8168/8111 B/C/CP/D/DP/E/F/G PCIe Gigabit Ethernet> port 0xe000-0xe0ff mem 0xa1204000-0xa1204fff,0xa1200000-0xa1203fff at device 0.0 on pci3 re0: Using 1 MSI-X message re0: turning off MSI enable bit. re0: ASPM disabled re0: Chip rev. 0x54000000 re0: MAC rev. 0x00100000 miibus0: <MII bus> on re0 rgephy0: <RTL8251/8153 1000BASE-T media interface> PHY 1 on miibus0 rgephy0: none, 10baseT, 10baseT-FDX, 10baseT-FDX-flow, 100baseTX, 100baseTX-FDX, 100baseTX-FDX-flow, 1000baseT-FDX, 1000baseT-FDX-master, 1000baseT-FDX-flow, 1000baseT-FDX-flow-master, auto, auto-flow re0: Using defaults for TSO: 65518/35/2048 re0: Ethernet address: aa:bb:cc:dd:ee:ff re0: netmap queues/slots: TX 1/256, RX 1/256 pcib4: <ACPI PCI-PCI bridge> at device 19.3 on pci0 pci4: <ACPI PCI bus> on pcib4 ahci1: <ASMedia ASM1062 AHCI SATA controller> port 0xd050-0xd057,0xd040-0xd043,0xd030-0xd037,0xd020-0xd023,0xd000-0xd01f mem 0xa1100000-0xa11001ff at device 0.0 on pci4 ahci1: AHCI v1.20 with 2 6Gbps ports, Port Multiplier supported ahci1: quirks=0xc00000<NOCCS,NOAUX> ahcich2: <AHCI channel> at channel 0 on ahci1 ahcich3: <AHCI channel> at channel 1 on ahci1 xhci0: <Intel Gemini Lake USB 3.0 controller> mem 0xa1300000-0xa130ffff irq 17 at device 21.0 on pci0 xhci0: 32 bytes context size, 64-bit DMA usbus0 on xhci0 usbus0: 5.0Gbps Super Speed USB v3.0 isab0: <PCI-ISA bridge> at device 31.0 on pci0 isa0: <ISA bus> on isab0 acpi_button0: <Power Button> on acpi0 acpi_tz0: <Thermal Zone> on acpi0 atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0 atkbd0: <AT Keyboard> irq 1 on atkbdc0 kbd0 at atkbd0 atkbd0: [GIANT-LOCKED] atkbdc0: non-PNP ISA device will be removed from GENERIC in FreeBSD 14. est0: <Enhanced SpeedStep Frequency Control> on cpu0 Timecounter "TSC" frequency 1996801595 Hz quality 1000 Timecounters tick every 1.000 msec hdacc0: <Realtek ALC892 HDA CODEC> at cad 0 on hdac0 hdaa0: <Realtek ALC892 Audio Function Group> at nid 1 on hdacc0 pcm0: <Realtek ALC892 (Rear Analog 5.1/2.0)> at nid 20,22,21 and 24,26 on hdaa0 pcm1: <Realtek ALC892 (Front Analog)> at nid 27 and 25 on hdaa0 pcm2: <Realtek ALC892 (Rear Digital)> at nid 30 on hdaa0 hdacc1: <Intel Gemini Lake HDA CODEC> at cad 2 on hdac0 hdaa1: <Intel Gemini Lake Audio Function Group> at nid 1 on hdacc1 pcm3: <Intel Gemini Lake (HDMI/DP 8ch)> at nid 3 on hdaa1 Trying to mount root from ufs:/dev/mirror/gp2 [rw]... ugen0.1: <Intel XHCI root HUB> at usbus0 uhub0 on usbus0 uhub0: <Intel XHCI root HUB, class 9/0, rev 3.00/1.00, addr 1> on usbus0 ada0 at ahcich0 bus 0 scbus0 target 0 lun 0 ada0: <TOSHIBA MD04ACA200 FP1A> ATA8-ACS SATA 3.x device ada0: Serial Number AAAAAAAAAAA ada0: 600.000MB/s transfers (SATA 3.x, UDMA5, PIO 8192bytes) ada0: Command Queueing enabled ada0: 1907729MB (3907029168 512 byte sectors) ada1 at ahcich1 bus 0 scbus1 target 0 lun 0 ada1: <TOSHIBA MD04ACA200 FP1A> ATA8-ACS SATA 3.x device ada1: Serial Number AAAAAAAAAAA ada1: 600.000MB/s transfers (SATA 3.x, UDMA5, PIO 8192bytes) ada1: Command Queueing enabled ada1: 1907729MB (3907029168 512 byte sectors) GEOM_MIRROR: Device mirror/g launched (2/2). uhub0: 16 ports with 16 removable, self powered ichsmb0: <Intel Gemini Lake SMBus controller> port 0xf040-0xf05f mem 0xa1316000-0xa13160ff at device 31.1 on pci0 smbus0: <System Management Bus> on ichsmb0 lo0: link state changed to UP re0: link state changed to DOWN re0: link state changed to UP ipfw2 (+ipv6) initialized, divert loadable, nat loadable, default to deny, logging disabled
FreeBSD13.1R Xen dmesg(FreeBSD13.1R、2022/05/29) [FreeBSD]
FreeBSD13.1Rが出たので、dmesgです。
Copyright (c) 1992-2021 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 13.1-RELEASE releng/13.1-n250148-fc952ac2212 GENERIC amd64 FreeBSD clang version 13.0.0 (git@github.com:llvm/llvm-project.git llvmorg-13.0.0-0-gd7b669b3a303) VT(vga): text 80x25 Hyper-V Version: 0.0.0 [SP0] Features=0x870<APIC,HYPERCALL,VPINDEX,TMFREQ> PM Features=0x0 [C0] Features3=0x8<PCPUDPE> XEN: Hypervisor version 4.13 detected. CPU: Intel(R) Pentium(R) Silver J5040 CPU @ 2.00GHz (1996.90-MHz K8-class CPU) Origin="GenuineIntel" Id=0x706a8 Family=0x6 Model=0x7a Stepping=8 Features=0x1fc3fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT> Features2=0xcff82203<SSE3,PCLMULQDQ,SSSE3,CX16,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,TSCDLT,AESNI,XSAVE,OSXSAVE,RDRAND,HV> AMD Features=0x2c100800<SYSCALL,NX,Page1GB,RDTSCP,LM> AMD Features2=0x101<LAHF,Prefetch> Structured Extended Features=0x20946283<FSGSBASE,TSCADJ,SMEP,ERMS,NFPUSG,MPX,RDSEED,SMAP,CLFLUSHOPT,SHA> Structured Extended Features2=0x400004<UMIP,RDPID> Structured Extended Features3=0x8c000400<MD_CLEAR,IBPB,STIBP,SSBD> XSAVE Features=0xf<XSAVEOPT,XSAVEC,XINUSE,XSAVES> AMD Extended Feature Extensions ID EBX=0x1000<IBPB> Hypervisor: Origin = "Microsoft Hv" real memory = 4290772992 (4092 MB) avail memory = 4120899584 (3929 MB) Event timer "LAPIC" quality 100 ACPI APIC Table: <Xen HVM> FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs FreeBSD/SMP: 1 package(s) x 4 core(s) random: registering fast source Intel Secure Key RNG random: fast provider: "Intel Secure Key RNG" random: unblocking device. ioapic0: MADT APIC ID 1 != hw id 0 MADT: Forcing active-low polarity and level trigger for SCI ioapic0 <Version 1.1> irqs 0-47 Launching APs: 3 2 1 random: entropy device external interface kbd1 at kbdmux0 vtvga0: <VT VGA driver> smbios0: <System Management BIOS> at iomem 0xfb610-0xfb62e smbios0: Version: 2.4, BCD Revision: 2.4 aesni0: <AES-CBC,AES-CCM,AES-GCM,AES-ICM,AES-XTS,SHA1,SHA256> acpi0: <Xen> acpi0: Power Button (fixed) acpi0: Sleep Button (fixed) cpu0: <ACPI CPU> on acpi0 hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff on acpi0 Timecounter "HPET" frequency 62500000 Hz quality 950 attimer0: <AT timer> port 0x40-0x43 irq 0 on acpi0 Timecounter "i8254" frequency 1193182 Hz quality 0 Event timer "i8254" frequency 1193182 Hz quality 100 atrtc0: <AT realtime clock> port 0x70-0x71 irq 8 on acpi0 atrtc0: registered as a time-of-day clock, resolution 1.000000s Event timer "RTC" frequency 32768 Hz quality 0 Timecounter "ACPI-fast" frequency 3579545 Hz quality 900 acpi_timer0: <32-bit timer at 3.579545MHz> port 0xb008-0xb00b on acpi0 pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0 pci0: <ACPI PCI bus> on pcib0 isab0: <PCI-ISA bridge> at device 1.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <Intel PIIX3 WDMA2 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xc300-0xc30f at device 1.1 on pci0 ata0: <ATA channel> at channel 0 on atapci0 ata1: <ATA channel> at channel 1 on atapci0 uhci0: <Intel 82371SB (PIIX3) USB controller> port 0x1000-0x101f irq 23 at device 1.2 on pci0 usbus0 on uhci0 usbus0: 12Mbps Full Speed USB v1.0 pci0: <bridge> at device 1.3 (no driver attached) vgapci0: <VGA-compatible display> mem 0xf0000000-0xf1ffffff,0xf3000000-0xf3000fff at device 2.0 on pci0 vgapci0: Boot video device xenpci0: <Xen Platform Device> port 0xc000-0xc0ff mem 0xf2000000-0xf2ffffff irq 28 at device 3.0 on pci0 atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0 atkbd0: <AT Keyboard> irq 1 on atkbdc0 kbd0 at atkbd0 atkbd0: [GIANT-LOCKED] psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: [GIANT-LOCKED] WARNING: Device "psm" is Giant locked and may be deleted before FreeBSD 14.0. psm0: model IntelliMouse Explorer, device ID 4 fdc0: <floppy drive controller> port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on acpi0 fdc0: does not respond device_attach: fdc0 attach returned 6 uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0 ppc0: <Parallel port> port 0x378-0x37f irq 7 on acpi0 ppc0: Generic chipset (NIBBLE-only) in COMPATIBLE mode ppbus0: <Parallel port bus> on ppc0 lpt0: <Printer> on ppbus0 lpt0: Interrupt-driven port ppi0: <Parallel I/O> on ppbus0 xenpv0: <Xen PV bus> granttable0: <Xen Grant-table Device> on xenpv0 xen_et0: <Xen PV Clock> on xenpv0 Event timer "XENTIMER" frequency 1000000000 Hz quality 950 Timecounter "XENTIMER" frequency 1000000000 Hz quality 950 xen_et0: registered as a time-of-day clock, resolution 0.000001s xenstore0: <XenStore> on xenpv0 xsd_dev0: <Xenstored user-space device> on xenpv0 evtchn0: <Xen event channel user-space device> on xenpv0 privcmd0: <Xen privileged interface user-space device> on xenpv0 gntdev0: <Xen grant-table user-space device> on xenpv0 debug0: <Xen debug handler> on xenpv0 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff pnpid PNP0900 on isa0 fdc0: No FDOUT register! Timecounters tick every 10.000 msec xenbusb_front0: <Xen Frontend Devices> on xenstore0 xn0: <Virtual Network Interface> at device/vif/0 on xenbusb_front0 xn0: Ethernet address: 11:22:33:44:55:66 xn1: <Virtual Network Interface> at device/vif/1 on xenbusb_front0 ugen0.1: <Intel UHCI root HUB> at usbus0 xbd0: 1048576MB <Virtual Block Device> at device/vbd/768 xn1: Ethernet address: 00:11:22:33:44:55 uhub0 on xenbusb_front0 on usbus0 uhub0: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus0 xbd0: attaching as ada0 xbd0: features: write_barrier xenbusb_back0: <Xen Backend Devices>xbd0: synchronize cache commands enabled. on xenstore0 xenballoon0: <Xen Balloon Device> on xenstore0 xctrl0: <Xen Control Device> on xenstore0 xs_dev0: <Xenstore user-space device> on xenstore0 xn0: backend features: feature-sg feature-gso-tcp4 xn1: backend features: feature-sg feature-gso-tcp4 Trying to mount root from ufs:/dev/ada0p2 [rw]... cd0 at ata1 bus 0 scbus1 target 1 lun 0 cd0: <QEMU QEMU DVD-ROM 0.10> Removable CD-ROM SCSI device cd0: Serial Number QM00004 cd0: 16.700MB/s transfers (WDMA2, ATAPI 12bytes, PIO 65534bytes) cd0: Attempt to query device size failed: NOT READY, Medium not present uhub0: 2 ports with 2 removable, self powered ugen0.2: <QEMU 0.10.2 QEMU USB Tablet> at usbus0 intsmb0: <Intel PIIX4 SMBUS Interface> irq 20 at device 1.3 on pci0 intsmb0: intr IRQ 9 enabled revision 0 smbus0: <System Management Bus> on intsmb0 lo0: link state changed to UP xn0: 2 link states coalesced xn0: link state changed to UP xn1: 2 link states coalesced xn1: link state changed to UP ums0 on uhub0 ums0: <Endpoint1 Interrupt Pipe> on usbus0 ums0: 3 buttons and [Z] coordinates ID=0 ipfw2 (+ipv6) initialized, divert loadable, nat loadable, default to deny, logging disabled
強制swap解放(FreeBSD 12.1R、2020/2/10) [FreeBSD]
久々にFreeBSDの記事ですね。
最近はメインメモリ搭載量が潤沢になりましたので、swapなんて気にすることも少なくなりました。ただ全く使われない訳ではなく、Sambaで大容量のファイル転送を行ったりすると、10MB~80MB程度のswapが使用されることもあります。(私の環境では)
以前、FreeBSDとLinuxにおいて、メモリ(≒swap)使用方法の思想が比較されたこともありましたね。ざっと以下のような感じだったと記憶しています。どちらが優れているということでもなく、そういう特色として興味深いものだと思っています。
・FreeBSDはうまくやりくりする思想(性能よりも効率・安定性)
・Linuxは性能第一の思想(メモリを贅沢に使う)
さてさて。
メモリが潤沢にあるのに、swapが使用されるのはちょっと勿体ないような気がしませんか? まあ別に気にしなければ良いのですが、潤沢なメモリ容量があるにもかかわらずswapが使用されている場合に限り、以下で強制解放できるようです。
swapoff -a && swapon -a
私の環境ではうまくいきました。40MB程度のswapでも5秒近く時間を要したので、何かの処理中に実施するコマンドではないようです。ましてやメモリ不足のカツカツな状況では言わずもがなです。クラッシュしても知りませんよ。
最近はメインメモリ搭載量が潤沢になりましたので、swapなんて気にすることも少なくなりました。ただ全く使われない訳ではなく、Sambaで大容量のファイル転送を行ったりすると、10MB~80MB程度のswapが使用されることもあります。(私の環境では)
以前、FreeBSDとLinuxにおいて、メモリ(≒swap)使用方法の思想が比較されたこともありましたね。ざっと以下のような感じだったと記憶しています。どちらが優れているということでもなく、そういう特色として興味深いものだと思っています。
・FreeBSDはうまくやりくりする思想(性能よりも効率・安定性)
・Linuxは性能第一の思想(メモリを贅沢に使う)
さてさて。
メモリが潤沢にあるのに、swapが使用されるのはちょっと勿体ないような気がしませんか? まあ別に気にしなければ良いのですが、潤沢なメモリ容量があるにもかかわらずswapが使用されている場合に限り、以下で強制解放できるようです。
swapoff -a && swapon -a
私の環境ではうまくいきました。40MB程度のswapでも5秒近く時間を要したので、何かの処理中に実施するコマンドではないようです。ましてやメモリ不足のカツカツな状況では言わずもがなです。クラッシュしても知りませんよ。
Joomla! (ジュームラ)を動かしてみる (FreeBSD 12.0R、2019/09/09) [FreeBSD]
WordPressの管理を少し放置していたら、中が腐ってしまって更新ができなくなってしまいました。メジャーバージョンアップというのも関係しているかもしれません。というわけでWordPress以外のCMSを探してみることにしました。
いろいろあるようですが、ブログをメインで使いたいため、一番マシそうなJoomla! (ジュームラ)をインストールしてみました。公式Webでのリリース情報は3.9.11が最新ですが、portsでは3.9.6となっています。phpの依存関係は自分で解決するのでここではWebから最新版を導入することにします。
まあ最新版の導入と言っても、基本的にはドキュメントルートに設置するだけ。初期セットアップ画面で、phpライブラリの不足やphpパラメータの不足を指摘されるので直し、MySQL接続用パラメータを設定するだけ。lighttpd上でJoomla! を動かしてみました。
が、Joomla!はテーマがほとんどありません。見つかっても1.x系用だっとり、2.x系用だったりして、使えないものばかり。管理インタフェースはそこそこ使いやすそうなのですが、テーマが問題かなぁと。
いろいろあるようですが、ブログをメインで使いたいため、一番マシそうなJoomla! (ジュームラ)をインストールしてみました。公式Webでのリリース情報は3.9.11が最新ですが、portsでは3.9.6となっています。phpの依存関係は自分で解決するのでここではWebから最新版を導入することにします。
root@MyFreeBSD:~ # cat /usr/ports/www/joomla3/distinfo TIMESTAMP = 1557608394 SHA256 (Joomla_3-9-6-Stable-Full_Package.tar.bz2?format=bz2.tar.bz2) = b9c3b455acf71ab4cf14b77ec29a8afb9493123d2c3c6019e203adb9bbdc0f26 SIZE (Joomla_3-9-6-Stable-Full_Package.tar.bz2?format=bz2.tar.bz2) = 7946091
まあ最新版の導入と言っても、基本的にはドキュメントルートに設置するだけ。初期セットアップ画面で、phpライブラリの不足やphpパラメータの不足を指摘されるので直し、MySQL接続用パラメータを設定するだけ。lighttpd上でJoomla! を動かしてみました。
が、Joomla!はテーマがほとんどありません。見つかっても1.x系用だっとり、2.x系用だったりして、使えないものばかり。管理インタフェースはそこそこ使いやすそうなのですが、テーマが問題かなぁと。
タグ:wordpress