ごく偶に、Webアプリケーション教室で
「パソコンの台数が足りない! 誰かノートパソコン持ってない?」
ということで自分のUbuntuの入ったマシンを貸し出そうと思った時や、
「試しにUbuntu使ってみたい」
という人のために一時的にマシンを貸そうと思った時に、設定が万人向きじゃない
(壁紙が他人に見せるには恥ずかしいものである、キーボードがDvorak配列、マウスが左右逆 etc…)
ということでゲストセッションを使いたい時があると思います。え、無い?
でももし他人にUbuntuを使わせる機会がほんのちょっとでもありそうだと思ったらやるに越したことは無いと思いますので書き記しておきます。
大分荒業な部分がありますので、そこはご指摘をいただけると幸いです。
また、記事内では指示の記述量を短略にするため、コマンドで指示を書いたり、省略する部分があります。ご容赦ください。またわかりづらいところがあればお気軽にコメント欄で問い合わせください。
ゲストセッション無効化がしたい方:
Ubuntu 12.04 ログイン画面 その3 – ゲストセッションを無効にする – Ubuntu kledgeb
そもそもゲストセッションって一体何者?
ゲストセッションがどういうユーザーなのかと言いますと、
動的に作られて、自動的に削除される一時的なユーザー
です。
ゲストセッションでログインしますと、あるプログラムが動いて即席でユーザーを作ります。
そしてそのユーザーがログアウトしたら、そのユーザーで操作していた履歴が削除されるという動きをします。
なのでゲストセッションで壁紙を変えようがターミナルの色設定を変えようが、マウスを左右逆にしようが、キーボード配列を変えようが、次にゲストセッションを使うときには設定が消えているので、自分の設定をそのまま使わせると混乱させるという時には非常にありがたい機能なのです。
そのため、いくら持ち主が万人用にゲストセッションの設定を変更しても、ログアウトした時には設定が消えてしまうため、人に貸し出せないと悩んだ方もいらっしゃるかもしれません。
ゲストセッションに永続的な設定をつける
やること
- ゲストセッション用のディレクトリを作る
- サンプルとして新しいユーザーを作る
- 新しいユーザーの設定
- 設定ファイルを 1. のフォルダへコピー
ディレクトリを作る
sudo mkdir -p /etc/guest-session/skel/
ゲストセッションが終了しても残しておきたいデータのためのディレクトリをここで作ります。
mkdir に -p オプションをつけるのは、既に同じディレクトリが存在した場合は作らずにスルー、必要によっては一つ上のディレクトリを作らせるようにするためです。
サンプル用の新しいユーザーを作る
Ubuntuの「システム設定」から システム -> ユーザーアカウント を開きまして、ゲストセッションのサンプル用のアカウントを作ります。
新しいユーザーを万人向けにカスタマイズ
先ほど作ったユーザーにログインし、設定をしていきます。
特にIMEの設定は13.10になってガラリと変わりましたので、im-setup-helperやfctix-setup-helperなどを利用して設定しておきましょう。
日本語キーボードで
「”半角/全角”キーで設定を変えたい」ですとか
「特に説明せずにサッと使わせたい」ということであれば
fcitxの導入をおすすめします。
設定ファイル(主に.gconf)をコピー
管理者権限を持ってるユーザーに戻り、そこから以下のコマンドを実行します。
sudo cp -r /home/(さっき作ったユーザー)/.gconf /etc/guest-session/skel
.gconfフォルダ以下に、壁紙などの設定が書き込まれていることが多いため、こちらのディレクトリの中身を一式コピーします。KDEやXfceなど別のデスクトップ環境を使っている場合はその限りでは無いため注意してください。
以上を行ってゲストセッションにログインし、設定が反映されているか確認してください。
されていなかった場合は、サンプル用のユーザーを再度設定してコピーしなおしてください。
お疲れ様でした。
参考資料:users – How do I change the guest session defaults – Ask Ubuntu
この記事では補えていないところ
- 自動起動するアプリケーションの設定
- デフォルトではインストールしていないアプリケーションの登録・設定
- ランチャーの並び替え
後日調査しつつアップデートしていきます。