最新のChromiumもChromeも動かない古いPCでChromiumを使うLinuxの設定

SSE2非搭載のパソコンでは、最新のChromium browserもGoogle Chromeもサポート対象外という事でバージョンアップすると起動できなくなります。UbuntuベースのLinux Mintで元のバージョンに戻したんですが、その作業に苦労したので方法をメモしておきます。また、再びバージョンアップされないようにする設定方法も書き残しておきます。古いPCでは設定しておいた方が安心です。

SSE2非搭載のパソコンでは、最新のChromium browserもGoogle Chromeも立ち上がらなくなるみたいです。サポート対象外という事でバージョンアップすると起動できなくなります。UbuntuベースのLinux Mintでapt-get upgradeをしたら立ち上がらなくなりました。

そこで、元のバージョンに戻したんですが、その作業に苦労したので方法をメモしておきます。また、再びバージョンアップされないようにする設定方法も書き残しておきます。古いPCでChromium browserを使われる場合は設定しておいた方が安心です。

事のあらまし

うちのフラッグシップマシンは富士通FMV DESKPOWER CE22DといってCPUにAMD Athlon™XP プロセッサ 2200+を搭載しています。富士通サイトによると大容量256MBメモリ搭載との事ですが、うちではさらに512MB追加して、なんと768MBもあります。

このフラッグシップマシンに OS Linix Mint 13(LTS: Long Term Support)を入れて動かしているわけです。ところがapt-get upgradeしたらChromium browserが動かなくなりました。アイコンをクリックしても反応がないので、コンソールで chromium-browser & と打つと「Illegal instruction」と表示されます。

調べてみたところ、Chromium browserも、それがベースのGoogle ChromeもSSE2非搭載のパソコンでは動かなくなったらしいです。

Linux Mint Forums • View topic – Updated Chromium browser not workingより

That’s it! Anybody else had this problem? Anybody know how to solve it? Although the AthlonXP doesn’t have SSE2 I’ve always been able to run earlier versions of the browser without trouble before. Opera and Firefox both run fine. Any experts out there know how to fix this? Could it be down to a hardware problem? Any help or advice would be very welcome.

Googleによる翻訳(訳文のまま)

以上です!誰もが他にこのような問題を持っていた?誰でもそれを解決する方法を知っている? AthlonXPのがSSE2を持っていませんが、私は常に前に問題なくブラウザの以前のバージョンを実行することができました。 OperaとFirefoxは両方問題なく動作。そこに任意の専門家がこの問題を解決する方法を知っている?それがダウンしてハードウェアの問題になるだろうか?すべてのヘルプやアドバイスは非常に歓迎されるでしょう。

Chromiumの便利なところは、他のパソコンでChromiumやGoogle Chromeを立ち上げても、ログインすればお気に入りが保存されているという点。我が家のフラッグシップマシンのLinuxでChromiumに登録したブックマークが、他のWindows PCで立ち上げたGoogle Chromeで、そのまま使えるというスグレモノです。

さらに恐ろしいことにいろいろなサイトへのログインパスワードも保存されていて、はじめて使うパソコンでサイトを開いてもパスワードが当たり前のように入力されています。これが便利なんですが、グーグルに情報を抜かれているという懸念もあります。(Google Syncというサービスのようです)

そんなChromiumですが、我が家のフラッグシップマシンで立ち上がらないと見たいページがどこにあるのかわかりません。firefoxなど他のブラウザは立ち上がるのでWebは見られますが、使い慣れていないブラウザだと、お気に入りも登録してないし不便です。

そこで、Chromiumを古いバージョンに戻すことにしました。これが結構大変でした。といっても、知らないことを調べるのが大変だったのであって、作業そのものは大した量ではありません。

apt-getでバージョンを指定してインストールする(失敗)

最初にやったのはapt-getで古いバージョンに戻すという作業。ただ、これは rollback する方法が見つからなかったので、一旦入れてしまった新しいChromium browserを削除して、古いバージョンを指定してインストールという事に挑戦しました。しかしこれは失敗します。

参考までにrollbackとは次のような意味です。

ロールバックとは 【 rollback 】 – 意味/解説/説明/定義 : IT用語辞典より

データベースに障害が発生したときに、記録してあるチェックポイントにまでデータを巻き戻して、改めて処理を開始すること。バックアップ時のデータは再現されるが、それ以降に行った処理は失われる。主に、データベースの論理的障害に対して用いられる。

現在インストールされているバージョンを調べる

まず、今入っているバージョンがわからないとそれより古いバージョンがわからないので、コンソールで dpkg -l | grep chromium と実行します。これでインストールされているすべてのパッケージから chromium を含むものを抽出します。

dpkg -l は debian系Linuxでインストール済みのパッケージをすべて表示するコマンドです。その結果をUNIX系のOSで使えるパイプ | にかけて、grep コマンドで chromium を含むものだけ抽出して表示しています。

下の例は、復旧後の現在の状態です。実際に削除したバージョンは 36.0.1985.125-0ubuntu1.12.04.0 です。

$ dpkg -l | grep chromium
ii  chromium-browser                       32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1 Chromium browser
ii  chromium-browser-l10n                  32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1 chromium-browser language packages
ii  chromium-codecs-ffmpeg                 32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1 Free ffmpeg codecs for the Chromium Browser

