FreeBSD 11.3: 日毎セキュリティーレポート missing file

FreeBSDの管理者に毎日届くセキュリティレポートの「Checking for packages with mismatched checksums:」に、またまたリストが表示されるようになっていました。

Checking for packages with mismatched checksums:
xorgproto-2019.2: missing file /usr/local/include/GL/glxint.h
xorgproto-2019.2: missing file /usr/local/include/GL/glxmd.h
xorgproto-2019.2: missing file /usr/local/include/GL/glxproto.h
xorgproto-2019.2: missing file /usr/local/include/GL/glxtokens.h
xorgproto-2019.2: missing file /usr/local/include/GL/internal/glcore.h
xorgproto-2019.2: missing file /usr/local/include/X11/DECkeysym.h
xorgproto-2019.2: missing file /usr/local/include/X11/HPkeysym.h
xorgproto-2019.2: missing file /usr/local/include/X11/Sunkeysym.h
xorgproto-2019.2: missing file /usr/local/include/X11/X.h
xorgproto-2019.2: missing file /usr/local/include/X11/XF86keysym.h
xorgproto-2019.2: missing file /usr/local/include/X11/XWDFile.h
xorgproto-2019.2: missing file /usr/local/include/X11/Xalloca.h
xorgproto-2019.2: missing file /usr/local/include/X11/Xarch.h
xorgproto-2019.2: missing file /usr/local/include/X11/Xatom.h
xorgproto-2019.2: missing file /usr/local/include/X11/Xdefs.h

今回は、xorgproto-2019.2 というパッケージに入っているべきファイルの一部が見つからない(結果的にマスターのチェックサムが一致しない)ようです。

xorgprotoパッケージを再インストールすれば解決することは分かっているのですが、私のサーバーはX-Windowを使っていないのに不思議な現象。

では、xorgproto を消してしまおうと、コマンドを発行してみたところ、以下のような結果に。

# pkg delete xorgproto
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 9 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
	xorgproto-2019.2
	libXdmcp-1.1.3
	libX11-1.6.9,1
	libxcb-1.13.1
	php72-gd-7.2.26
	libXext-1.3.4,1
	libXt-1.2.0,1
	libXpm-3.5.12_2
	phpMyAdmin-php72-4.9.3

Number of packages to be removed: 9

The operation will free 45 MiB.

Proceed with deinstalling packages? [y/N]:

なるほど、phpMyAdmin を動かすための依存関係があるパッケージとして道連れで入っていたのね。
削除はキャンセルして、xorgproto だけ入れ直すことにしました。

ところでどうやって?

多分、Forceオプション -f を付けて、pkg install か pkg upgrade を行えばいいんじゃない?って思って試してみました。パッケージデータベースのことを考えると install よりも upgrade の方が良さそうな気がして、以下のように pkg upgrade Force オプション付き を発行してみました。

# pkg upgrade -f xorgproto
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
Checking integrity... done (0 conflicting)
The following 1 package(s) will be affected (of 0 checked):

Installed packages to be REINSTALLED:
	xorgproto-2019.2

Number of packages to be reinstalled: 1

Proceed with this action? [y/N]: y
[1/1] Reinstalling xorgproto-2019.2...
[1/1] Extracting xorgproto-2019.2: 100%

コマンドは無事に完了。

> ll /usr/local/include/GL/glxint.h
ls: /usr/local/include/GL/glxint.h: そのようなファイルまたはディレクトリはありません

実行前には見つからなかったファイルが、以下のように正しく認識されています。

# ll /usr/local/include/GL/glxint.h
-rw-r--r--  1 root  wheel  4695  1月  2 10:16 /usr/local/include/GL/glxint.h

きっと明日のレポートでは、「packages with mismatched checksums」が解決されているでしょう。

コメントを残す