Ubuntu 14.04のUnityの設定をぶっ壊した場合の修復方法
今朝、コンピューターを起動して、Ubuntu 14.04にログインしようとしたら、なぜか画面が固まってしまった。
まあ、この程度は情報強者たる筆者にとっては、造作もないことだ。Ctrl+Alt+F1で華麗に仮想コンソールに切り替えて、Upstartのinitctlを使ってlightdmを再起動させた。
$sudo restart lightdm
カチャカチャ・・・ターンッ!
restartは、initctl restartの代わりに使えるinitctlへのシンボリックリンクだ。おそらく、Ubuntuも将来的にはsystemdに移行するであろうから、いずれはsystemctlを使う必要があるであろう。だが、それはまだ先の話だ。
Ctrl+Alt+F7で戻ったところ、無事にlightdmによるログイン画面が表示された。さっそくログインしなおしたが・・・Unityがぶっ壊れていた。
背景とマウスポインターは表示される。右クリックするとメニューも表示される。しかし、それ以外のUIが一切ない。ランチャーもメニューバーもないので、このままではGUI作業ができない。GNOMEターミナルを開くキーボード・ショートカットも動かない。
仕方がないので、情報弱者らしく再起動をしてみたが、
$sudo shutdown -r now
Unityは壊れたままだった。
やってしまった。これはおそらく、無理やりlightdmを再起動させたので、どこかの設定ファイルが壊れてしまったのだろう。試しに別のユーザーでログインしてみると、ランチャーもメニューバーも通常通り表示される。しかし、Unityの設定ファイルをぶっ壊してしまったので別ユーザーを使います、というのは情報弱者にもほどがある。さて、どうやって復旧しようか。
あるいは、この機会に、別のWMを試してみるという手もある。しかし、何はともかく、Unityを復旧させたい。
まず、Compizの設定をリセットしようと思い立った。Compizの設定をリセットするには、CompizConfig Settings ManagerというGUIのソフトウェアを使う必要がある。しかし、ランチャーもターミナルもないと、起動することができない。
調べたところ、DISPLAY変数を適切に設定することで、仮想コンソールからプログラムを起動してそのウインドウを望みのディスプレイに表示できるようだ。
$sudo apt-get install compizconfig-settings-manager
$export DISPLAY=:0
%ccsm
無事に起動できたので、Unityプラグインを設定しなおしたり、デフォルトの設定を読み込ませたりしてみたが、残念ながら、これでは直らなかった。さて、どうするか。
さらに調べたところ、unityを起動するラッパーである/usr/bin/unityに、--resetオプションを指定すると、設定ファイルをリセットしてくれるという。
$man unity
unity(1) Linux User's Manual unity(1)
NAME
unity - wrapper for starting the unity shell and handling fallback
SYNOPSIS
unity [options]
DESCRIPTION
The unity program can be used to start the Unity shell as a compiz module, and to spec‐
ify how to handle logging, debugging, as well as how to deal with the user's profile.
OPTIONS
--advanced-debug
Runs unity under debugging (using GDB or another debugger tool) to help tracking
issues. Should only be used on request from a developper following a bug report.
--log filename
This parameter, followed by a path or filename, tells the Unity shell to store
logs in the specified file.
--reset
This option allows the user to reset profile parameters in compiz and restart the
Unity shell with default settings.
--verbose
This option turns on displaying additional debugging output for the Unity shell.
It can be used by the user to debug configuration issues. This option is often
used along with the --log option to save output to a file.
SEE ALSO
unity-panel-service (1)
9 December 2010 unity(1)
なるほど、ではさっそく
$ unity --reset
ERROR: the reset option is now deprecated
なんだと。
さらに調べたところ、Ubuntu 14.04では、unity-tweak-toolが公式なレポジトリに入っていて、これにはUnityの設定をリセットする機能があるようだ。
$sudo apt-get install unity-tweak-tool
$man unity-tweak-tool
unity-tweak-tool(1) Unity User's Manual unity-tweak-tool(1)
NAME
unity-tweak-tool - configuration manager for Unity desktop environment
SYNOPSIS
unity-tweak-tool [options]
DESCRIPTION
The unity-tweak-tool program can be used to tweak Unity desktop environment. Unity Tweak
Tool is a one-stop settings manager for Ubuntu Unity.
OPTIONS
-u Starts unity-tweak-tool in Unity section.
-w Starts unity-tweak-tool in Window Manager section.
-a Starts unity-tweak-tool in Appearance section.
-s Starts unity-tweak-tool in System section.
--reset-unity
Reset Unity, wiping all changes to configuration.
BUGS
Please report any bug you may experience to the unity-tweak-tool developers, who can be
reached at https://launchpad.net/unity-tweak-tool.
AUTHOR
unity-tweak-tool was written by Freyja Development Team and this manual page by Barneed‐
har Vigneshwar <barneedhar@ubuntu.com>.
Both are released under the GNU General Public License, version 3 or later.
11 February 2013 unity-tweak-tool(1)
これを使ってみよう。
$unity-tweak-tool --reset-unity
これはうまくいった。無事に、Unityが復旧した。
たまに環境が壊れると、刺激があって面白い。動かないものを動くように直す作業は楽しい。しかし、それは危険な誘惑である。
Linux: 実際にあった話:第一週
もしもし、あたしあたし、姪だけど。新しいパソコン手に入れたんだけどさ、Windowsとか入れたくないのよ。Linuxとかいうやつのインストール手伝ってくれない?
いいよ
第二週
XORGが壊れたって。XORGって何? どうすればいいの
「manページ教えるよ」第六週
autoconfigがうまくいかないんでUbuntuからDebianに変えることにする
「えっ」
Gentooにするかも
「やばい」第十二週
「最近電話に出ないけど」
寝らんない。カーネル、コンパイル、しなきゃ。
「手遅れか」
親に告ぐ:誰か他人に教わる前に、子供にLinuxを教えるべきである。
ドワンゴ広告
この記事はドワンゴ勤務中に書かれた。
昨日、いつも通り午後2時頃にドワンゴに出社したところ、ACアダプターを家に忘れたことに気がついたので、その日はバッテリーが切れる前にさっさと退社した。今日は朝からネタができたので、午前11時に出社した。
ドワンゴは本物のC++プログラマーを募集しています。
CC BY-ND 4.0: Creative Commons — Attribution-NoDerivatives 4.0 International — CC BY-ND 4.0