この時、先頭に i と表示されたものが現在インストールされているものです。先頭に r と表示された場合は既に削除されたもので、h の場合はホールドされているものという意味です。

これで、バージョンが32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1の3つのパッケージ、chromium-browser、chromium-browser-l10n、chromium-codecs-ffmpegがインストールされていることがわかります。(繰り返しますが実際に削除したのは 36.0.1985.125-0ubuntu1.12.04.0 で、上の例は復旧後の現在コマンドを打ち込むとこうなるという例です)

インストールされている動かないバージョンを削除する

apt-getでアップグレードする場合なら、古いファイルを削除しないでも自動で入れ替えてくれますが、今回はダウングレードなのでトラブルが起きないように念の為、今入っているバイナリーは事前にアンインストールしておくことにしました。

sudo apt-get remove chromium-browser chromium-browser-l10n chromium-codecs-ffmpeg

これで、削除できたはずなのですがもういちど dpkg -l | grep chromium で確認するとまだ残っていました。そこで dpkg で削除を試みます。

dpkg -r chromium-browser chromium-browser-l10n chromium-codecs-ffmpeg

そうすると,必要なら –purge を使えというようなメッセージが出たので –purge オプションで全部削除しました。設定ファイルが残っていたのが原因です。

dpkg -r パッケージ名 (設定ファイルは残して実行ファイルを削除する)
dpkg –purge パッケージ名 (設定ファイルも含め全てのファイルを消去する)

設定ファイルは残っていても問題ないかと思いましたが、ブックマークは保存されているわけだし、あくまで念の為に削除しておきました。ただし、復旧後に再設定は必要になります。

再インストール後、パスワードが保存できなくなった場合は設定画面で、一度「このユーザーを削除」を実行します。警告が出ますが構わずに削除して、再び同じユーザーでログインすればパスワードが自動入力されるようになります。

chromiumの設定画面

インストールできるバージョンを調べる

今入っているバージョンがわかったので、それより古いバージョンを入れればいいわけですが、やり方がわかりません。そこで、参考にしたのがこちらのサイトです。

apt-getで特定のバージョンをインストールする – Ryoの開発日記

今使っているシステムに、どのバージョンのバイナリーが入れられるのかは apt-cache showpkg パッケージ名 でわかるらしいです。

実際に apt-cache showpkg chromium-browser と打ってみました。非常に見にくいのですが、36.0.1985.125-0ubuntu1.12.04.0~pkg897 と 32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1 なら入るみたいです。動かなかったのが 36.0.1985.125-0ubuntu1.12.04.0 なのだから 32.0.1700.107-0ubuntu0.12.04.1 にすればいいようです。

$ apt-cache showpkg chromium-browser
Package: chromium-browser
Versions: 
36.0.1985.125-0ubuntu1.12.04.0~pkg897 (/var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise-updates_universe_binary-i386_Packages) (/var/lib/apt/lists/security.ubuntu.com_ubuntu_dists_precise-security_universe_binary-i386_Packages)
 Description Language: 
                 File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise_universe_binary-i386_Packages
                  MD5: f899058e5c597ae295f6ef23b467dade
 Description Language: en
                 File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise_universe_i18n_Translation-en
                  MD5: f899058e5c597ae295f6ef23b467dade
 Description Language: ja
                 File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise_universe_i18n_Translation-ja
                  MD5: f899058e5c597ae295f6ef23b467dade

32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1 (/var/lib/dpkg/status)
 Description Language: 
                 File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise_universe_binary-i386_Packages
                  MD5: f899058e5c597ae295f6ef23b467dade
 Description Language: en
                 File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise_universe_i18n_Translation-en
                  MD5: f899058e5c597ae295f6ef23b467dade
 Description Language: ja
                 File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise_universe_i18n_Translation-ja
                  MD5: f899058e5c597ae295f6ef23b467dade

18.0.1025.151~r130497-0ubuntu1 (/var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise_universe_binary-i386_Packages)
 Description Language: 
                 File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise_universe_binary-i386_Packages
                  MD5: f899058e5c597ae295f6ef23b467dade
 Description Language: en
                 File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise_universe_i18n_Translation-en
                  MD5: f899058e5c597ae295f6ef23b467dade
 Description Language: ja
                 File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise_universe_i18n_Translation-ja
                  MD5: f899058e5c597ae295f6ef23b467dade


Reverse Depends: 
  pepflashplugin-installer,chromium-browser 23.0
  chromium-codecs-ffmpeg,chromium-browser 4.0.203.0~
  pepflashplugin-installer,chromium-browser 23.0
  djview-plugin,chromium-browser
  djview-plugin,chromium-browser
  chromium-codecs-ffmpeg-extra,chromium-browser 4.0.203.0~
  chromium-codecs-ffmpeg,chromium-browser 4.0.203.0~
  chromium-browser-l10n,chromium-browser
  chromium-browser-l10n,chromium-browser 36.0.1985.125-0ubuntu1.12.04.0~pkg897.1~
  chromium-browser-l10n,chromium-browser 36.0.1985.125-0ubuntu1.12.04.0~pkg897
  chromium-browser-l10n,chromium-browser
  chromium-browser-l10n,chromium-browser 32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1.1~
  chromium-browser-l10n,chromium-browser 32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1
  chromium-browser-dbg,chromium-browser 36.0.1985.125-0ubuntu1.12.04.0~pkg897
  mythbuntu-desktop,chromium-browser
  mozplugger,chromium-browser
  lxde-core,chromium-browser
  lxde,chromium-browser
  lubuntu-desktop,chromium-browser
  gecko-mediaplayer,chromium-browser 4.0
  djview-plugin,chromium-browser
  djview-plugin,chromium-browser
  chromium-codecs-ffmpeg-extra,chromium-browser 4.0.203.0~
  chromium-codecs-ffmpeg,chromium-browser 4.0.203.0~
  chromium-browser-l10n,chromium-browser 18.0.1025.151~r130497-0ubuntu1
  chromium-browser-dbg,chromium-browser 18.0.1025.151~r130497-0ubuntu1
