2009/10/18

Linuxディストロ バージョン確認 コマンド

Linuxディストロのバージョン確認を行うためのコマンドを見つけたのでメモしておく。

カーネルバージョンを調べるコマンドは知っていたが、ディストロのバージョンを調べるコマンドがあるのは知らなかった。

次のコマンドでディストロのバージョンを確認できる。
$ lsb_release -a
ちなみにカーネルバージョンの確認は次のコマンド。
$ uname -a

2009/10/16

Sheevaplug Fedora11インストール

SheevaplugにFedora11をインストールします。
今回はUSBメモリにインストールします。  
○Fedora11インストール
使用するUSBメモリはあらかじめパーティションを分割し,ext2とswapでフォーマットしていきます。私の場合は3つに分けroot,swap,ftp用にしました。
・USBメモリをマウントし,Fedoraをインストールします。
  1. マウントからFedoraのインストールまで
  2. # mount /dev/sda1 /mnt# rm -rf /mnt/*
    # cd /mnt
    # wget http://ftp.linux.org.uk/pub/linux/arm/fedora/rootfs/rootfs-f11.tar.bz2
    # tar xvjf rootfs-f11.tar.bz2

    rootfs-f11ディレクトリの中身を一階層上に移動します。
    # mv rootfs-f11/* .
    # rm -r rootfs-f11
    # rm rootfs-f11.tar.bz2

  3. カーネルモジュールをインストールします。
  4. # wget http://sheeva.with-linux.com/sheeva/2.6.30.8/sheeva-2.6.30.8-Modules.tar.gz
    # tar zxvf sheeva-2.6.30.8-Modules.tar.gz -C /mnt
    # rm sheeva-2.6.30.8-Modules.tar.gz

  5. chrootから必要な設定をします。
  6. # chroot /mnt
    いろいろパッケージが足りないのでインストールします。
    # yum install passwd vim vi openssh-server rsync sudo tar ntp less
    DHCP環境で接続する場合はdhclientをインストールしないと接続できません。 デフォルトではDHCPの設定になっています。 staticにアドレスを指定する場合はネットワークの設定をします。
  7. リブートしてUSBブートしてみます。
  8. U-Bootプロンプトからコマンドを実行してUSBブートします。
    Marvell>> setenv bootargs console=ttyS0,115200 mtdparts=orion_nand:0x400000@0x100000(uImage),0x1fb00000@0x500000(rootfs) rw root=/dev/sda1 rootdelay=10 panic=10
    Marvell>> boot

  9. ロケールと時刻,タイムゾーンを設定しておきます。
  10. ロケールの設定
    # echo "LANG=ja_JP.eucJP" > /etc/sysconfig/i18n
    時刻の設定
    # ntpdate 210.173.160.27
    # hwclock -w

    タイムゾーンの設定
    # cp -p /usr/share/zoneinfo/Japan /etc/localtime
  11. fstabの設定
  12. # swapon /dev/sda2
    # vi /etc/fstab

    次の列を追加します
    /dev/sda2 swap swap defaults 0 0
後は一般ユーザ追加すれば概ねOKでしょう。

2009/10/04

Ubuntu9.04 MicrosoftOffice2007インストール

Ubuntu 9.04にwineを用いてMS Office2007をインストールする手順です。
○UbuntuにOffice2007インストール
・wineのインストール
    Ubuntuでインストールできるwineバージョンが古いので,リポジトリを追加して最新バージョンをインストールします。
  1. [システム]→[システム管理]→[ソフトウェア・ソース]を選択します。


  2. [サードパーティのソフトウェア]→[追加]を選択します。
  3. APT lineに次の文を追加し、[ソースを追加]を選択します。

    deb http://wine.budgetdedicated.com/apt intrepid main #WineHQ – Ubuntu 8.10 “Intrepid Ibex”


  4. 認証キーをダウンロードします。
  5. 右のリンクのリンク先を保存します。 認証キーのダウンロード
  6. [認証]→[鍵ファイルのインポート]を選択します。
  7. 認証キーをインポートします。
  8. 保存しておいた認証キーを選択し,OKをクリックします。 ここで「利用可能なソフトウェアの情報を更新する必要があります」と聞かれるので「再読込」を選択し,ソフトウェアソースを閉じます。 これでwineインストールの準備ができました。
  9. コマンドラインからwineをインストールします。
  10. # apt-get install wine
  11. wine関係ファイルをインストールします。
  12. # apt-get install cabextract
    # wget www.kegel.com/wine/winetricks

    これでwineのインストールは完了です。
