「 Ubuntu 」一覧

UbuntuにOracle (Sun) Java 6 SDKをインストールする

AOSPのソースビルドなどのために、UbuntuにOracle(Sun)のJava6環境が必要なケースはあると思うのだけども、ここ数ヶ月くらいの間にUbuntuリポジトリから削除されてしまってるとのこと。

なので、AOSPのサイトに書かれている以下の方法も今では「パッケージが見つかりません」みたいなエラーになって使えないと。

$ sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
$ sudo apt-get update
$ sudo apt-get install sun-java6-jdk

で、これを回避しようとググってみるとPPAで有志が独自に公開してるaptリポジトリを追加してそこからインストールするとか、aptを使わずにOracleサイトからパッケージ落としてきてインストールするなどあるらしい。

お手軽なのはPPAリポジトリ形式で、これはppa:ferramrobertoを使うサンプルを多く見かける。

$ sudo apt-get install python-software-properties
$ sudo add-apt-repository ppa:ferramroberto/java
$ sudo apt-get update
$ sudo apt-get install sun-java6-jdk sun-java6-plugin

ただし正確にはOracle(Java?)のライセンスや著作権的にppaで独自にパッケージ配布するのはNGなようなのでこの方式はグレー(実際にはきちんとインストールできるし、動作は問題無いけど)。

かといって、いちばん真っ当な手順と思われるOracleサイトからダウンロードしてインストールする方式だと、インストールした後の環境設定が少し面倒。

Ubuntu公式のドキュメントでJava6の項を見てみると、

Java - Community Ubuntu Documentation

ppa:ferramrobertoを公開していた人がライセンス・著作権問題をクリアにした形でインストールできるスクリプトを作って公開していた。

flexiondotorg/oab-java6 · GitHub

Downloads the Java binary installers from Oracle, builds the .deb packages locally on your computer and then installs them. Packages are compatible with the “official” Ubuntu ones and will upgrade Java 6 that was previously installed from packages.

・Oracleサイトからのバイナリパッケージダウンロード
・.debファイル化
・ローカルのaptリポジトリとして構築

までを自動で行うスクリプトのようだ。JDKのバイナリをOracleサイトからきちんとダウンロードすることで諸問題を回避しているぽい。

githubのreadmeに書かれているとおりにスクリプトをダウンロードして実行する。

cd ~/
wget https://github.com/flexiondotorg/oab-java6/raw/0.2.0/oab-java6.sh -O oab-java6.sh
chmod +x oab-java6.sh
sudo ./oab-java6.sh

すると、

oab-java6.sh v0.1.9 - Create a local 'apt' repository for Ubuntu Java packages.
Copyright (c) Martin Wimpress, http://flexion.org. MIT License

By running this script to download Java you acknowledge that you have
read and accepted the terms of the Oracle end user license agreement.

* http://www.oracle.com/technetwork/java/javase/terms/license/

If you want to see what this is script is doing while it is running then execute
the following from another shell:

  tail -f /home/findup/oab-java6.sh.log

Downloading common.sh
 [x] Installing Java build requirements success
 [x] Making build directories success
 [x] Removing clones of https://github.com/rraptorr/sun-java6 success
 [x] Cloning https://github.com/rraptorr/sun-java6 success
 [x] Checking out v6.31-2 success
 [x] Getting Java SE download pagesuccess
 [x] Getting current release download page success
 [x] Downloading jdk-6u31-linux-i586.bin : 81.34 MB success
 [x] Symlinking jdk-6u31-linux-i586.bin success
 [x] Downloading jdk-6u31-linux-x64.bin : 81.62 MB success
 [x] Symlinking jdk-6u31-linux-x64.bin success
 [x] Updating the changelog success
 [x] Building the packages success
 [x] Moving the packages success
 [x] Creating Packages.gz file success
 [x] Creating Release file success
 [x] Signing the 'Release' file success
 [x] Exporting public key success
 [x] Adding public key success
 [x] Update package list success
All done!

っという感じでダウンロードとローカルなaptリポジトリを設定するところまで行ってくれる。あとはいつものように

$ sudo apt-get update
$ sudo apt-get install sun-java6-jdk

とやればJava6 SDKがインストールできる。

Java6 SDKの最近のインストール方法はいろいろあるけど、こういう方法もあるよ、ということで。

まぁ個人的にはAOSPビルドにしか使わないので、AOSPがOpenJDKに対応してくれるほうが良いかなぁとは思うけど。


さくらのVPSに申し込んでみた

さくらのVPSをお試しで申し込んでみた。

いまはまだCentOS5だけが正式に提供されているけど、Ubuntuや他のOSもじきに標準で提供されるみたい。

私は慣れてるUbuntuがいいかな…。CentOSというかFedoraは昔使っていたことあるけど。

いまでも、自分でインストールすればUbuntuを使えるようだけど、どうしようかなぁ。サポートされるまで待つか自分でインストールするか。いざとなればすぐにOSを再インストールできる仕組みがあるから大丈夫かな。

将来的には、CoreServerの内容を移管してもいいかも。

コストパフォーマンスの良いVPSが出てくると自宅サーバの必要性が無くなってくる感じ。そこそこのパフォーマンスと回線が提供されるVPSを使えば、電気代や排熱に悩まなくていいし、本当にテスト用の環境が必要なら、PCにメモリを多めに積んでVMwareなりVirtualBoxなりの仮想環境を使えば良いし。まぁストレージを大量に使うとかそういう用途でもなければ、VPSは有力な選択肢だと思う。

さくらのVPS|VPS(仮想専用サーバ)はさくらインターネット
さくらのVPSにUbuntu 10.04 LTSをインストールしてみた - 讃容日記


