openSUSEで画面が点滅して使えなくなった
適当にopenSUSEで遊んでいたら突然このような画面に切り替わった。
(https://forums.opensuse.org/showthread.php/518831-The-screen-locker-is-broken-and-unlocking-is-not-possible-anymore より)
そのときちょうど用事が入ったので、数時間してからもう一度PCを開いてみるとCUIの画面が点滅していた。文字もうまく打てない。よく見ると点滅していたのではなく、2つのシェルが交互に切り替わっていた。画面が見づらいだけでなく、キーボードの入力先も切り替わるのでパスワードが打てずにsudoできない。
結論から述べると、再起動してsnapperから数日前のsnapshotに戻すことで適当に解決した。snapperサイコー!
X server segfaulting since 4.14.13によるとシェルが高速に切り替わるのはX.orgのサーバにうまく接続できずに、リトライを繰り返しているのが原因っぽい。
GRUBから起動するときにeキーを押して設定エディタを開きlinuxefi
から始まる行の末尾に3
をつけてrunlevelを変更すると、デスクトップ環境なしで起動できるので点滅も止まる。改めてログインすると、Failed to connect to X Server
と表示されているのが確認できた。Have a lot of fun...
じゃあないんだよ。
普通にCUIが使えるようになったので、$ sudo zypper dup
からパッケージをいろいろ更新することにした。上記サイトにはそれで解決したと書かれていたので。
しかし、実行するとzypper: symbol lookup error: /usr/lib64/libproxy.so.1: undefined symbol: ...
のように表示されうまくいかない。
zypper: symbol lookup error: /usr/lib64/libproxy.so.1: undefined symbol:によると、Tumbleweed向けとLeap向けのパッケージが混ざってしまっているのが原因だった。以下のようにしてTumbleweed向けのリポジトリから再インストールする。
$ sudo rpm -i --force http://download.opensuse.org/tumbleweed/repo/oss/suse/x86_64/libmodman1-2.0.1-17.7.x86_64.rpm
ネットに接続するのを忘れていたので、とりあえず学校の有線LANが使える場所に駆け込みケーブルを差したが接続できなかった。インターフェースは認識されていたので、調べてみるとNetworkManagerの設定が必要らしい。NetworkManagerはTUI版を提供していて、$ nmtui
で起動できる( Wireless in terminalより)。無線も設定すれば普通に使えた。ただ普段パスワードはKDE Walletに保管しているのでKDE上でない端末では毎回パスワードを打つ必要があって面倒。
それに加え、学校のLANにはcaptive portal (Wi2-premiumとかに引っかかったときに出てくるログイン画面などのアレ)が設定されているので、$ w3m google.com
からログインした。数週間前にいた留学生用に英語表記が追加されていたので、日本語を表示できない状態では非常に役立って面白かった。
ところがまだzypper dup
は失敗する。non-ossのリポジトリのrepomd.xml
が見つからないという感じのエラーが出た(うろ覚え)。 Can’t update openSuse 12.3: /repodata/repomd.xml not found を見ると、リポジトリのURLが間違っているらしい。
/etc/zypp/repos.d/repo-non-oss.repo
のbaseurl
を編集して以下のようにする。suse/
を追記。
baseurl=http://download.opensuse.org/distribution/leap/42.3/repo/non-oss/suse/
自分のマシンではrepo-oss.repo
についても編集する必要があった。
もう一度 $ sudo zypper dup
を試すと成功した。もともと使っていたLeap 42.3からTumbleweedに勝手に更新されてちょっと驚いた。Tumbleweedにしようかなと思っていたのでちょうどよかった。
ただ結果として、マウスポインタは表示されるようになったが他のタスクバーやウィンドウは一切表示されない変な状態になってしまった。
よくわからない状態になったため潔く諦めてsnapperから2日前ぐらいのsnapshotを回復した。初めて知ったときは「こんなのいるのか〜?」と思っていたが便利だ…。
(追記: 2018/06/09) どうやらwireshark-ui-qt
パッケージをインストールしてグラフィック関係のパッケージを書き換えてしまったのが根本的な原因だとわかった。
以下のプロンプトでyesを入れると負け。
File /usr/lib64/libGL.so.1
from install of
libglvnd-1.0.0-1.1.x86_64 (openSUSE:Factory)
conflicts with file from package
Mesa-libGL1-17.0.5-176.1.x86_64 (@System)
File /usr/lib64/libGLESv2.so.2.0.0
from install of
libglvnd-1.0.0-1.1.x86_64 (openSUSE:Factory)
conflicts with file from package
Mesa-libGLESv2-2-17.0.5-176.1.x86_64 (@System)
File conflicts happen when two packages attempt to install files with the same name but different contents. If you continue, conflicting files will be replaced losing the previous content.
Continue? [yes/no] (no):
Backlinks
There are no notes linking to this note.