・WineconfigureでOfficeインストールの準備をします。
  1. WindowsバージョンをWindows Vistaに変更します。
  2. Windows関連ファイルをインストールします。
  3. このコマンドは、上記2を実行したのと同じディレクトリで実施します。Windowsのインストーラが立ち上がって、.NET等がインストールされます。
    $ sh winetricks msxml3 dotnet20 gdiplus riched20 riched30 vcrun2005sp1
  4. Wineのフォントを設定します。
  5. あらかじめシステムにIPAフォントをインストールしておきます。
    Wineconfigureのデスクトップ統合タブの項目(E)でメニューのテキストを選択する。右側のフォントをクリック。 IPAPゴシックを選択、サイズを9ポイントにする。
  6. /.wine/user.regを編集します。
  7. 次の文を追加します。
    [Software\\Wine\\Fonts\\Replacements]
    "MS Gothic"="IPA \x30b4\x30b7\x30c3\x30af"
    "MS Mincho"="IPA \x660e\x671d"
    "MS PGothic"="IPA P\x30b4\x30b7\x30c3\x30af"
    "MS PMincho"="IPA P\x660e\x671d"
    "MS UI Gothic"="IPA UI\x30b4\x30b7\x30c3\x30af"
    "\xff2d\xff33 \x30b4\x30b7\x30c3\x30af"="IPA \x30b4\x30b7\x30c3\x30af"
    "\xff2d\xff33 \x660e\x671d"="IPA \x660e\x671d"
    "\xff2d\xff33 \xff30\x30b4\x30b7\x30c3\x30af"="IPA P\x30b4\x30b7\x30c3\x30af"
    "\xff2d\xff33 \xff30\x660e\x671d"="IPA P\x660e\x671d"

    [Software\\Wine\\X11 Driver] 1129995218
    "InputStyle"="root"

・MS Office2007をインストールします。
  1. Office2007のCD-ROMをマウントして、CD-ROM上にあるsetup.exeを実行する。
  2. 私のPCはCDドライブが付いていないので,Microsoftからダウンロードしたexeを使用しました。
  3. インストールの途中で止まってしまう場合はIMJPKLMG.EXEをkillすることで解決します。
  4. 最後にWineconfigureのWundowsバージョンをWindows XPに変更して終了です。

2009/10/03

Sheevaplug カーネル更新

Sheevaplugのカーネル更新手順を記録しておきます。
今回はhttp://sheeva.with-linux.com/sheeva/で配布されているビルド済みカーネルを用いて更新を行います。

○カーネル更新
・カーネル更新スクリプトを用いた更新
  1. カーネル更新用スクリプトがであるREADME-2.6.*.*をダウンロードします。
  2. # wget http://sheeva.with-linux.com/sheeva/README-2.6.30.8
  3. スクリプトを実行します。
  4. 2.6.30.7以降のカーネルに更新する場合は明示的にインストール場所を指定する必要があります。
    # bash ./README-2.6.30.8 --nandkernel ←NANDフラッシュに書き込む場合
    # bash ./README-2.6.30.8 --rootkernel ←/bootに書き込む場合

    *2.6.30.6ではオプションなしでNANDフラッシュが選択されますが,--rootkernelオプションを使用すれば/bootへのインストールも可能です。2.6.30.5以前のカーネルはオプションは使用できず,強制的にNANDフラッシュに書き込みます。
  5. 環境変数の設定
  6. 2.6.30以降のカーネルはU-Bootの環境変数の設定をしないとカーネルの起動に失敗します。
    Marvell>> setenv mainlineLinux yes
    Marvell>> setenv arcNumber 2097
    Marvell>> setenv console rootfstype=jffs2 'ttyS0,115200 mtdparts=orion_nand:0x400000@0x100000(uImage),0x1fb00000@0x500000(rootfs) rw'

  7. リブートし,カーネルバージョンを確認します。
  8. # reboot
    # uname -a
    Linux SheevaPlug 2.6.30.8 #2 PREEMPT Wed Sep 30 18:35:27 MDT 2009 armv5tel GNU/Linux