Dependencies: 
36.0.1985.125-0ubuntu1.12.04.0~pkg897 - gconf-service (0 (null)) libasound2 (2 1.0.23) libatk1.0-0 (2 1.12.4) libc6 (2 2.15) libcairo2 (2 1.6.0) libcap2 (2 2.10) libcomerr2 (2 1.01) libcups2 (2 1.4.0) libdbus-1-3 (2 1.2.14) libexpat1 (2 1.95.8) libfontconfig1 (2 2.8.0) libfreetype6 (2 2.3.9) libgcc1 (2 1:4.1.1) libgconf-2-4 (2 2.31.1) libgcrypt11 (2 1.4.5) libgdk-pixbuf2.0-0 (2 2.22.0) libglib2.0-0 (2 2.26.0) libgssapi-krb5-2 (2 1.6.dfsg.2) libgtk2.0-0 (2 2.24.0) libk5crypto3 (2 1.6.dfsg.2) libkrb5-3 (2 1.6.dfsg.2) libnspr4 (2 1.8.0.10) libnss3 (2 3.14.3) libpango1.0-0 (2 1.22.0) libstdc++6 (2 4.6) libudev0 (2 147) libx11-6 (2 2:1.4.99.1) libxcomposite1 (2 1:0.3-1) libxcursor1 (4 1.1.2) libxdamage1 (2 1:1.1) libxext6 (0 (null)) libxfixes3 (0 (null)) libxi6 (2 2:1.2.99.4) libxrandr2 (2 2:1.2.99.2) libxrender1 (0 (null)) libxss1 (0 (null)) libxtst6 (0 (null)) zlib1g (2 1:1.1.4) xdg-utils (0 (null)) chromium-codecs-ffmpeg-extra (18 0.6) chromium-codecs-ffmpeg (2 0.6) dpkg (2 1.15.6~) chromium-browser-l10n (0 (null)) chromium-browser-inspector (0 (null)) chromium-browser-inspector (0 (null)) 
32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1 - gconf-service (0 (null)) libasound2 (2 1.0.23) libatk1.0-0 (2 1.12.4) libc6 (2 2.15) libcairo2 (2 1.6.0) libcap2 (2 2.10) libcomerr2 (2 1.01) libcups2 (2 1.4.0) libdbus-1-3 (2 1.2.14) libexpat1 (2 1.95.8) libfontconfig1 (2 2.8.0) libfreetype6 (2 2.3.9) libgcc1 (2 1:4.1.1) libgconf-2-4 (2 2.31.1) libgcrypt11 (2 1.4.5) libgdk-pixbuf2.0-0 (2 2.22.0) libglib2.0-0 (2 2.18.0) libgnutls26 (2 2.12.6.1-0) libgssapi-krb5-2 (2 1.6.dfsg.2) libgtk2.0-0 (2 2.24.0) libk5crypto3 (2 1.6.dfsg.2) libkrb5-3 (2 1.6.dfsg.2) libnspr4 (2 1.8.0.10) libnss3 (2 3.14.3) libpango1.0-0 (2 1.22.0) libstdc++6 (2 4.6) libudev0 (2 147) libx11-6 (2 2:1.4.99.1) libxcomposite1 (2 1:0.3-1) libxcursor1 (4 1.1.2) libxdamage1 (2 1:1.1) libxext6 (0 (null)) libxfixes3 (0 (null)) libxi6 (2 2:1.2.99.4) libxrender1 (0 (null)) libxss1 (0 (null)) libxtst6 (0 (null)) zlib1g (2 1:1.1.4) xdg-utils (0 (null)) chromium-codecs-ffmpeg (18 0.6) chromium-codecs-ffmpeg-extra (2 0.6) dpkg (2 1.15.6~) chromium-browser-l10n (0 (null)) chromium-browser-inspector (0 (null)) chromium-browser-inspector (0 (null)) 
18.0.1025.151~r130497-0ubuntu1 - gconf-service (0 (null)) libasound2 (2 1.0.23) libbz2-1.0 (0 (null)) libc6 (2 2.15) libcairo2 (2 1.6.0) libcups2 (2 1.4.0) libdbus-1-3 (2 1.2.14) libexpat1 (2 1.95.8) libfontconfig1 (2 2.8.0) libfreetype6 (2 2.3.9) libgcc1 (2 1:4.1.1) libgconf-2-4 (2 2.31.1) libgcrypt11 (2 1.4.5) libgdk-pixbuf2.0-0 (2 2.22.0) libglib2.0-0 (2 2.20.0) libgtk2.0-0 (2 2.24.0) libnspr4 (2 1.8.0.10) libnss3 (2 3.12.3) libpango1.0-0 (2 1.20.0) libpng12-0 (2 1.2.13-4) libstdc++6 (2 4.6) libudev0 (2 147) libx11-6 (0 (null)) libxext6 (0 (null)) libxfixes3 (0 (null)) libxrender1 (0 (null)) libxss1 (0 (null)) zlib1g (2 1:1.2.3.3.dfsg) libnss3-1d (2 3.12.3) xdg-utils (0 (null)) chromium-codecs-ffmpeg (18 0.6) chromium-codecs-ffmpeg-extra (2 0.6) dpkg (2 1.15.6) chromium-browser-l10n (0 (null)) chromium-browser-inspector (0 (null)) chromium-browser-inspector (0 (null)) 
Provides: 
36.0.1985.125-0ubuntu1.12.04.0~pkg897 - www-browser chromium-browser-inspector 
32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1 - www-browser chromium-browser-inspector 
18.0.1025.151~r130497-0ubuntu1 - www-browser chromium-browser-inspector 
Reverse Provides: 

