PHP-8.2のInst
https://seesaawiki.jp/lifewithslackzaurus_15_0/d/PHP%2d8%2e2
で、SlackBuild
https://slackbuilds.org/slackbuilds/15.0/development/php82/php82.SlackBuild
を実行したが、あまり良い方法ではなかったので、次回以降はやり方を変える。
SlackBuildを実行するには、以下の方法になるが、
・root状態でスクリプトを実行する
・sudoでスクリプトを実行する
rootのままでの作業は、chrootでもしてるなら別だが、通常環境ではあまりやりたくない。
sudoでスクリプトを実行するとイロイロうまくいかない事が。原因調査はメンドクサで省略。
Zaurusでは完全手動でやっていたので無問題だった。ARM用に改造が必要だったし。
スクリプトの中にsudoを書けば多分うまくいくが、SlackBuildの改造量が多くてイマイチ。
そこで、
一般ユーザで実行して、できたバイナリ群を chown -R root.root して、再度makepkgする。
suidは chown root をやるとビットが落ちてしまう
https://seesaawiki.jp/lifewithslackzaurus_15_0/d/Prepros%a1%a2npm%2dscript%a1%a211ty%20%26%20webpack%a1%a2Vite
ので、予め644や755以外のビットを検索しておき、後から立て直す。
$ sudo find /opt/google/chrome/ -type f ! -perm 644 ! -perm 755
/opt/google/chrome/chrome-sandbox
$ ls -l /opt/google/chrome/chrome-sandbox
\-rws–x–x 1 root root 210456 1月 9 2024 /opt/google/chrome/chrome-sandbox
オーナーが自分以外だった場合、rootにした後に元に戻す。
オーナーが自分以外のファイルを検索
$ find php82 -type f ! -user $(whoami)
php82/php82-8.2.23-x86_64-1.txz
$ ls -l php82/php82-8.2.23-x86_64-1.txz
\-rw-r–r– 1 root root 5059268 9月 6 xx:yy php82-8.2.23-x86_64-1.txz