・外部デバイスからの更新
    以下の作業はカーネルとOSをUSBから起動して行います。私の場合カーネルの更新に失敗しNANDから起動できなくなったため,この方法で更新を行いました。
  1. カーネルイメージとカーネルモジュールを取得します。
  2. # wget http://sheeva.with-linux.com/sheeva/2.6.30.7/sheeva-2.6.30.7-uImage
    # wget http://sheeva.with-linux.com/sheeva/2.6.30.7/sheeva-2.6.30.7-Modules.tar.gz

    uImageをリネームします。
    # mv sheeva-2.6.30.7-uImage ./uImage
  3. カーネルイメージを書き込みます。
  4. # flash_eraseall -j /dev/mtd0
    # nandwrite -pm /dev/mtd0 uImage

  5. カーネルモジュールを書き込みます。
  6. # mount /dev/mtdblock1 /mnt
    # tar zxvf sheeva-2.6.30.7-Modules.tar.gz -C /mnt

  7. リブートしカーネルが更新されていればOKです。

2009/10/02

Sheevaplug USBブート

SheevaplugでUSBメモリからブートする方法を紹介します。
○USBブート(OSのみ)
・ブート用USB作成します。
    私は8GBのUSBメモリを2つのパーティションに分割し7.5GBをext2,512MBをswapにフォーマットして作業を行いました。
  1. ファイルシステムを展開します。
  2. OSは好きなものを選んで展開してください。ここではNANDからファイルシステムをコピーします。
    # mount /dev/sda1 /mnt
    # rsync -avx // /mnt/
    # cp -ax /dev/* /mnt/dev
    # reboot

  3. 環境変数を変更してブートします。
  4. Marvell>> setenv bootargs console=ttyS0,115200 mtdparts=nand_mtd:0x400000@0x100000(uImae),0x1fb00000@0x500000(rootfs) rw root=/dev/sda1 rootdelay=10 panic=10
    Marvell>> boot

    カーネルが2.6.30系である場合はbootargs設定時に"namd_mtd"を"orion_nand"に変更してください。 また,次回からUSBブートをデフォルトにする場合はsaveenvしてください。
  5. ログインしたらswapを有効にします。
  6. # swapon /dev/sda2
  7. fstabを編集します。
  8. # vi /etc/fstab
    次を追加します。
    /dev/sda1 / ext2 errors=remount-ro 0 1
    /dev/sda2 swap swap defaults 0 0

この作業だけではカーネルはNANDから呼び出しているのでカーネルもUSBから呼び出すよう設定します。
○USBブート(カーネル込み)
・カーネルのインストール
  1. カーネルイメージとカーネルモジュールを取得します。
  2. まずNANDからブートし,ログインします。 なお,ここではカーネル2.6.30.7を使用します。
    # wget http://sheeva.with-linux.com/sheeva/2.6.30.7/sheeva-2.6.30.7-uImage
    # wget http://sheeva.with-linux.com/sheeva/2.6.30.7/sheeva-2.6.30.7-Modules.tar.gz

  3. USBメモリにカーネルをインストールします。
  4. # mount /dev/sda1 /mnt
    # cp sheeva-2.6.30.7-uImage /uImage
    # tar zxvf sheeva-2.6.30.7-Modules.tar.gz -C /mnt

  5. リブートし,U-Bootの環境変数を変更します。
  6. Marvell>> setenv bootargs console=ttyS0,115200 mtdparts=orion_nand:0x400000@0x100000(uImae),0x1fb00000@0x500000(rootfs) rw root=/dev/sda1 rootdelay=10 panic=10 init=/bin/bash
    Marvell>> setenv bootcmd 'usb start; ext2load usb 0:1 0x8000000 /uImage; bootm 0x8000000'
    Marvell>> setenv mainlineLinux yes
    Marvell>> setenv arcNumber 2097
    setenv cesvcid ULULULULULULPPULULULULULDA
    Marvell>> boot

SDカードからカーネルをブートするためにはU-Bootの改造が必要なようなのでまた今度にします。

Sheevaplug U-Boot更新

今回はU-Bootの更新を行います。
SheevaplugにデフォルトでインストールされているU-Bootは致命的なバグが含まれているので早めに更新しましょう。
○U-Boot更新
・U-Bootバージョン確認
  1. U-Bootのバージョンを確認するためにリブートします。
  2. 次のメッセージが表示された時に何かボタンを押します。これでU-Bootに入れます。
    Hit any key to stop autoboot: 0
    varsionコマンドでバージョンを確認します。
    Marvell>> version
    U-Boot 1.1.4 (Mar 19 2009 - 16:06:59) Marvell version: 3.4.16

    これはバグバージョンなので更新します。