上記サイトによると、バージョンを指定してインストールするには、sudo apt-get install パッケージ名=バージョン というようにパッケージ名の後にイコールでバージョンをつければいいみたいです。

実際にsudo apt-get install chromium-browser=32.0.1700.107-0ubuntu0.12.04.1としてみたのですが、バージョンが見つからない旨のエラーが返ってきます。

バージョン指定の仕方が違うのかと、
sudo apt-get install chromium-browser=32.0.1700.107 や
sudo apt-get install chromium-browser=32.0 など右から順に一区切りづつ削っていき、更には
sudo apt-get install chromium-browser=32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1.1~ など、右に追加することも試しましたが、結果は全部同じでした。

コマンドのオプションは正しいのだと思いますが、アップデートした際にどうやらリポジトリが変わったようです。指定したバージョンがリポジトリになければ当然、コマンドは失敗します。

.debパッケージを手動ダウンロードしてインストール(成功)

apt で入れられなくてもパッケージさえ手に入れば dpkg でインストールできます。ということでソースの在り処を検索しました。入れるものはわかっているので、そのまま chromium-browser 32.0.1700.107-0ubuntu0.12.04.1 というキーワードで検索したら chromium-browser 32.0.1700.107-0ubuntu0.12.04.1 が見つかりました。

i386 build of chromium-browser 32.0.1700.107-0ubuntu0.12.04.1~20… : stage for security updates : “Canonical Chromium Builds” team

このページのいちばん下に Built files という項目があって同時にインストールが必要なものも全部ダウンロードできます。今回ダウンロードしたのは下の中で赤文字の4つです。dbgを含むものはデバッグ用(開発用)なので必要ありません。

chromium-browser-dbg_32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1_i386.deb (543.9 MiB)
chromium-browser-l10n_32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1_all.deb (3.1 MiB)
chromium-browser_32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1_i386.deb (33.7 MiB)
chromium-codecs-ffmpeg-dbg_32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1_i386.deb (625.6 KiB)
chromium-codecs-ffmpeg-extra-dbg_32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1_i386.deb (1.4 MiB)
chromium-codecs-ffmpeg-extra_32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1_i386.deb (695.8 KiB)
chromium-codecs-ffmpeg_32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1_i386.deb (361.6 KiB)

4つのファイルをダウンロードして、どこか1つのフォルダの中にまとめます。そして、そのディレクトリの中で、次のコマンドを実行すればインストールできます。

sudo dpkg -i chromium-browser-l10n_32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1_all.deb chromium-browser_32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1_i386.deb chromium-codecs-ffmpeg-extra_32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1_i386.deb chromium-codecs-ffmpeg_32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1_i386.deb

この時、大切なのは4つ全部を同時にインストールするという事です。

4つのファイルはそれぞれお互いに必要なので、どれかがインストールされていない場合は、必要なファイルがないというエラーが出ます。なので4つまとめずに、次のようにひとつづつ順番にインストールしようとするとエラーになります。

sudo dpkg -i chromium-browser-l10n_32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1_all.deb
sudo dpkg -i chromium-browser_32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1_i386.deb
sudo dpkg -i chromium-codecs-ffmpeg-extra_32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1_i386.deb
sudo dpkg -i chromium-codecs-ffmpeg_32.0.1700.107-0ubuntu0.12.04.1~20140204.866.1_i386.deb

4つインストールしましたが、 dpkg -l で確認すると先ほどの3つだけが表示されます。chromium-codecs-ffmpeg-extra は chromium-codecs-ffmpeg とマージされたのか、不要だったのかもしれません。

apt-get upgrade でバージョンアップしないように設定する

これで、無事に起動できる chromium に戻りました。ただ、このままだと次に apt-get upgrade をした時、またバージョンアップされてしまいます。

そこで、それを抑制する設定をします。参考になったのは次のサイトです。

Debian(Ubuntu)で apt-get upgrade で自動更新したくない場合の対応 | レンタルサーバー・自宅サーバー設定・構築のヒント

上記のサイトで、2つの方法が非常に詳しく説明されています。そのうちのひとつ目を私は実行しました。