64bit版Javaはスワップすると異常に遅くなる?

Androidのビルドがメモリ不足でスワップしすぎで終わらず - きままな日記帳

と、64bit版UbuntuでAndroidのソースビルドが終わらない件、32bit版Ubuntuをインストールしなおして試したみたらあっさりとビルドが終わった。

64bit版の時は、javaプロセスがメモリを90%以上掴んだままずっとスワップしてて終わらなかったので、64bit版javaが物理メモリを食い潰したときのスワップで異常に遅くなるんだろうと結論。メモリが十分にあったら64bitでも快適に動いたかもしれないし、そこは分からないけど。

DDR1のメモリを1GB×2枚にしようかと値段を見たら、DDR2の2倍くらいの値段なのね...。さすがに古いマシンをそこまでして延命するつもりもないし、32bit版Ubuntuで普通にビルドできるようになったので、とりあえず現状の環境で行くつもり。


雑用など

今週末は天気も気温も動くのにはちょうど良い感じだったので、久しぶりに部屋の整理を少し。

Androidの開発専用に、使わなくてしまっておいたAthlon64のマシンを引っ張り出してUbuntuをインストール。DVDドライブが壊れていたので、USBメモリからネットワークインストールした。

あとは押し入れを少しだけ整理。もらい物のフォトプリンタがあるのだけど、一度も使うこと無いのでソフマップあたりに売るつもり。

あとはプレステ2のゲームも全然遊ばないのでほとんど売り払っても大丈夫だな。もうかなり古い物ばかりなので値段が付くか分からないけど。ゲームボーイアドバンスの本体が1000円くらいになりそうなのでこれも売る。

売りに行くとして、持って行くのが面倒なんだけどね...。宅配買取してもらうほどの値段は付かないのばっかりだし。


ubuntuでeclipseはapt経由でインストールしない

apt経由で入れると、古いバージョン3.2がインストールされるのね。

eclipse本家サイトからtarを落としてきてホームディレクトリに解凍して使うのが一番手っ取り早い。

androidのプラグイン(ADT)がインストールでエラーになるからおかしいな...と思っていたら、バージョンが古かったという話。


Ubuntu9.04アップグレード…失敗

VirtualBox上の8.10からアップグレードしたら、ログイン画面が表示されなくなってしまった。

xubuntuからアップグレードしたのがまずかったのかなぁ...。

9.04にアップグレードするときに、パッケージのダウンロードが途中で止まってしまったように見えたので、キャンセルしてやり直したりしたのがダメだったのかも。あまり変な操作をするものじゃないね。

ちなみに会社PCで同じくVirtualBoxで動かしているほうは問題なくアップグレードできてるみたいなので、単に私の操作がまずかったか、ネットワーク環境がおかしかったかってあたりかも。

中身を消して再インストールをしたくないので、なんとか修復しようとしているけど、前途は長そう。

(追記)

Alt+F2でgdmから別コンソールに入って、そこからapt-get dist-upgradeをし直したら直ったっぽい。


Ubuntuのapacheで個人ディレクトリのpublic_html以下を使う

たいしたネタでは無いけど、メモ。

apacheをインストールしただけだと、/var/www/ 以下がDocument Rootになるのだけど、ここはsudoしないとファイルを置くことができない。

ユーザーのホームディレクトリのpublic_htmlを対象に含めたいときは、UserDirモジュールを使うように設定する必要がある。

設定ファイルは、 /etc/apache2/mods-available/ にuserdir.confとuserdir.loadとあるので、これへのシンボリックリンクを/etc/apache2/mods-enabled/ に作れば良い。

cd /etc/apache2/mods-enabled
sudo ln -s ../mods-available/userdir.conf userdir.conf
sudo ln -s ../mods-available/userdir.load userdir.load

とりあえず開発用とかテスト用にはこうしておくとローカルユーザ権限でファイルアップロードできるのでいいと思う。


Ubuntuのディスククローン(容量の大きなディスクに丸ごと移し替え)

OpenEmbeddedの環境をビルドしていたら、Disk full。

VirtualBox上のUbuntuでやっていたのだけど、ディスク容量を8GBしか作ってなかったのが原因。もともとOpenEmbedded環境を作るとか想定してなかっただけなんだけど。

VirtualBoxで新しい30GBの仮想ディスクを作成し、ディスククローンを行うことにした。

手順は、以下のサイトにあるとおり2台のディスクを繋いで、UbuntuのLiveCDからddrescueコマンドでコピーするというもの。

インストール済みUbuntuのクローンを新しいハードディスクに作成する - SourceForge.JP Magazine

ただ、私の環境ではUbuntu8.10の日本語版インストールCDから起動すると、cfdiskの画面が文字化けしてしまったので、ターミナルからexport LANG="en_US.UTF-8"で英語モードに切り替える必要があったくらいか。


UbuntuでOpenEmbedded環境を構築しようとしたが…

入手したBeagleBoard用のAngstromのビルド環境を作るべく、Ubuntu上でOpenEmbedded環境の構築にチャレンジ。

といっても、このBeagleBoardAndOpenEmbeddedGit - eLinux.orgサイトを見ながらやればできるようだったんだけど、最近のバージョンのOpenEmbeddedはbitbakeの1.8.12を必要とするらしい。

今のUbuntuには1.8.10しかパッケージが無いので、けっきょくOpenEmbeddedをビルドできず。

org.openembedded.stableであれば、bitbake1.8.10でも良いのだけどこのstableにはbeagleboard用のconfigが含まれていないようなので使えず。

仕方がないので、Ubuntuのパッケージが用意されるまではtarballのを入れてみるか。


スポンサーリンク