・TFTPサーバの準備
  1. 付属のSheevaPlug Development Kit Version 1.2のCDからSheevaPlug_U-Boot.zipを解凍します。
  2. TFTPサーバで上で解凍したSheevaPlug_U-Boot\U-Boot - Imageを参照しておきます。
・U-Boot置き換え作業
  1. 環境変数を保存しておきます。
  2. Marvell>> printenv
  3. TFTPを使うためSheevaplugとサーバのアドレスを指定します。
  4. Marvell>> set ipaddr 192.168.11.4
    Marvell>> set serverip 192.168.11.2
    Marvell>> set netmask 255.255.255.0

  5. U-Bootを置き換えます。
  6. Marvell>> bubt u-boot-rd88f6281Sheevaplug_400db_nand.bin
    すると次のように聞かれます。
    Override Env parameters? (y/n)
    環境変数を初期化したい場合はy,したくない場合はnです。ここではnにしたほうが無難です。yにした場合は環境変数の再設定が必要になります。
  7. U-Bootを再起動してバージョンを確認します。
  8. Marvell>> reset
    Marvell>> version
    U-Boot 1.1.4 (Apr 9 2009 - 12:23:12) Marvell version: 3.4.16

    バージョンが新しくなっていれば成功です。

2009/09/30

Sheevaplug初期設定

届いたSheevaplugはUbuntu9.04がプリインストールされていたが,設定に問題があるのでまともに動くように初期設定を行う必要があります。

○作業用マシンとの接続方法
・Windowsマシンからの接続(あらかじめ作業用マシンにTeraTermをインストールしておいてください。)
  1. 付属のSheevaPlug Development Kit Version 1.2のCDからSheevaPlug_Host_SWsupportPackageWindowsHost.zipを解凍しておきます。
  2. 付属のUSBケーブルを使用し作業用マシンとSheevaplugを接続,電源投入します。
  3. ドライバのインストールを求められるので,1のドライバを指定します。
  4. TeraTermを起動しシリアルポートから速度115200bpsで開きます。
・Linuxマシンからの接続
  1. 付属のUSBケーブルを使用し作業用マシンとSheevaplugを接続,電源投入します。
  2. コンソールから次のコマンドを入力すると接続します。
  3. # modprobe ftdi_sio vendor=0x9e88 product=0x9e8f
    # screen /dev/ttyUSB1 115200

接続が完了したら,rootでログインします。パスワードは「nosoup4u」です。
続いてUbuntuを正常に使用できるように初期設定を行います。

○Ubuntuの初期設定
・一番最初にpasswdコマンドでパスワードを変更します。
・DNS情報を取得できるよう設定します。
  1. viでdhclient.confを開きます。
  2. # vi /etc/dhcp3/dhclient.conf
  3. 次の行をコメントアウトします。
  4. supersede domain-name-servers 127.0.0.1;
・次にロケール・タイムゾーン・時刻を設定します。
  1. ロケールを設定します。
  2. # locale-gen ja_JP.UTF-8
    # echo 'LANG="ja_JP.UTF-8"' > /etc/default/locale
  3. タイムゾーンを設定します。
  4. # dpkg-reconfigure tzdata
    表示されるメニューで「Asia」→「Tokyo」を選択します。
  5. 時刻を設定します。
  6. # ntpdate 210.173.160.27
    # hwclock -w
  7. 不要な設定を削除します。
  8. /etc/hostsの次の行をコメントアウトします。
    91.189.88.36 ports.ubuntu.com
    /etc/rc.localの次の行をコメントアウトします。
    insmod /boot/fat.ko
    insmod /boot/vfat.ko
    /root/discoverd
    cd /
    date 012618002009
    hwclock -w
・一度リブートします。
    # reboot
・再びログインし,必要なパッケージをインストールします。
    # apt-get update
    # apt-get wget
・rootのまま作業を続けるのはよくないので,新規ユーザを作成しsudo権限を付与します。
    # visudo
    次の行を追加します。
    %sudo ALL=(ALL) NOPASSWD: ALL
    新規に作成したユーザをsudoグループに所属させるとsudoを使えるようになります。
以上で初期設定は終了です。
これで普通のUbuntuとして使用できます。