2013年9月21日土曜日

ubuntu12.04を再起動したら画面が表示されなくなった

- "辛かった" -

っていうわけでubuntu12.04 LTSを使っていてX Window Systemに一日苦労した話です。

まず、X Window Systemについてです。

"X Window System(エックスウィンドウシステム、別称:「X11」・「X」など→名称については後述)とは、ビットマップディスプレイ上でウィンドウシステムを提供する表示プロトコルである。" -via wikipedia (http://ja.wikipedia.org/wiki/X_Window_System)

ubuntuのGUI画面が表示されないとき、だいたいこの子が原因だったりします。


今回はこんなかんじになりました。
------------------------------------------------------------------------------------------------------

うわーなんかいろいろ設定変えちゃったなー再起動しよーっと!


いつも通り起動…と……………あれ……ログイン画面が…出てこない……

まーたなんかgrubの設定変えちゃったかなー…

grubでubuntuのリカバリーモードを起動して…
ここでgrubが起動してることに気がつくべきだった

http://bats.cocolog-nifty.com/blog/2012/04/ubuntu1204-972e.html
ここを見ると…このgrubのバックアップとって…

日本語がttyでは表示されないのでここから最後まで◆マークと戦っていました。

$ sudo cp /etc/default/grub /etc/default/grub.back
$ sudo vim grub
中身~~~~~~~~~~

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
        ↓
GRUB_CMDLINE_LINUX_DEFAULT="quiet console=tty1"


~~~~~~~~~~~~~~

$ sudo update-grub

"よしこれで再起動してみよう"

PANIC: early exception ** ***********

!?!?!?

か…カーネルパニック……?

さっきのがよくなかったんだもどそうもどそう…

$ sudo rm /etc/default/grub
$ sudo mv /etc/default/grub.back /etc/default/grub

じゃあ以前もちょっと迷ったX windowかな…?

$ cd /etc/X11
$ ls

なにも異常なかった…

~ぐだぐだ調べて5時間経過~

とりあえずstartxすればわかるかも…
 
$ startx

***** *********** **************
******* **************** *******
/etc/X11/X  no such file or directory

!?!?!?

Xなんて確かになかったな…でももとのないならしかたないか…

よし!再インストールしよう!

ubuntu liveCDをCDdriveに挿入

さーて…一応/etc/X11/を見てみるか…

$ ls

X Xinit ****** ******

こっちにはある…!

じゃあこのliveCDにある方を持っていけば…シンボリックリンクだからもとのファイルをlinkすれば…!

(liveCD上のterminal)
$ ln -s /usr/bin/X11/X /media/my HDD name/etc/X11/X

よしこれでOKだろう!


失敗

そうか!liveCDは使わないからちゃんともとのHDDの方から引っ張らなくちゃいけないのか!

(liveCD上のterminal)
$ ln -s /media/my HDD name/usr/bin/X11/X /media/my HDD name/etc/X11/X


失敗


~更に2時間経過~

http://askubuntu.com/questions/232926/etc-x11-x-not-executable-error-when-startx

うーん…ここを見るとxserver-xorgをインストールすればいいのかな…?

$ sudo apt-get update && apt-get upgrade
$ sudo apt-get install -reinstall xserver-xorg

エラーがでた…?けど日本語は◆だから読めない…

オプションだから-reinstall じゃなくて--reinstallだ!

$ sudo apt-get install -reinstall xserver-xorg

ふう…再起動だ…


失敗


ふと思いstartxをしてみる。

$ startx

/etc/X11/X not such file or directory


????

シンボリックリンクを確認してみるともとのリンク、つまりliveCDから見た/media/my HDD name/etc/X11/Xにリンクがついており、Xが開けなくなっていた。

よし…
$ ln -s /usr/bin/X11/X /etc/X11/X

$ sudo reboot now

成功した!!!

------------------------------------------------------------------------------------------------------


今回はいろいろな失敗が重なって時間がかかってしまいました。

  • ttyの文字化け
  • grubの原因だと勘違い
  • リンク先の間違い

今回の起動しなかった主な原因は/etc/X11/Xの消失です。
もっと先にliveCDと比較しておけば良かったと思いました。

あとubuntu13.04からX window systemからMirに変わっているそうです。
関係ないですね。


次ほかのことが起こってもこんなに時間がかからないようにしたいですね……
っていうか第一なんで消えたんだろ…

2013年9月12日木曜日

ubuntuでデュアルディスプレイでの動画最大化について

マルチディスプレイでyoutubeやFlash動画などを見るときに、サブディスプレイで最大化をしてももう一つのディスプレイで作業しようとすると最大化が解除されるのがイライラするのでそれを解消させます。

環境
ubuntu12.04.2 LTS 
chrome 29.0.1547.65
adobe flashplayer Shockwave Flash 11.2 r202

  • ghexをインストールします。

今回はバイナリを編集するのでghexというバイナリエディタを使用します。
$ sudo apt-get install ghex


  • 次にghexで使用してるブラウザのadobe flashplayerのプラグインを編集します。

chromeの場合アドレスバーに
chrome://plugins
と入力してShockwave Flashのある場所を確認してください。
その場所のlibflashplayer.soを編集します。

$ sudo ghex /to-your-flashplayer-plugin-path/libflashplayer.so


ghexには指定した場所に移動する機能があります。
探すものは_NET_ACTIVE_WINDOWです。この記述を__ET_ACTIVE_WINDOWと変えることで最大化が解除されなくなります。
必ず必要なことは文字数を変えないということです。
変更した後保存し、ブラウザを再起動するとできると思います。



アアッ...youtubeとか最大化がうまくいってない...これじゃあまり意味がない...

緊急の代替案としてchromeのextentionのMaximizeFlashを使用するとします…


まあ一応最大化したまま他の画面で作業はできるようになったから次また調べてやり直そゔ...


ubuntuはデュアルディスプレイ関連が甘いような…普通の人は使わないのかな…?
あとwindowsのaero snapみたいなのがデュアルディスプレイのディスプレイを跨いで移動してくれないなぁ…
windows7だと[win]+[arrow]でどんどん移動できたからこれがうまくubuntu12.04 LTSでも作動するようにしたいな…


さんこうさいとさま
http://www.ubunturoot.com/2011/07/fullscreen-flash-video-with-dual.html
http://www.webupd8.org/2012/10/ubuntu-multi-monitor-tweaks-full-screen.html