Linux Mintシステム/カスタマイズ

Remastersysで「カスタムLive CD/USB」を作る(LinuxMint Mateをベースに)

Ubuntu系のディストリビューションで便利なことの一つとして、容量さえ大丈夫であれば、USBメモリー1本にOSもデータもまるごと入れてしまう事も可能となる点があります。

方法については、上記の記事に書いておりますが、動作はさほど速くはなく、やはりHDDやSSDのようにはいきません。

ところが、「LiveUSB」であれば、上の方法と比べると、かなり動作が軽く容量もコンパクトなものとなります。
今回は、LinuxMint Mateをベースとさせていただいて、自分オリジナルの「カスタムLiveUSB」を作成して、軽快に動作させる方法について見ていきたいと思います。

「カスタムLiveUSB」を何に使う?

「カスタムLiveUSB」を作っておくと、以下のような時に便利かと思います。

◆Live起動で用いる場合

  • 自分の好みのアプリを追加して、壁紙、デスクトップなどの様々な設定を、Live起動するたびに、いちいち設定変更する面倒な手間を省きたい。

◆インストールメディアとして用いる場合

  • 何台ものPCにインストールする時に、自分の好みの設定が施され、好みのアプリがすでに入った状態で、インストール後にすぐに使えるようにしたい。

◆レスキュー用として

  • Windowsパソコンが起動できなくなった時の診断用、データ救出用として常備しておきたい。

「LiveUSB」はなぜ(少し)速い?

技術的なことは書きませんが、長年にわたるオープンソース・コミュニティの皆さんによる膨大なご尽力の積み重ねにより、1枚のCDでLinuxを動かすことができるような仕組みが開発されてきました。

この仕組みのおかげで、OSが低容量で圧縮されて格納している1枚のCDでもパソコンを起動し、比較的軽快に動作するようになっています。CD/DVDなどの光学メディアよりもUSBメモリーの方が転送速度が速いので、USBから起動すれば、さらに軽快に動作することになります。

これにより、USBメモリーにOSを丸ごとフルインストールするよりも、サイズはコンパクトですし、動作は軽快なものとなるワケですね。

それでは早速、手順です。

(1)事前準備:カスタムOS作成ツール「Remastersys」のインストール

Ubuntu系のディストリビューションを自分なりにカスタマイズしたり、システムをバックアップするツールとして親しまれてきた「Remastersys」ですが、すでに開発者本人による公開は終了しています。

現在は開発者が公開したソースを元に、Launchpadで個人によるPPA(下記URL)により、メンテナンスが継続されていたりしています。

https://launchpad.net/~mutse-young/+archive/ubuntu/remastersys

しかし、LinuxMint Mate 17.2で、検証してみたところ、リマスター後、WebブラウザーがDNSエラーでアクセス不可となる不具合があり、いちいちシステムの設定変更を行う必要がありました。

いくつかのバージョンをテストしてみましたが、下記のftpサイトからダウンロードしたものを使ってみたところ、うまくいきました。

ftp://ftp.gwdg.de/pub/linux/easyvdr/mirror/remastersys/ubuntu/

001GetReamastersys

インストールは、次の2つを行います。

1,「remastersys_3.0.4-2_all.deb」をダウンロードし、ダブルクリック。起動する「Package Installer」でインストール。これによりコマンドラインでカスタムISOが作れるようになります。

2,GUIで操作したい場合には、続いて「remastersys-gtk_3.0.4-1_all.deb」もダウンロード〜インストール。「remastersys-gui」というものもありますが、操作性から”gtk”の方がオススメです。

#利用にあたっては、あくまでも自己責任でお願いします。

(2)作業手順

1,作業用のユーザーを作成し、「自動ログイン」を有効にする

LinuxMintを使い込んだ状態でリマスターを行うと、色々と不具合の元となる可能性もあるので、リマスター用に新しいユーザーを「管理者権限で」作成しておくといいと思います。

#余裕があれば、リマスター用のPCを用意してLinuxMintをまっさらな状態でセットアップして行うと、無用なトラブルを回避できるかも知れません。

UserPassword_001

ここで、パスワード設定の際に、「ログインの時にパスワードを尋ねない」にチェックを入れておきます。

次に、「Menu」>「システム管理」>「ログイン画面」を開きます。

「自動ログイン」メニューで、「自動ログインを有効にする」、「時間指定ログインを有効にする」にチェックを入れて、両方に、カスタマイズ作業中のユーザーを選択しておきます。

LoginConf

さらに、「オプション」メニューで、「自動ログインを適用」にチェックを入れておきます。

LoginConfOption

以上のようにしておかないと、Live起動の際に、ログイン画面が出てしまいます。

その時、たとえ設定したユーザーのパスワードを入力したとしてもログインすらできなくなります。

#Live起動の際のパスワードは、ランダムに生成されてしまう仕様となっています。

2,リマスター用のユーザー・アカウントでログインし直して設定作業

リマスター用のアカウントでログインし直して、アプリケーションの追加/削除、壁紙/デスクトップなどの設定、トラックパッドの動作設定など、「カスタムLiveUSB」に反映させたいカスタマイズを行います。

3,「ユーザー」の”設定ファイル”(隠しファイル)のいくつかを「/etc/skel」にコピー

この作業が、リマスターの一番のポイントになります。

Linuxでは/etc/skel以下に設定ファイルを入れておくと、ユーザ追加時に/etc/skel以下と同じ構成のユーザディレクトリが作成されます。

#”skel”はスケルトンの略です。

この機能を利用して、上記「2,」で行った設定ファイル(頭にピリオドが付いた隠しファイル)を/etc/skelにコピーしておくことで、Live起動の際にもデスクトップの設定などが反映されるようになるワケです。