$ echo chromium-browser hold | sudo dpkg --set-selections
$ echo chromium-browser-l10n hold | sudo dpkg --set-selections
$ echo chromium-codecs-ffmpeg hold | sudo dpkg --set-selections

これで apt-get upgrade をしても、3つのファイルは保留されて、アップグレードされなくなりました。

$ sudo apt-get update
$ sudo apt-get upgrade
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージは保留されます:
  chromium-browser chromium-browser-l10n chromium-codecs-ffmpeg
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 3 個

amazonで中古パソコン検索

バリューサーバーで python の easy_install を使う

バリューサーバー で mysql-python を使いたかったので、easy_install を使ってインストールしました。バリューサーバーには既に easy_install は入っています。ただ、そのまま easy_install コマンドを実行しても、システム標準の場所にインストールしようとして失敗します。そこで、あらかじめ設定しておきます。.pydistutils.cfg を作ることで easy_install に –prefix オプションをつける必要はなくなります。また、sys.path に PATH の追加もしないで済むので楽になります。

バリューサーバー で mysql-python を使いたかったので、easy_install を使ってインストールしました。

以下は、valueserver.jp に SSH でログインして実行しています。

使いたいパッケージが入っているか調べる

前に書いた記事「python版phpinfo」の pyinfo.py をインストールして見てみます。

pyinfo.pyの導入

$ wget http://www.twoevils.org/files/pyinfo.txt
--2014-06-04 09:42:53--  http://www.twoevils.org/files/pyinfo.txt
www.twoevils.org をDNSに問いあわせています... 204.246.122.18
www.twoevils.org|204.246.122.18|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 11715 (11K) [text/plain]
`pyinfo.txt' に保存中

100%[===================================>] 11,715      --.-K/s 時間 0s      

2014-06-04 09:42:54 (78.6 MB/s) - `pyinfo.txt' へ保存完了 [11715/11715]

$ mv pyinfo.txt pyinfo.py
$ chmod 755 pyinfo.py

ブラウザで pyinfo.pyに アクセスして、表示してみると MySQL-Python は入っていませんでした。

pyinfo.pyの表示結果

そこで、独自にインストールします。

以下の作業は「さくらのレンタルサーバに Python モジュールをインストール」というページに書いてあることを、そのままバリューサーバーで実行しました。

easy_install の確認

バリューサーバーには既に easy_install は入っています。

$ which easy_install
/usr/bin/easy_install

ただ、そのまま easy_install コマンドを実行しても、システム標準の場所にインストールしようとして失敗します。

そこで「さくらのレンタルサーバに Python モジュールをインストール」に書いてある通り、あらかじめ設定しておきます。

*上記のサイトには、ローカルにインストールするオプションや、ローカルに入れたモジュールを使う方法も書いてあります。

site.USER_SITE の確認

Python を起動して、ユーザー・サイト用のディレクトリがどこに設定されているかを調べます。

$ python
Python 2.6.6 (r266:84292, Nov 22 2013, 12:16:22) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import site
>>> site.USER_SITE
'/virtual/xxxxx/.local/lib/python2.6/site-packages'
>>>

設定されているのは ‘/virtual/xxxxx/.local/lib/python2.6/site-packages’ ですが、そのディレクトリは用意されていませんので、自分で作る必要があります。ちなみに、/virtual/xxxxx が自分のホームディレクトリになります。

$ mkdir -p ~/.local/lib/python2.6

.pydistutils.cfg の作成

.pydistutils.cfg を作ることで easy_install に –prefix オプションをつける必要はなくなります。また、sys.path に PATH の追加もしないで済むので楽になります。

$ echo '[install]' > ~/.pydistutils.cfg
$ echo 'user=1' >> ~/.pydistutils.cfg
$ cat ~/.pydistutils.cfg 
[install]
user=1

easy_install を使ってみる

後は、普通に easy_install コマンドでモジュールをインストールできます。

MySQL-Python をインストールします。

$ easy_install mysql-python
Searching for mysql-python
Reading http://pypi.python.org/simple/mysql-python/
Best match: MySQL-python 1.2.5
Downloading https://pypi.python.org/packages/source/M/MySQL-python/MySQL-python-1.2.5.zip#md5=654f75b302db6ed8dc5a898c625e030c
Processing MySQL-python-1.2.5.zip
Running MySQL-python-1.2.5/setup.py -q bdist_egg --dist-dir /tmp/easy_install-UDQRse/MySQL-python-1.2.5/egg-dist-tmp-yYD_3Q
/usr/include/mysql/my_config.h:14 から include されたファイル中,
                 _mysql.c:44 から:
/usr/include/mysql/my_config_x86_64.h:422:1: 警告: "HAVE_WCSCOLL" が再定義されました
/usr/include/python2.6/pyconfig.h:6 から include されたファイル中,
                 /usr/include/python2.6/Python.h:8 から,
                 _mysql.c:29 から:
/usr/include/python2.6/pyconfig-64.h:808:1: 警告: ここが以前の宣言がある位置です
zip_safe flag not set; analyzing archive contents...
Adding MySQL-python 1.2.5 to easy-install.pth file

Installed /virtual/xxxxx/.local/lib/python2.6/site-packages/MySQL_python-1.2.5-py2.6-linux-x86_64.egg
Processing dependencies for mysql-python
Finished processing dependencies for mysql-python

