7,166
edits
No edit summary |
No edit summary |
||
(63 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
*ethernetのmedia typeを明示的に設定 | |||
何故だか flow control が off になっていたので調べた | |||
https://gihyo.jp/admin/clip/01/fdt/201104/08 | |||
http://www.jp.freebsd.org/QandA/HTML/2460.html | |||
*ntpdで警告 | |||
<syntaxhighlight lang="text" enclose="div"> | |||
leapsecond file ('/var/db/ntpd.leap-seconds.list'): expired 19 days ago | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash" enclose="div"> | |||
service ntpd fetch | |||
fetch: https://www.ietf.org/timezones/data/leap-seconds.list: Not Found | |||
</syntaxhighlight> | |||
あらら... | |||
/etc/rc.conf に | |||
<syntaxhighlight lang="text" enclose="div"> | |||
ntp_leapfile_sources="https://data.iana.org/time-zones/data/leap-seconds.list" | |||
</syntaxhighlight> | |||
追加して、オッケー | |||
*FreeBSD リハビリwメモ | |||
やってみたらやっぱりそうだったw | |||
<syntaxhighlight lang="bash" enclose="div"> | |||
protect -dip 1 | |||
</syntaxhighlight> | |||
*FreeBSD リハビリwメモ | |||
FreeBSD-EN-23:19.pkgbase | |||
をソースからやると make packages でこける。KERNCONF=foo を指定している場合は、make packages KERNCONF=foo | |||
あと ports からいれた モジュールはこけるので、make.conf から PORTS_MODULES を外しておく。 | |||
あぁそうか素カーネルでないと意味ないな。とりあえず作っておくか... | |||
*MacBook6,1 (13-Inch, Late 2009) unibody polycarbonate white 再生計画 その8 | |||
14.0-p1 が安定して稼働してるので、このハードウェアにあった設定を見直していたら、以前放置していた iSight がサックリ稼働した。 | |||
<syntaxhighlight lang="bash" enclose="div"> | |||
portmaster multimedia/libuvc multimedia/webcamd | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="conf" enclose="div"> | |||
webcamd_enable="YES" | |||
webcamd_0_flags="-d ugen1.2" | |||
</syntaxhighlight> | |||
後は、/dev/video0 /dev/usb/1.2.* 等のパーミッションを devfs.conf でごにょごにょ か operator webcamd の group に所属。 | |||
よい機会なので Autoloading module は loader.conf で明示的に _load="YES" にした。 | |||
*FreeBSD リハビリwメモ | *FreeBSD リハビリwメモ | ||
FreeBSD 14.0 が出たので 13.2-p5 から、古式ゆかしくソースから upgrade した。いろいろハマり所があったのでメモ。 | FreeBSD 14.0 が出たので 13.2-p5 から、古式ゆかしくソースから upgrade した。いろいろハマり所があったのでメモ。 | ||
'''この作業をする前に、あらゆる ports で入れたものを rc.conf で OFF にする。(ここ重要。base system が提供しているライブラリとの不整合等があるので upgrade して make delete-old-libs 後に確認する事)''' | '''この作業をする前に、あらゆる ports で入れたものを rc.conf で OFF にする。(ここ重要。base system が提供しているライブラリとの不整合等があるので upgrade して make delete-old-libs 後に確認する事)''' | ||
'''(network系 daemon で crash (kernel panic) する。avahi-daemon | '''(network系 daemon で crash (kernel panic) する。avahi-daemon は駄目っぽい。gdb がライブラリ不整合にハマっているので解析は後でする)''' | ||
make buildworld, make kernel した後 reboot していったん single user mode で起動。ここで あらゆる filesystem に対して full-fsck する事。 | make buildworld, make kernel した後 reboot していったん single user mode で起動。ここで あらゆる filesystem に対して full-fsck する事。 | ||
Line 9: | Line 64: | ||
その single user で etcupdate -p して make installworld した後 reboot してまた single user mode で起動。もう一度 make kernel する。 | その single user で etcupdate -p して make installworld した後 reboot してまた single user mode で起動。もう一度 make kernel する。 | ||
(13.2 の libc のバージョンが古くて、最初の kernel をビルドする時に __cxa_thread_call_dtors: dtr 0xXXXXXX from unloaded dso, skipping | (13.2 の libc のバージョンが古くて、最初の kernel をビルドする時に __cxa_thread_call_dtors: dtr 0xXXXXXX from unloaded dso, skipping のワーニングが出ていて気持ち悪いので、installworld 後に、改めて make kernel する)('''実際のところ、この場合も __cxa_thread_call_dtors が出た。(下にも書いたが)delete-old の後に、もう一度 make world して解消。''') | ||
etcupdate -B で「コンフリクトしてるから駄目よ」と言われたら、とりあえず h -> mf で古いのを生かす。(/etc/group と /etc/master.passwd)(先頭のコメント行が不要になるので、あとで手修正する)('''root の shell が (t)csh から sh に変更されたのに注意。スパルタンな仕様に戻ったw これも大きな仕様変更かも''')、これがおわったらいよいよ reboot して multi user mode に突入。(root の login shell を /bin/sh にしてからいろんな作業をすべきなのかもね) | etcupdate -B で「コンフリクトしてるから駄目よ」と言われたら、とりあえず h -> mf で古いのを生かす。(/etc/group と /etc/master.passwd)(先頭のコメント行が不要になるので、あとで手修正する)('''root の shell が (t)csh から sh に変更されたのに注意。スパルタンな仕様に戻ったw これも大きな仕様変更かも''')、これがおわったらいよいよ reboot して multi user mode に突入。(root の login shell を /bin/sh にしてからいろんな作業をすべきなのかもね) | ||
無事 マルチユーザーモードで上がってきたら check-old delete-old check-old-libs delete-old-libs (最後に check-old-dirs delete-old-dirs) | |||
( | ('''delete-old して、root の login shell を /bin/sh にした後 stage1, stage2 みたいに、2回目の天地創造wしたら __cxa_thread_call_dtors のワーニングが消えた。これからが本当の地獄^h^h世界だw''') | ||
新しい世界wで、あらゆる ports の update する。(最初に pkg bootstrap -r) | |||
kernel driver 関連でこの修正に対応できていないのは自分でなんとかするw | kernel driver 関連でこの修正に対応できていないのは自分でなんとかするw ('''__cxa_thread_call_dtors のワーニングが消えた状態では、互換機能が動くのでなにもしないでヨシ''') | ||
https://reviews.freebsd.org/rG2a99dd30dfaac98fea79f084b3a13c45199e1348 | https://reviews.freebsd.org/rG2a99dd30dfaac98fea79f084b3a13c45199e1348 | ||
'''portsnap が削除された。'''git 使えてか... | '''portsnap が削除された。'''git 使えてか... | ||
<syntaxhighlight lang="bash" enclose="div"> | |||
やたらとバイナリーパッケージ推しになってるが、無視して老人会モードで逝くw (油断してたら、せっせと手インストールした ports | git clone https://git.FreeBSD.org/ports.git /usr/ports | ||
</syntaxhighlight> | |||
やたらとバイナリーパッケージ推しになってるが、無視して老人会モードで逝くw (油断してたら、せっせと手インストールした ports かなりの数が消されてしまったw) | |||
git pull のあと make index がいるのかね。fetchindex はまだ動作するね | |||
<syntaxhighlight lang="bash" enclose="div"> | |||
cd /usr/ports | |||
make fetchindex | |||
</syntaxhighlight> | |||
過去にインストールした ports | ('''__cxa_thread_call_dtors のワーニングが消えた状態になったら''')過去にインストールした ports すべての再インストールが必須。 (portmaster の man page から) | ||
('''最低限 /usr/local/etc のバックアップしておくこと。/usr/ports/distfiles 以下のソースもとっておく方がトラフィック削減でベター''') | |||
<syntaxhighlight lang="bash" enclose="div"> | <syntaxhighlight lang="bash" enclose="div"> | ||
cd /usr/ports/ports-mgmt/portmaster | cd /usr/ports/ports-mgmt/portmaster | ||
Line 41: | Line 107: | ||
# to make sure that they are really empty | # to make sure that they are really empty | ||
# Install ports-mgmt/pkg and then ports-mgmt/portmaster. | # Install ports-mgmt/pkg and then ports-mgmt/portmaster. | ||
cd /usr/ports/ports-mgmt/pkg | |||
make install clean | |||
cd /usr/ports/ports-mgmt/portmaster | cd /usr/ports/ports-mgmt/portmaster | ||
make install clean | make install clean | ||
# Remove both from ~/installed-port-list. | |||
# もし独自のパッチがある場合はそれも確認。 | |||
portmaster --no-confirm `cat ~/installed-port-list` | portmaster --no-confirm `cat ~/installed-port-list` | ||
</syntaxhighlight> | </syntaxhighlight> | ||
(ports-mgmt/portmaster devel/git devel/ccache devel/gdb sysutils/screen security/sudo sysutils/htop sysutils/topless devel/dbus sysutils/powerdxx sysutils/smartmontools) | |||
これだけは先にインストールする。(今、(ccacheはいれたが)これを忘れて長時間の再ビルド中...最低でも screen は再インストールしておくべきだったと。何かあったときに attach できないおそれがw) | |||
'''kernel panic は ieee80211 あたりだとわかった。(avahi を疑っていたのだが、deny-interfaces=wlan0 したらサックリ動く)(ieee80211_crypto_ccmp.c 辺り) MacBook用wの bwn は 13.x では超安定してたのだが 14.0 では不安定。何でだろ〜^3 いろいろ調べたら、いろんな ieee 802.11 系で同じ症状らしい。まぁ昔から FreeBSD は Wi-Fi(NFSもw) には冷淡だし...''' | '''kernel panic は ieee80211 あたりだとわかった。(avahi を疑っていたのだが、deny-interfaces=wlan0 したらサックリ動く)(ieee80211_crypto_ccmp.c 辺り) MacBook用wの bwn は 13.x では超安定してたのだが 14.0 では不安定。何でだろ〜^3 いろいろ調べたら、いろんな ieee 802.11 系で同じ症状らしい。まぁ昔から FreeBSD は Wi-Fi(NFSもw) には冷淡だし...''' | ||
(自分の環境は | (自分の環境は wlan に依存した構成になっているので、もう少し頑張る...)(修正がはいらないと駄目っぽいので、手持ちのOpenWrt機器のWi-Fi bridge経由でアクセスするか...) | ||
(手持ちの Ralink MT7601U で試してみるが、ieee80211_crypto_ccmp 辺りで落ちているのなら同じかもね->ドライバーが無かった。実験中のドライバーはあるが...) | |||
(まだブラックフライデー対応してたので、動きそうな古めのUSB Wi-Fiアダプターをいくつか買った。届いてからテストする) | |||
tp-link TL-WN725N (Realtek RTL8188EU) が届いて、サックリ安定して動きました!!!! (if_rtwn_usb_load="YES" rtwn-rtl8188eufw_load="YES") | |||
(country=JP してるのだが、変わってない希ガス)(ports の security/wpa_supplicant 使えば JP を認識した。これいろいろヤバいかもね。) | |||
最低限のカスタマイズ .shrc | |||
<syntaxhighlight lang="sh" enclose="div"> | |||
set -I | |||
set -E | |||
</syntaxhighlight> | |||
X11関連の設定も少し挙動が変わってた。fcitx が自動で起動しないので、~/.config/autostart/fcitx.desktop を作って Exec=/usr/local/bin/fcitx -r -d してオッケー | |||
14.0 関連のリンク Errata 系 | |||
https://www.daemonology.net/blog/2023-11-21-late-breaking-FreeBSD-14-breakage.html | |||
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=260841 | |||
*FreeBSD リハビリwメモ | *FreeBSD リハビリwメモ | ||
あーーーーーー kibana7 が削除されたが kibana8 が動かない! オワタ | あーーーーーー kibana7 が削除されたが kibana8 が動かない! オワタ | ||
openjdk は 17 に統一して、node は 18 に固定して kibana8 | openjdk は 17 に統一して、node は 18 に固定して kibana8 に手を加えた。 | ||
/usr/ports/textproc/kibana8/Makefile.local を作成 | |||
<syntaxhighlight lang="make" enclose="div"> | |||
BUILD_DEPENDS= npm-node18>=9.7.2:www/npm-node18 | |||
RUN_DEPENDS= ${LOCALBASE}/bin/node:www/node18 | |||
USES= compiler:c++17-lang cpe nodejs:18,build,run python:build | |||
</syntaxhighlight> | |||
elastic stack version 8 にあげていろいろホゲった。混乱の極みw いろいろ認証を必須にした結果ぐちゃぐちゃ&細かなバグいっぱい。 | elastic stack version 8 にあげていろいろホゲった。混乱の極みw いろいろ認証を必須にした結果ぐちゃぐちゃ&細かなバグいっぱい。 | ||
Line 78: | Line 174: | ||
mozc 系での python3.10 の場合 AttributeError: module 'collections' has no attribute 'MutableSet' は、無理矢理FIX | mozc 系での python3.10 の場合 AttributeError: module 'collections' has no attribute 'MutableSet' は、無理矢理FIX | ||
/usr/ | /usr/ports/devel/py-gyp/files/patch-pylib_gyp_common.py を作成 | ||
<syntaxhighlight lang="diff" enclose="div"> | <syntaxhighlight lang="diff" enclose="div"> | ||
--- pylib/gyp/common.py.oig | |||
+++ pylib/gyp/common.py | |||
@@ -494,7 +494,7 @@ def uniquer(seq, idfun=None): | |||
# Based on http://code.activestate.com/recipes/576694/. | |||
-class OrderedSet(collections.MutableSet): | -class OrderedSet(collections.MutableSet): | ||
+class OrderedSet(collections.abc.MutableSet): | +class OrderedSet(collections.abc.MutableSet): | ||
def __init__(self, iterable=None): | |||
self.end = end = [] | |||
end += [None, end, end] # sentinel node for doubly linked list | |||
</syntaxhighlight> | </syntaxhighlight> | ||
'''./scripts/post-patch''' でうんぬんというやり方わすれた... | |||
*Upgrade ミスってったようだ | *Upgrade ミスってったようだ |