#設定ファイル(隠しファイル/フォルダー)を表示させるには、ファイルブラウザーで「表示」>「隠しファイルを表示する」にチェックを入れます。

ユーザーがデスクトトップなどのカスタマイズを行った設定は、「/home/(ユーザーディレクトリ)/.config/dconf」の中の「user」に格納されています。

Screenshot-dconf

さて、Remastersysには、個人の設定ファイルを「/etc/skel」にコピーする機能があるのですが、これがうまく機能しません。

下の画面の下から2つ目のメニュー「User.whose current settings will be used as default」のメニューなのですが、実は、上で述べた肝心な「/home/(ユーザーディレクトリ)/.config/dconf/user」がコピーされません。

003skel

・・・なので、手動でコピーする必要があります。(もちろん管理者権限が必要です。)

#LinuxMint Mateの場合、下の画像のようにファイルブラウザーでフォルダー上で右クリックすると「管理者として開く」というメニューがあるので管理者権限でのコピー作業が楽ですね。

005admin

  • この「/etc/skel」に大きなファイルを置いてしまうと、Live起動が遅くなりますので要注意。
  • 特に、「google-chrome」や「.mozilla」などが含まれてしまうと拡張機能、プラグイン、アプリなども含まれてしまうだけでなく、アクセス先のパスワードなども含まれてしまうので注意が必要です。

・・・ということで、カスタマイズした設定をどこまで「/etc/skel」に入れておくか、その選別が大きなポイントとなります。

最も確実なのは、「/home/(ユーザーディレクトリ)/.config/」を「/etc/skel」に管理者権限でコピーして、不要なものを削除する方法です。

最低限必要な設定ファイルは、「.config」フォルダーにあります。

このフォルダーをまるごと「/etc/skel」にコピー。この中の「dconf」フォルダーの中に「user」があることを確認します。

あとは「user-dires.locale」を残します。これらが最低限必要な設定ファイルとなるものと思います。

configfile

あとは好みに応じて設定ファイルをどこまで入れておくかを検討してみるといいでしょう。これがカスタマイズを行うにあたっての、試行錯誤のポイントとなります。

<注意点>

user-dirs

「/home/(ユーザーディレクトリ)/.config/」にある「user-dirs.dirs」は「/etc/skel」にはコピーしない(あったら削除する)ようにします。これを入れてしまうと、Live起動後のhomeディレクトリの構造が乱れます。

4,「/etc/skel」のアクセス権を適切なものに変更しておく

端末を開いて、以下のコマンドで、「/etc/skel」の配下のフォルダー/ファイルのアクセス権を設定しておきます。

sudo chmod -R 755 /etc/skel

 

以上で準備は完了です。

あとは、Remastersysを起動してカスタマイズのISOファイルを作成します。

5,「Remastersys」の「settings」タブでの設定

「Menu」>「システム管理」>「Remastersys」を起動し、「Settings」タブを開きます。

Usernameに、カスタマイズ作業を行っているユーザー名を記入します。

これを行っておかないとLive起動時にデスクトップが現れません。

RemastersysConf

6,「Remastersys」の「Actions」タブで「Dist」ボタンをクリック

いよいよオリジナルのLive起動用のISOファイルの作成です。

Remastersysの「Actions」タブに戻って、「Dist」ボタンをクリックします。

013Output

自動的に行われる作業工程が、画面に表示されます。

作業用PCに搭載されているCPU,メモリーなどにもよりますが、かなりの時間がかかります。

7,オリジナルのISOファイルの完成

Remastersysによる作業が終わると、「/home/remastersys/remastersys」の下に、様々なファイルに混じって「xxxxxxxxx.iso」というファイルが出来上がります。

014ISO

このISOファイルを、「Menu」>「アクセサリ」>「USBイメージライタ」や、”Unetbootin”などで、USBメモリーに転送します。

もちろん、ISOファイル上で右クリックして、「Brasero」でDVD-Rに焼くこともできます。

以上で、LiveUSB/DVD でPCを起動させる事ができれば成功です。

動作チェックにはVirtualBoxが便利

Remastersysによって細かくカスタマイズを行っていくと、試行錯誤が必要になるかもしれません。

毎回、ISOファイルをUSBに転送したり光学ディスクに焼いて、うまく動作しないと時間の無駄となってしまいます。

出来上がったISOファイルの動作チェックを行うにはVirtualBoxが便利です。

021virtualbox

手が込んだカスタマイズを行うならば、このように仮想環境で、無事に起動でき、カスタマイズしたものがきちんと反映されている事を確認してから、USBメモリーに転送したり光学ディスクに焼くようにするようにするといいと思います。

022Live

最後に

以上のように、Remastersysでは、Ubuntu系のディストリビューションをベースに、自分の好みでカスタマイズする事が気軽にできます。

本格的にカスタムしていくには、「/etc」の配下、「/usr/share」の配下など、すなわちシステムの根幹をカスタマイズしていくことになりますが、かなり骨が折れる作業となります。

今回ご紹介した方法は、「/etc/skel」の機能を用いることで、かなり簡単な方法でカスタマイズ可能な方法となろうかと思います。

本格的なLiveCD/DVD/USBのカスタマイズ&リマスタリングの方法は、下記のページにまとめられています。

https://help.ubuntu.com/community/MakeALiveCD/DVD/BootableFlashFromHarddiskInstall

いわゆるプロプライエタリなアプリケーション、素材を含む場合には、あくまでも個人利用に留める必要があります。

また、カスタマイズしたISOファイルを公開、配布する際には、ライセンスを遵守する必要があり、注意が必要です。