先ほどの、pyinfo.py にブラウザでアクセスしてみると MySQL (MySQL-Python) が enabled に変わっています。

pyinfo.pyの表示結果

サーバーの細かな設定が誰でも読めてしまうのは、セキュリティの心配があるので、当サイトでは確認終了後に pyinfo.py は削除しました。

$ rm pyinfo.py

VirtualBoxでWordPressとLinuxを試すセットアップ済みお試しキット

VirtualBoxで動くサーバーシステム一式の、セットアップ済Linuxイメージファイル(vdi)を作りました。ご自由にお使いください。VirtualBoxというのは、WindowsでもMacでも動く無料のエミュレーターソフトです。OSの中で別の仮想パソコンを動かします。これを使うと1台でこんなことが出来ます。WordPressを試す。Linuxを試す。もうすぐWindows XPのサポートが切れるので乗り換えが必要ですが、今使っているパソコンにはWindows 7も8も入らないという方は多いと思います。そんな最新のOSが入らなくても、今使っているパソコンは動きます。

VirtualBoxで動くサーバーシステム一式の、セットアップ済Linuxイメージファイル(vdi)を作りました。ご自由にお使いください。

ただしファイルサイズが大きいです。圧縮していますが、ダウンロードサイズは2.3GBもあります。さらに解凍すると7.9GBになります。回線の混み具合にもよりますがフレッツひかりでダウンロードに30分~1時間、古いパソコンだと解凍にも20~30分かかります。

VirtualBoxで作る仮想サーバー

VirtualBoxというのは、WindowsでもMacでも動く無料のエミュレーターソフトです。下の図のようにOSの中で別の仮想パソコンを動かします。

これは、メモリー768MBの10年前のパソコンでWindows XPを動かし、さらにその中で別のWIndows XPを動かしている図です。

Windows XPの中で別のXPを起動

パソコンの中にパソコンを作って何がうれしいいのかと思われるかもしれません。基本的にはなくてもいいソフトです。でもこれを使うと1台でこんなことが出来ます。

仮想サーバー・クライアントシステム

インターネットでは、ブログを置いてあるサーバーとブログを読むパソコンやスマホは別のものです。サイトのデータはそれを見ているマシンではなくレンタルサーバーに置いてあります。

もし自宅にサーバーを作ろうとしたら、パソコンがもう1台必要になります。

でもVirtualBoxを使えば、VirtualBoxそのものをインストールする以外は、Windowsに一切手を加えることなくWordPress用のサーバーシステムを1台のパソコンで動かせます。

WordPressを試す

今、無料のサービスを使ってブログを書いている人が、「ワードプレスってよく聞くから気になる。ちょっと試してみたい」と思っても、実際に試すのはなかなか難しいものです。

無料で使えるwordpress.comなどはマルチサイトでシステムを構築しています。WordPressのマルチサイトは同じファイルをみんなで使いまわすので、テーマ(スキン)の改造が自由にできません。同じテーマを使っている他の人までデザインが変わってしまうからです。

だからWordPressでサイトを作る場合、サーバーを借りて自分でインストールしないと自由は効きません。

有料サーバーを借りてWordPressに乗り換えるのもいいかもしれないけど、本当にそこまでするほどのものなのか?と考えているブロガーは多いと思います。自宅に仮想サーバーを作れば初期費用なしで試すことができるので使ってみた上でブログの移転をするかしないか決めればいいわけです。

Linux Mint Debian Editionを試す

仮想のパソコンが増えるのだから別のOSが入れられます。というか入れないと動きません。今回、サーバーを作るのに使ったOSはフリーで配布されているLinux Mint Debian Editionです。

もうすぐWindows XPのサポートが切れるので乗り換えが必要ですが、今使っているパソコンにはWindows 7も8も入らないという方は多いと思います。パソコンを買い換えるのはいいけれど、このPCはどうしよう?というお悩みもあるでしょう。

Linux Mint Debian Edition

そんな最新のOSが入らなくても、今使っているパソコンは動きます。マシンに対応したOSに入れ替えればまだ使えます。ではどんなOSがあるでしょう。Linux Mintもそのひとつ。我が家の旗艦マシンは次のスペックです。これにLinux Mintを入れて日常使用していますが、それほど困ることはありません。Officeのようなソフトまで含めてはじめからいろいろ入っています。

*注: この記事で説明するとややこしくなるので省きますがデュアルブートでOSを使い分けています。

我が家のフラッグシップマシン
富士通 FMV DESKPOWER CE22D (2003年産)
CPU : AMD Athlon™XP プロセッサ 2200+
メモリ : 768MB

知らないOSにいきなり乗り換えるのは怖い。という場合にもこれで試せます。ただ、本当のパソコンにインストールして動かすのに比べ遅くなります。1台のパソコンのスペックで2台同時に動かすので仕方ありません。

冒頭で紹介したWindows XPの中で別のXPを動かした場合、我が家のフラッグシップマシンではまったく違和感なく普通の速度で快適に動きました。ところがLinux Mint Debian Editionではもたつきます。

同じパソコンでVirtualBoxを使わずにネイティブでLinux Mintを起動すれば1分かからずに使えるようになりますが、エミュレータで起動すると10分くらいかかります。

