LoginSignup
0
0

More than 5 years have passed since last update.

起動中のUbuntu 16.04LTSのGUI上アプリで未保存ファイルがあるのにUSBが全部死んだ場合の対処法

Posted at

そんなことが可能なのか?

出来る。ネットワーク経由でssh接続できてsudo権限あるUbuntuならね。
今、物理モニタに表示中セッションのdisplay:0にディスプレイサーバー(lightdm)を起動させたままVNCで接続できれば!

ことの始まり

起動中、突然にUSB接続のマウスとキーボードが死ぬ。
そんなバカなことが!画面が目の前にあるのにコントローラが止まった。

急いで別マシンからSSHで繋いで確認する。
syslogにはこんなログが書き込まれている。死んでいるらしい。

cmd
$ tail -n 1000 /var/log/syslog
~~
Jan 20 09:59:28 myubuntu systemd[1]: Starting Daily apt download activities...
Jan 20 09:59:29 myubuntu systemd[1]: Started Daily apt download activities.
Jan 20 10:16:34 myubuntu kernel: [591432.277331] usb 5-4: USB disconnect, device number 7
Jan 20 10:16:34 myubuntu kernel: [591432.277336] usb 5-4.3: USB disconnect, device number 8
Jan 20 10:16:39 myubuntu kernel: [591437.287598] xhci_hcd 0000:28:00.3: xHCI host not responding to stop endpoint command.
Jan 20 10:16:39 myubuntu kernel: [591437.287606] xhci_hcd 0000:28:00.3: Assuming host is dying, halting host.
Jan 20 10:16:39 myubuntu kernel: [591437.307843] xhci_hcd 0000:28:00.3: HC died; cleaning up
Jan 20 10:16:39 myubuntu acpid: input device has been disconnected, fd 21
Jan 20 10:16:39 myubuntu acpid: input device has been disconnected, fd 22
Jan 20 10:16:39 myubuntu kernel: [591437.480291] usb 5-1: USB disconnect, device number 2
Jan 20 10:16:39 myubuntu kernel: [591437.480298] usb 5-1.3: USB disconnect, device number 4
Jan 20 10:16:39 myubuntu acpid: input device has been disconnected, fd 13
Jan 20 10:16:39 myubuntu acpid: input device has been disconnected, fd 14
Jan 20 10:16:39 myubuntu kernel: [591437.655922] usb 5-1.4: USB disconnect, device number 6
Jan 20 10:16:39 myubuntu kernel: [591437.764101] usb 5-3: USB disconnect, device number 3

~~

エラーメッセージはぐぐってもバグとしか出てこない。
確認するが、確かにlsusbコマンドを流しても繋がてないし、パージされた番号を再度アタッチしてもダメ。

cmd
$ lsusb -t
/:  Bus 06.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/:  Bus 05.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M
    |__ Port 2: Dev 2, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 480M
# echo -n "5-4" > /sys/bus/usb/drivers/usb/bind
-su: echo: 書き込みエラー: そのようなデバイスはありません

そのまま再起動したら良いのはわかっていたがデータを失うのは辛いので頑張る。

実際やったこと

cmd
$ vino-preferences
→ サーバ起動しない。ローカルのGUIでやれよ!という原因のエラーで挫折

$ sudo apt-get install x11vnc xinetd
$ sudo x11vnc -storepasswd /etc/vncpasswd
$ x11vnc -localhost -rfbauth $HOME/.vnc/passwd -display :0
→ サーバ起動しない。失敗、次のコマンドを試す。※この段階でvncのパスワードを設定した。

$ sudo apt-get install tightvncserver
$ tightvncserver -display :0 -passwordfile ~/.vnc/passwd
→ Couldn't start Xtightvnc; trying default font path.
→ サーバ起動しない。ダメ、次!

$ sudo apt-get purge tightvncserver
$ sudo apt-get install libtasn1-3-bin libtasn1-bin
$ sudo apt install vnc4server
$ x0vncserver -display :0 -passwordfile ~/.vnc/passwd
→ VNCサーバ起動!繋がった!

そう、x0vncserverを使えば出来る。5900番ポート開いているので繋がる。
サービスではないので、x0vncserverの実行中ssh接続を切るとx0vncserverは落ちる。まあ緊急用だし、勝手に常時起動より安心だよね。

性能的には4Kクラスの画面2枚のマシンにもノートPCから繋いで保存ボタンを押せた!

以上!

参考:

linuxでのusbの抜き差しをコマンドで実施する|えむけいプラン(公式)
起動済みのXをTigerVNCで共有 - matoken's meme
mieki256's diary - Ubuntu 16.04上で x0vncserver の動作確認をしてみたり

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0