テクニカル諏訪子
支援♡ : Monero | Github | Ko-Fi | ファンティア

【OpenBSD】更新後「zsh: undefined symbol '_udivdi3'」というエラーの修正する方法

トップページに戻る
凛、 2023年04月19日 — jp, blog, bsd, openbsd

OpenBSD 7.3は公開されましたので、直ぐ全てのサーバー(64-bit)を更新しました。
それは問題無しで出来ました。
でも、ThinkPad T43(32-bit)で下記のエラーが発生しました:

ssh 192.168.0.123
Last login: Tue Apr 18 22:32:51 2023
OpenBSD 7.3 (GENERIC) #660: Sat Mar 25 11:17:44 MDT 2023

Welcome to OpenBSD: The proactively secure Unix-like operating system.

Please use the sendbug(1) utility to report bugs in the system.
Before reporting a bug, please try to reproduce it with the latest
version of the code.  With bug reports, please try to ensure that
enough information to reproduce the problem is enclosed, and if a
known fix for it exists, include that as well.

Cannot open X display!
xmodmap:  unable to open display ''
-zsh:-zsh: undefined symbol '__udivdi3'
ld.so: -zsh: lazy binding failed!
Connection to 192.168.0.123 closed.

これのせいで、ノートでもttyでログイン出来なくなったり、端末を開かなくなった。
1週間後、やっと修正する方法を見つけました。

まずは再起動して、起動画面で「boot -s」を入力して下さい。

Using drive 0, partition 3.
Loading…
probing : pc0 apm pci mem[632K 1533M a20=on]
disk: fd0 hd0+
>> OpenBSD/i386 BOOT 3.44
boot> boot -s

Enter pathname of shell or RETURN for sh: sh

それでシングルユーザーモードに起動します。
しかし、シングルユーザーモードは読み取り専用モードですので、まずはディスクをマウントするのは必要となります。
それ後で、ルートユーザーのシェルはshに交換しましょう。

mount -a
chsh -s /bin/sh root
reboot

今はいつでも通りに起動して、CTRL+Alt+F2を押して、rootアカウントにログインして下さい。
パッケージを更新しましょう。

pkg_add -ui

その後でzshに戻してはOKです。

chsh -s /usr/local/bin/zsh root
exit

CTRL+Alt+F5を押したら、GUI系ログイン画面に帰ります。
ここから普通にパソコンを使えます。

以上


STOP!! SDGsキャンペーン STOP!! スマホキャンペーン

匿名自営業076の設立者
ページのGitリポジトリ