ただしVirtualBoxにはバーチャルマシーンを起動したままの状態で保存できるという機能があります。詳しいことはこの記事の終わりに書いていますが、本物のパソコンを終了しても、バーチャルのマシンは起動している状態で保存されているので次の起動は数秒で終わります。というか、はじめから起動しているのでそこから再開するという形です。

ネイティブよりこんなに遅いのは下記のサーバーシステムを起動させているからというのもあります。XPからの乗り換えの検討で動かす場合、その部分をご了承ください。

セットアップ済みサーバーシステム一覧

VirtualBox Guest Additionsはインストール済です。

  • apache2(Webサーバー)
  • MySQL (データベースサーバー)
  • vsftpd (FTPサーバー)
  • OpenSSH(SSHサーバー)
  • samba (Windows用ファイル共有)
  • NFS (Linux用ファイル共有)
  • Postfix(メール送信サーバー WordPressからのメール専用)
  • Dovecot(メール受信サーバー WordPressからのメール専用)

もちろんPHPもインストール済みで、設定内容 phpinfo() はセットアップが終わると見ることが出来ます。

WordPressのインストールは終わっていて、ブログ名、ユーザー名、パスワードを決めるだけで始められます。そうではなくセットアップそのものも自分で試したいという場合のやり方は別に書きます。

配布するのはOSのイメージファイルだけなのでVirtualBoxのダウンロードとインストールは別途必要です。それは、特に難しいこともなくダウンロードからインストールまで含めて10分ほどで終わります。

バーチャルボックスのダウンロードとインストール

VirtualBoxはOracleが無償で提供しているエミュレーションソフトで、だれでも自由にダウンロードして使うことが出来ます。

VirtualBoxのダウンロードとインストールは10分ほどで出来るので、イメージファイルをダウンロードしながら待っている間に作業するのがいいと思います。イメージファイルのダウンロード方法はこの次の項目で書いています。

まず、Oracle VM VirtualBoxのページを開きます。

Oracle VM VirtualBoxホームページ

ページの左のメニュー、上から3番目のDownloadsをクリック。すると開いた画面に次の場所があります。Windowsなら「VirtualBox 4.3.6 for Windows hosts x86/amd64」と書かれている行の「 x86/amd64」をクリックしてダウンロードを開始します。

Oracle VM VirtualBoxダウンロードページ

ダウンロードするのはこれだけで、「VirtualBox 4.3.6 Oracle VM VirtualBox Extension Pack」と「VirtualBox 4.3.6 Software Developer Kit (SDK)」は不要です。

ダウンロードが済むと次のアイコンが表示されますのでクリック。vb3

「このファイルを実行しますか?」の画面で実行をクリック。

vb4

少し待つとSetup Wizardが始まるので「Next >」をクリック。

vb5

Custom Setupはなにもいじらずに、そのまま「Next >」をクリック。

vb6

デスクトップにアイコンが不要なら「Create a shortcut on the desktop」のチェックを削除。あとは、そのままクリック。

vb7

赤文字で「Warning: Network Interfaces」と表示されますがネットワークをいじりますという表示です。仮想LANケーブルを追加してインターネットにつながるようになります。そのまま「Yes」をクリック。

vb8

「Install」をクリックしてスタートさせます。

vb9

インストールがはじまります。

vb10

途中何回か以下のようなマイクロソフトからの警告メッセージが出ます。同じ警告が何回も出ますが、これはネットワークを改変していることとマイクロソフトの審査を行っていないソフトウェアだという警告です。無視して構いません。「続行」をクリックします。

vb11vb12

インストールが終わると、次の画面になります。そのまま「Finish」をクリック。

vb13

インストールが成功するとVirtualBoxが起動します。次の画面が出たら完了です。

vb14

イメージファイルのダウンロード

LinuxもDebianもGPLライセンスなので再配布可能だという考えでサーバーに置いていますが、もし問題がある場合ご指摘いただければ幸いです。

イメージファイルのダウンロードはここをクリックすると落とせます。時間がかかるので、落としている間にVirtualBoxのインストールをするのがいいと思います。

サーバーを作るだけの目的なら必要ないソフトもたくさん入っています。なるべく軽いものにしたかったのですが、あまり機能を重視して無用なものを省くとLinuxに慣れてない人がとまどうだろうと思いWindowsに似ていて、かつ使いやすい物にしました。

そういう意味で、作ったイメージファイルにはサーバー用途以外にも使えるソフトがいろいろ入っていますが、結果としてダウンロードサイズが大きくなってしまいました。

そんなに大きなファイルを落とすくらいなら、はじめから自分でVirtualBoxにインストールしたい。という考えはごもっともです。これは今回作ったイメージファイルの反省点です。ということで、Linux Mintを自分でインストールする方法は別のページに説明記事を作ります。

イメージファイルの展開(解凍)

ダウンロードしたファイルはZIP形式で圧縮されています。ZIPはWindowsで標準サポートされている形式なので使ったのですが、Windows XPで展開しようとしたらエラーが出て失敗しました。ファイルのサイズが大きいのが原因ではないかと思います。もし、すでに自分でファイル解凍ソフトを入れている場合はそれで解凍してください。

Windowsの標準システム以外のフリー解凍ソフトでも、ものによってはサイズオーバーでエラーが出ます。

私がファイルの展開で使ったのはLhaz v2.1.3です。ちとらソフトのページから「圧縮解凍ソフト“Lhaz”」をクリックし、開いたページの下、旧版ダウンロードにあります。その他に試してみたら「無料圧縮・解凍ソフトCubeICE」と「WinZip」でも大丈夫でした。WinZipは有料ですが、45日間無料で試用することができる体験版がダウンロードできます。

VirtualBoxでLinux Mint Debian Editionを動かす

イメージファイルの解凍が終わったら、VirtualBoxにセットします。

VirtualBoxを起動したら、左上にボタンが並んでいます。その中の「新規(N)」をクリック。

vblmde1

名前とオペレーティングシステムを指定します。名前は何でも構いませんが「Linux Mint Debian Edition」と入力すると自動でタイプとバージョン欄に入力してくれます。名前を他のものにする場合は、手動でタイプとバージョンを入力してください。タイプは「Linux」、バージョンは「Debian」です。

vblmde2

入力が終わったら「次へ(N)>」をクリック。次の画面でメモリーをいくら割り当てるか指定します。自動で適正値が入力されているのでそのままでも構いません。うちのフラッグシップでは384MBもバーチャルマシンに与えられないので256MBに変更しています。

vblmde3

ハードドライブはダウンロードしたイメージファイルを使うので「すでにある仮想ハードドライブを使用する(U)」を選択して、ダウンロードしたファイルを指定します。

vblmde4

「すでにある仮想ハードドライブを使用する(U)」を選択するとその下に登録済みの仮想ハードドライブ一覧が表示されますが、まだ登録していませんので、その右のフォルダのマークをクリックします。

vblmde6

すると下のように選べる画面が出るので、ダウンロードしたファイルを指定します。登録する前にマイドキュメントなどにファイルを移して、置き場所は決めておいたほうがいいです。

vblmde5

仮想ハードドライブを選択すると開いていた選択画面が消え、VirtualBoxのメインウインドウだけが残ります。画面の左に電源オフの状態でLinux Mintが表示されていればOKです。

vblmde7

続いて「設定」ボタンを押します。

vblmde8

表示された画面の左側にある項目の一覧から「ネットワーク」を選択します。そして右側の画面から「アダプター2」をクリック。「ネットワークアダプターを有効化(E)」にチェックを入れます。「割り当て(A)」が選べるようになるので「ホストオンリーアダプター」を選択して、OKを押します。

「名前」など、それ以外のものは一切いじらないで大丈夫です。

vblmde9

これで設定は終わりました。「起動(T)」ボタンを押してください。

vblmde8

VirtualBoxの中で「Linux Mint debian Edition」が動き出します。

vblmde10

起動の途中で「ユーザー名」と「パスワード」を入力しないとログインできません。「ユーザー名」入力画面になったら「user」の4文字を入力してキーボードのEnterキーを押します。次の画面で「パスワード」を入力しますがパスワードも「user」の4文字で登録しています。「user」と入力してEnterを押してください。

vblmde11

ログインすると「Linux Mint へようこそ」と表示されます。「起動時にこのダイアログを表示する」のチェックを外せば2回目以降は表示されません。

vblmde12

起動が完了すると下のデスクトップ画面になります。

vblmde100

メニューボタンが表示されないときは

非力なマシンだと処理が追いつかず、左下のメニューボタンが表示されないことがあります。下のように表示された時は「削除しない」をクリックしてください。

m1

そして、画面下のメニューバーの上で右クリックして、メニューを表示させます。その中の「パネルへ追加」をクリック。

m2

「パネルへ追加」というウインドウが開いたら「mintMenu」を選択してから、下のボタン「追加」を1回だけクリック。そのままではウインドウが表示されたままなので「閉じる」もクリックします。

m3

メニューバーに「Menu」ボタンが追加されますが、左端と真ん中あたりの2ヵ所に出来ています。「追加したMenuボタン」は真ん中のものです。左端のは、もともとあった「出なかったMenuボタン」です。起動時には出なかったけど、追加したメニューボタンを表示するはずみで出てきました。真ん中のMenuボタンはもう不要なので右クリックして表示された項目にある「パネルから削除(R)」を押して消してください。

m4

終了方法

では、さっそく終了してみましょう。

使い方は次回書きます。

menu

普通に左下の「Menu」をクリックして開いたメニューから「終了」を選択してもいいです。

終了をクリックするとWindowsと同じように選択ボタンが表示されるので「シャットダウン(S)」を押せば終了します。

menu2

起動している状態を保持したままバーチャルサーバーを終了させる

あるいは、先ほど書いたように起動状態のまま終了させることもできます。

左上にある、コンピューターではなくVirtualBoxのメニューバーから「仮想マシン」をクリックし、出てきたメニューのいちばん下にある「閉じる」をクリック。

c1

次のウインドウで「仮想マシンの状態を保存(S)」を選択して「OK」をクリック。

c2

「電源オフ」ではなく「保存」という状態でバーチャルマシンが終了します。

c3

「保存」状態のバーチャルマシンが起動できなくなったら

下の図のウインドウが出て起動できないときは次のようにしてください。

close_ex

VirtualBoxの画面左から起動できないOSを選び右クリックします。出てきたメニューから「保存状態を破棄(I)」をクリック。

close_ex2

「以下の仮想マシンの保存状態を破棄しますか?」と表示されるので「破棄」をクリック。

close_ex3

あとは通常通りに起動します。

次回は使い方を説明します。