スポンサーサイト
投稿日時 : -------- --:--
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
-------- --:-- | スポンサー広告
[openSUSE11.0] インストールから日本語フォントの設定まで
投稿日時 : 2008-07-16 12:03
 日経Linux2008年8月号買ったらopenSUSE11.0のLiveCDついてたので試しに起動したらよさげだったのでそのまま放置していた10.3のパーティション消してインストール。インストール時の注意点は、はじめから日本語を選択してセットアップを進めると途中でインストーラがクラッシュするバグがあること。対策は公式のインストールガイドを参照。
 
 特に迷うようなこともなくインストール完了。インストーラが10.3のときよりユーザフレンドリになってる印象。
 
 で起動する。とりあえず気づくことは日本語フォントが汚いことと、日本語が入力できないこと。メインメニューから「コンピュータ」→「YsST」→「ソフトウェア」→「オンライン更新」を実行して再起動したらIPA系のきれいな日本語フォントがインストールされて、さらに日本語も打てるようになってた。・・・と思う。一応検索してみると以下のような手順が正しいらしい。
 
kanzメモ: openSUSE 11.0の日本語環境
 
言語設定をいじった覚えがないので必ずしも必要な作業でもないのかも。
 
 これで大体のフォントがきれいに表示されるようになったが、ウィンドウタイトルやメニュー文字など特定の部分のフォントが汚いまま。IPAフォント自体はインストールされているようなので後は設定次第。メインメニューの「アプリケーション」→「システム設定」でKDEのシステム設定アプリを起動。最上段の「外観」の「フォント」で各部位で使用するフォントを個別に設定できる。IPA系フォントで統一して、「アンチエイリアスの使用」を有効にする。これですべての部位のフォントがきれいになった。
 
今回インストールしたマシンのスペックと構成は以下のような感じ。
フォントもきれいになってます。
spec
完全な実験用マシンなのでパーティションとか適当なことになってますが、ちゃんと使うつもりならもっとしっかりやるべきです。マウントポイントが「/」になってるのが今回openSUSE11.0をインストールしたパーティションです。
 
 
2008-07-16 12:03 | Linux | Comment(0) | Trackback(0)
/etc/fstabのユーザ名とパスワードを外部ファイル化する
投稿日時 : 2008-05-12 08:06
/etc/fstab中のマウントオプションのパスワードとユーザ名の指定を外部ファイル化してセキュリティを高める。

■/etc/fstabのユーザ名とパスワード

 Windows共有フォルダをマウントする際にWindows側でパスワードが設定されていると以下のようにマウント時にユーザ名とパスワードをマウントオプションに指定する必要がある。
$ sudo mount -t cifs -o username=itmst,password=hogefoo,codepage=cp932,iocharset=utf8,defaults //192.168.0.2z /mnt/smb/2z
これを/etc/fstabに登録してLinux起動時に自動マウントさせる場合にも
/etc/fstab
//192.168.0.2/z /mnt/smb/2z cifs username=itmst,password=hogefoo,codepage=cp932,iocharset=utf8,defaults 0 0
というようにやはりユーザ名とパスワードを指定する。これはセキュリティ的に問題があるのでユーザ名とパスワードを外部ファイル化する。

■credentialsマウントオプションで外部ファイルを指定する

マウントオプションのcredentialsでユーザ名とパスワードを記述した外部ファイルを指定することができる。usernameとpasswordだった部分をcredentialsにして外部ファイルのパスを指定する。
/etc/fstab
//192.168.0.2/z /mnt/smb/2z cifs credentials=/etc/smbpasswd.2,codepage=cp932,iocharset=utf8,defaults 0 0
外部ファイルとして/etc/smbpasswd.2を指定しています。ファイル名は適当です。samfsでパスワードでWindowsマシンのIPが192.168.0.2なので.2をつけてみました。

■外部ファイルの書式

外部ファイルの書式は以下のように単純です。
/etc/smbpasswd.2
username=ユーザ名
password=パスワード

■外部ファイルのパーミッション

ファイルのオーナとパーミッション、保存場所には注意する必要がある。
$ sudo chown root:root /etc/smbpasswd.2
$ sudo chmod 0600 /etc/smbpasswd.2
$ ls -l /etc/smbpasswd.2
-rw------- 1 root root 32 2008-05-12 10:32 /etc/smbpasswd.2
 
 
[参考]
smbmount  
 
2008-05-12 08:06 | Linux | Comment(0) | Trackback(0)
Ubuntu7.10→8.04アップグレードで半角全角・アンダースコアが無反応に
投稿日時 : 2008-05-07 20:17
 PC-MV1C3Eに入れてたUbuntu7.10を8.04にアップグレードした。目を離した隙に、変更済み設定ファイルを保持するかどうかのダイアログが出てて止まってることが何度もあった。なので一体どれぐらいの時間が実際のアップグレードにかかったか分からないが2時間ほどで完了。
 
 無事起動できるのかドキドキしながら再起動。ログインが表示されたので安心していたら、エラー発生。
Error activating XKB configuration.
It can happen under various circumstances:
- a bug in libxklavier library
- a bug in X server (xkbcomp, xmodmap utilities)
- X server with incompatible libxkbfile implementation
(以下省略)
というエラーメッセージが表示された。その他は特におかしいところはなさげ。内容的にどうやらキーボード関係のエラーらしい。さっそく検索しようとすると英数字は打てるが半角全角キーとアンダースコアが無反応。Ubuntuの公式日本語フォーラムで同じ症状発見。
 
Ubuntu日本語フォーラム / 8.04betaへのupgradeに伴う不具合について
 
緊急避難的対策のようですが/etc/X11/xorg.confのInputDeviceセクションの、
/etc/X11/xorg.conf
Section "InputDevice"
        Identifier      "Generic Keyboard"
        Driver          "kbd"
        Option          "CoreKeyboard"
        Option          "XkbRules"      "xorg"
        Option          "XkbModel"      "jp106"
        Option          "XkbLayout"     "jp,jp"
        Option          "XkbVariant"    "latin,"
        Option          "XkbOptions"    "grp:alt_shift_toggle,grp_led:scroll"
EndSection
以下の行を削除するか、
        Option          "XkbVariant"    "latin,"
次のように編集する。
        Option          "XkbVariant"    " "
これで再起動したら問題なく半角全角とアンダースコアキーが打てるようになった。ちなみにこの問題は7.10から8.04へアップグレードしたとき限定で、クリーンインストールした場合は大丈夫。
 
2008-05-07 20:17 | Linux | Comment(0) | Trackback(0)
Ubuntu 8.04でも/etc/hostsの127.0.1.1が修正されていない
投稿日時 : 2008-05-07 12:26
 Ubuntu 7.10以前からもある/etc/hostsのバグが8.04でも修正されていないことに気づいてビックリした。 ホスト名の名前解決の設定ファイルである/etc/hostsに「127.0.1.1」という行が存在する。
/etc/hosts
127.0.0.1 localhost
127.0.1.1 c610
 
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
 発見当初は「こんな単純なバグが放置されるわけないし、難解なLinuxのことだ、何か深い理由があるかもしれない」とか思い、一応127.0.1.1はコメントアウトしてから修正していましたが、これは単なる放置されたバグのようです。しかも存在しないIPを見に行くために一部のアプリケーションで動作速度に影響が出るとのこと。
Ubuntu Edgyの/etc/hostsが間違っている - うるめねっと技研 - Linux派 -
 
ということで修正。
127.0.0.1 localhost
127.0.1.1 c610
これを
127.0.0.1 localhost c610
にします。c610は各自読みかえてください。
 
2008-05-07 12:26 | Linux | Comment(0) | Trackback(0)
Ubuntu 8.04のsmbfsでWindows共有フォルダをマウントする
投稿日時 : 2008-05-07 11:42
 Ubuntu8.04をクリーンインストールしたので一から設定しなおしています。いろいろ忘れていることに気づいたのでメモ代わりに。

■smbfsはデフォルトではインストールされていない

 smbclientでWindowsフォルダにアクセスできるのに、-t smbfsや-t cifsでmountしようとすると「ファイルシステムタイプが間違ってるとかなんかそういうので無理」と言われる。
$ sudo mount -t cifs //192.168.0.2/z /mnt/smb/2z
mount: wrong fs type, bad option, bad superblock on //192.168.0.2/z,
       missing codepage or helper program, or other error
       (for several filesystems (e.g. nfs, cifs) you might
       need a /sbin/mount. helper program)
       In some cases useful info is found in syslog - try
       dmesg | tail  or so
 
そういえばデフォルトではsmbfsが入っていなかったことを思い出した。
$ dpkg --list | grep smbfs
$ 

■smbfsインストール

ということでsmbfsをインストール。
$ sudo apt-get install smbfs
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
  smbfs
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 0 個。
93.3kB 中 0B のアーカイブを取得する必要があります。
この操作後に追加で 193kB のディスク容量が消費されます。
未選択パッケージ smbfs を選択しています。
(データベースを読み込んでいます ... 現在 96387 個のファイルと
ディレクトリがインストールされています。)
(.../smbfs_3.0.28a-1ubuntu4_i386.deb から) smbfs を展開しています...
smbfs (3.0.28a-1ubuntu4) を設定しています ...
 
今度はちゃんと表示される。
$ dpkg --list | grep smbfs
ii  smbfs    3.0.28a-1ubuntu4  mount and umount commands for the smbfs (for

■マウント

でマウントしてみる。
$ sudo mkdir /mnt/smb/2z ←マウントポイント作成
$ sudo mount -t cifs -o username=itmst,password=hogefoo,codepage=cp932,iocharset=utf8,defaults //192.168.0.2/z /mnt/smb/2z ←ファイルシステムとマウントオプションを指定してマウント
$ ls /mnt/smb/2z ←マウント確認
Anime Backup Movie Music
$ touch /mnt/smb/2z/日本語ファイル名テスト ←日本語ファイル名が文字化けしないことも確認
$ ls /mnt/smb/2z/
Anime Backup Movie Music 日本語ファイル名テスト

■今回使用したマウントオプション

マウントオプションは-oオプションでカンマ区切りで指定する。
usernameログインユーザ名。Windows側でパスワード設定していないなら必要ない。credentialsオプションで外部ファイル化が可能。
passwordログインパスワード。Windows側でパスワード設定していないなら必要ない。credentialsオプションで外部ファイル化が可能。
codepage=cp932Windows-Ubutu間の文字コードの違いによる文字化けを回避する。iocharset=utf8とセットで使うことでWindows標準文字コードのShift-JISとUbuntuの標準文字コードUTF-8の変換を行う。
iocharset=utf8Windows-Ubutu間の文字コードの違いによる文字化けを回避する。codepage=cp932とセットで使うことでWindows標準文字コードのShift-JISとUbuntuの標準文字コードUTF-8の変換を行う。
defaultsrw, suid, dev, exec, auto, nouser, asyncを指定したのと同じことになる。
rw読み書き可能モードでマウントする。r(ead)とw(write)のこと。roならread onlyでマウント。
suidSUIDとSGIDを有効にする。
devファイルシステム上のデバイスを利用できるようにする。
exec実行可能ファイルの実行を許可する。
automountコマンドの-aオプションでマウントされるようになる。その他ファイルシステム関連のコマンドの対象にするかどうかにも影響する。
nouserroot権限を持っていない一般ユーザがマウントすることを許可しない。
asyncファイルシステムへの I/O が非同期で行われる。syncだと同期。asyncだと信頼性は落ちるがパフォーマンスは上がる。逆にsyncだと信頼性は高いがパフォーマンスが落ちる。
マウントオプションは他にもたくさんあります。以下ページなどを参照してください。
smbmount
Manpage of MOUNT

■/etc/fstabに登録して自動マウントさせる

/etc/fstabに以下の行を追記するとLinux起動時に自動的にマウントさせることができる。  
//192.168.0.2/z /mnt/smb/2z cifs username=itmst,password=hogefoo,codepage=cp932,iocharset=utf8,defaults 0 0
改行されて表示されいるかもしれませんが実際は1行です。  
 
2008-05-07 11:42 | Linux | Comment(0) | Trackback(1)
wubiでUSB外付けハードディスクにUbuntu 8.04をインストール
投稿日時 : 2008-05-06 14:49
 「WubiでWindows上からUbuntu8.04を簡単インストール」ではインストール先を内蔵ハードディスク(sda2)に指定しました。今回は外付けハードディスク(sdb1)にインストールします。内蔵HDの時と違ってそれなりに作業が必要になります。BIOSの設定をいじる方法もありますがここでは扱いません。
 

■環境

Pen4 2.66GHz
1GB RAM
Windows XP Pro SP2
 
ディスク構成
wubi partition
この一番下の行の「ローカルディスク(Z:)」が今回インストール先になるUSB外付けHD(sdb1)。Cドライブ(sda1)にXPが入っているのでインストールはCドライブ(sda1)からZドライブ(sdb1)に行うことになります。  

■wubiの起動プロセス

 wubi経由のLinuxの起動プロセスは少し変則的です。wubiをインストールすると「c:\wubildr.mbr」と「c:\wubildr」が生成され、「c:\boot.ini」には「c:\wubildr.mbr="Ubuntu"」が追記されます。起動プロセスの流れは(たぶん)以下のようになっています。
  1. 電源投入
  2. POST
  3. BIOS
  4. MBR
  5. ブート識別子が0x80なパーティションのブートセクタ
  6. NTLDR
  7. c:\boot.iniで起動メニュー表示
  8. c:\wubildr.mbr
  9. c:\wubildr内のGRUB(?)がmenu.lst検索
  10. 見つかったmenu.lstを元にカーネルをロード
  11. Linux起動
この起動プロセスに関しては詳しく調べてみたので近いうちに別記事でまとめます。今回は外付けHDへのインストール方法に絞って解説します。
 

■wubiのインストールが完了したら再起動前に作業が必要

 sda1のXPからsdb1の外付けHDにwubiのインストールが完了したら最後に表示される画面で「後で再起動」を選択して下さい。再起動する前に作業が必要です。そのまま再起動してしまった場合は以下のようなエラーが表示されたハズです。この場合は再起動してWindowsを起動して作業すれば問題ありません。
find --set-root --ignore-floppies /ubuntu/install/boot/grub/menu.lst
 
Error 15: File not found
 
Press any key to continue...
 
Error 15 : File not found
 
これはGRUB起動時にUSBハードディスクのドライバがロードされていないことが原因で/ubuntu/install/boot/grub/menu.lstが見つからないからです。GRUBコマンドでsdb1をマウントしようとすると、
grub> root (hd1,0)
Error 21: Selected disk does not exist
そんなディスクは存在しませんと言われる。一方内蔵HDは
grub> root (hd0,5)
  Filesystem type is ext2fs, partition type 0x83
grub> root (hd0,0)
  Filesystem type is ntfs, partition type 0x7
のようにExt3だけでなくNTFSパーティションまでもマウントできます。ということでカーネルその他の起動に必要なファイルはGRUB起動時に認識可能なこれらのドライブにおいておけばいいわけです。
 

■インストール時と通常起動時では起動プロセスが少し違う

 wubiインストール後の初回再起動時はUbuntu本体を仮想ディスクである「z:\ubuntu\disks\root.disk」にインストールする必要があるので、通常再起動時とはほんの少し違うプロセスで起動します。もしZドライブが内蔵HDだったなら通常の初回再起動時は「z:\ubuntu\install\boot\grub\menu.lst」の設定を基にインストーラが起動しUbuntu本体がインストールされます。Ubuntu本体のインストール完了後は「z:\ubuntu\disks\boot\grub\menu.lst」の設定を基に通常起動します。
 

■GRUB起動時に認識可能なドライブに必要ファイルをコピーする

 しかしZドライブは外付けHDなのでGRUB起動時にはアクセスできません。なのでインストーラ起動に必要なファイルはすべてCドライブにコピーしておきます。
「z:\ubuntu\install\boot」以下の全ファイルとフォルダをディレクトリ構造を保ったまま「c:\ubuntu\install\boot」にコピーして下さい。
c:\ubuntu\install\boot  
 

■インストーラ起動用のmenu.lstを編集する

 次にコピーした「c:\ubuntu\boot\grub\menu.lst」のカーネルパラメータに少し手を加えます。これはUbuntu本体のインストーラを起動するためのGRUB設定ファイルです。以下の太字の行がカーネルパラメータですが、そこに以下のように「root=/dev/sdb1」を追記します。これでUSBハードディスクドライバをロードした後に「sdb1」がマウントされます。/dev/sdb1の部分のデバイスファイル名は環境によって異なるので各自読み替えて下さい。
title 通常モードでインストーラを開始する
find --set-root --ignore-floppies /ubuntu/install/boot/vmlinuz
kernel /ubuntu/install/boot/vmlinuz root=/dev/sdb1 debian-installer/custom-installation=/ubuntu/install/custom-installation iso-scan/filename=/ubuntu/install/installation.iso automatic-ubiquity noprompt quiet splash boot=casper ro debian-installer/locale=ja_JP.UTF-8 console-setup/layoutcode=jp console-setup/variantcode= --
initrd /ubuntu/install/boot/initrd.gz
boot
通常はデフォルトで選択される一番上のエントリだけ編集すれば大丈夫だと思いますが、念の為にすべてのエントリに追記しても構いません。あとエラーが出たり起動中に停止したときに原因が特定できるように「quiet splash」は削除しておいた方がいいかもしれません。起動プロセスが表示されるようになります。  
 

■再起動するとUbuntu本体のインストールが開始

 menu.lstの編集が終わったら再起動してNTLDRのOS選択メニューで「Ubuntu」を選択すればUbuntu本体のインストールが開始されるハズです。「Error 15: File not found」のエラーが表示される場合は先ほど編集したmenu.lstの「root=/dev/sdb1」の指定が間違っている可能性があります。デバイスファイル名は環境によって異なることに注意して下さい。
 

■Ubuntu本体のインストールが完了したらWindowsを起動する

 Ubuntu本体のインストールが完了すると自動的に再起動されますが、今度は通常起動用の必要ファイルをCドライブにコピーする作業が必要なのでWindowsを起動します。
 

■通常起動用ファイルをCドライブにコピーする

 インストールは完了したので次は通常起動するためのカーネルその他の必要ファイルをGRUB起動時にアクセス可能なCドライブにコピーします。インストール用起動ファイルをZドライブからCドライブにコピーしたときと同じように、今度は「z:\ubuntu\disks\boot」を「c:\ubuntu\disks\boot」にディレクトリ構造を保ったままコピーします。
c:\ubuntu\disks\boot
 
 これらのファイルはUbuntu本体のインストール中に生成されたもので、wubiインストール時には存在しません。
 

■通常起動用のmenu.lstを編集する

 次にUbuntuの通常起動用のc:\ubuntu\disks\boot\grub\menu.lstを編集します。すべてのエントリの、以下の1
root  (hd1,0)/ubuntu/disks
 
以下のように0に書き換えます。  
root  (hd0,0)/ubuntu/disks
 
これでvmlinuzやinitrdはCドライブからロードし、/(ルートディレクトリ)は「Z:\ubuntu\disks\root.disk」を使うことになります。ここでもカーネルパラメータの「quiet splash」を削除しておけば起動プロセスが表示されるのでトラブルシューティングが楽になると思います。
 

■c:\ubuntu\install\boot\grub\menu.lstを削除かリネーム

 Ubuntu本体のインストールが完了した時点で「Z:\ubuntu\install\boot\grub\menu.lst」が自動的に削除されています。しかし手動でコピーした「c:\ubuntu\install\boot\grub\menu.lst」の方はそのまま残っているので「menu.lst.bak」などにリネームするか、削除しておきます。これは「c:\wubildr」内蔵GRUBが「c:\ubuntu\install\boot\grub\menu.lst」を検索・ロードしてUbuntu本体のインストールを再度実行してしまわないようにするための処置です。
 

■再起動してUSB外付けハードディスクからUbuntuが起動できることを確認

 以上で作業は完了です。再起動してUbuntuがUSB外付けハードディスクから起動できることを確認して下さい。
complete  
お疲れ様でした。
 
 
2008-05-06 14:49 | Linux | Comment(0) | Trackback(0)
MobaLiveCDでWin上の一つのウィンドウとしてLinux起動
投稿日時 : 2008-05-05 16:17
1CD-Linux等のLiveCDをWin上で起動するMobaLiveCD :教えて君.net
 
という記事を見つけたので早速試してみた。
 
MobaLiveCD - Run your LiveCD on Windows
 
 MobaLiveCDはダウンロードしたらインストール不要でいきなり実行するだけで起動する。後はLiveCDLinux(1CDLinux)のisoイメージファイルを指定するとエミュレータのQEMUが起動してその中でLinuxが起動する。まあつまりMobaLiveCDはQEMUの設定なんかを全自動でやってくれるアプリケーションということです。  
 
どのLiveCDLinuxを使うかは好みです。多数存在するので以下のサイトからいろいろ試してみて下さい。
ライブCDの部屋  
 

■マシン構成

Pen4 2.66GHz
1GB RAM
Windows XP Pro SP2
 

■Ubuntu 8.04を試してみる

 とりあえず手元にUbuntu 8.04のisoがあったので試してみた。基本的な使い方は冒頭のリンクからどうぞ。結論から言えばこのスペックでは動作が重すぎて使いものにならなかった。起動するまで10分近くかかってフリーズしてるのかと思った。今のハイエンドなマシンならもっとまともに動くハズ。低スペックマシンな人はUbuntuの軽量版ディストリビューションEcolinux-lightとかいいかもしれません。
 

■まとめ

 他のLiveCDも試してもいいけど結局QEMUの動作速度の評価になってることに気づいてしまったので終了します。まあ初心者の手の出しやすさという点ではかなり評価できる。Linuxに興味を持った初心者を苦しめるisoファイルの焼き方を知らなくてもいいわけだし。焼いたり再起動したりの手間がかからないので、片っ端からいろいろなLiveCDLinuxを試したいときには重宝しそうです。iso右クリック時のメニューに「Test this with MobaLiveCD」というのを追加できるらしいのでより便利。
 
 
2008-05-05 16:17 | Linux | Comment(0) | Trackback(0)
WubiでWindows上からUbuntu8.04を簡単インストール
投稿日時 : 2008-05-04 22:22
 Windows上からパーティションに手を加えずにLinuxのUbuntu8.04をインストールすることができるwubiを試してみた。今回は内蔵HDにインストールしてみる。外付けハードディスクへインストールする場合は若干作業が必要になる。それについては別記事にする予定。
 

■wubiの特徴

  • Windows上から一つのアプリケーションのようにUbuntu 8.04をインストールできる
  • アプリケーションの追加と削除から簡単にアンインストールできる
  • Windows上で一つのファイルとして扱える仮想ディスクにインストールする
  • パーティションには一切変更を加えないので安心
  • VMWareなどのようにゲストOSとして動作するわけではないので高速
  • インストール時の設定はインストール先のドライブ指定とパスワードの設定だけなので初心者に優しい
通常インストールとVMWareの間ぐらいの位置付けという印象。
 

■下準備

 インストール先のドライブ(パーティション)は4GB以上のファイルが扱えるようにNTFSでフォーマットされていることを確認する。もしFAT32でフォーマットされているならNTFSへの変換が必要。
 空き容量は最低でも4GB必要。推奨は8GBらしいです。まあ実験的に試すだけなら4GBでも問題ないでしょう。
 デフラグはしっかりしておかないと仮想ディスクが断片化してパフォーマンスに影響するようです。
 ソフトウェアRAIDを組んでる人はインストール中に問題が発生するかもしれないので注意です。ハードウェアRAIDの場合は問題ないそうです。
 

■環境

Pen4 2.66GHz
1GB RAM
Windows XP Pro SP2
 
ディスク構成は以下
wubi partition  

■Wubiをダウンロード

 Wubi-8.04.exeを公式ページからダウンロード。1.1MBと軽量。
 
Wubi - Ubuntu Installer for Windows
 
download1
 
download2
 

■Ubuntu8.04をダウンロード

 Ubuntu本体のISOをダウンロードしておく。先にダウンロードしておかなくてもWubiのインストール中に自動でダウンロードしてくれますが、異常に速度が遅かったりするので先にレジュームがきくダウンロードツールなどで落としておいた方が得策。
Ubuntuの入手 | Ubuntu Japanese Team
「日本語ローカライズドDesktop CDのダウンロード」でダウンロードする。
 

■ISOファイルを焼くかマウントする

 DaemonToolsなどを使ってISOイメージファイルをマウントしておくか、ディスクに焼いてドライブに入れておけばWubiが自動で認識してローカルドライブから読み込んでくれる。wubiインストール時に自動ダウンロードさせる場合はこの作業は不要。
 

■wubiの初期設定

 wubiを起動するとシンプルな設定ウィンドウが表示される。
exec wubi
 
wubi setting
 
設定はインストールするドライブと仮想ディスクのサイズを選択し、パスワードを入力するだけという簡単さ。ここでの注意点はインストール先は内蔵ハードディスクを選択すること。外付けハードディスクへインストールする場合は作業が必要になる。それについては近々記事にする予定。
 
ここではCドライブ(sda1)上のXPからDドライブ(sda2)にインストールする。
 

■wubiのインストール

 設定ウィンドウで「インストール」ボタンをクリックすればあとはもう勝手にインストールしてくれます。
wubi install
 
もしここでローカルドライブにUbuntu8.04のデータが見つからない場合はネットから自動でダウンロードを開始する。
wubi download iso  

■再起動

 先にISOファイルをダウンロードしていなかった場合は時間がかかるかもしれませんが、インストール処理自体は数分で終わるはず。完了したらWindowsを再起動。
wubi reboot
 
ちなみにインストール先のディレクトリ構造は以下のようになっている。
wubi directory
 

■起動時にUbuntuを選択する

 PCを再起動するとWindowsとUbuntuのどちらを起動するか選択できるようになっています。これはc:\boot.iniにUbntuの行が追記されただけでMBRなどに変更が加えられたわけではない。
wubi boot
 

■Ubuntu本体のインストール処理

 ここからUbuntu8.04インストールの本処理が行われます。ふつうのスペックのPCなら10分もかからないうちに完了して自動で再起動されます。  
 
wubi install 1  
 
wubi install 2  
 
wubi install 3  
 

■起動確認

 自動再起動されたら前回と同じく起動時にUbuntuを選択して下さい。無事起動できれば作業は完了です。
wubi complete
 

■アンインストール

 Windowsの「アプリケーションの追加と削除」から通常のアプリケーションと全く同じようにアンインストールできます。表示名は「Ubuntu」です。
 

■まとめ

 wubiは革命的に素晴らしかった。これほどまでに初心者に優しく簡単にLinuxが導入できるツールは今までなかったと思う。心配していた動作速度もVMWareのようにもたつくこともなく、まったくストレスなく操作できるレベル。アンインストールも5秒ぐらいで完了というスピーディさにも驚かされた。
 
2008-05-04 22:22 | Linux | Comment(0) | Trackback(1)
Ubuntu + NFSサーバでファイル共有
投稿日時 : 2008-04-09 13:01
Ubuntu7.10 + NFSでファイル共有した際の設定メモ。
 

■NFSとは

Network File Systemの略で、ネットワークを介してUNIXシステム間でファイル共有を可能にする機能。リモートのファイルシステムをローカルファイルシステムと同じように扱うことができるようになる。元はSunが開発したもの。
 

■必要なパッケージ

$ sudo apt-get install portmap nfs-common nfs-kernel-server
 
NFSサーバにはkernel組込み版と通常daemon版の2種類がある。kernelサーバ版はkernel内部にカーネルスレッドとして組み込まれているのでパフォーマンスがよく、ファイルのロック機構も有効になる。nfs-user-serverは通常のdaemon版で、速度的にはkernel版に劣るが柔軟な設定が可能なのが特徴。
 
サービスは以下のような感じ。
$ sysv-rc-conf --list | grep -E 'nfs|portmap'
nfs-common   0:off   1:off 2:on 3:on 4:on 5:on 6:off S:on
nfs-kernel-s 0:off   1:off 2:on 3:on 4:on 5:on 6:off
portmap      0:on    1:off 2:on 3:on 4:on 5:on 6:on S:on
nfs-kernel-sで表示が切れてるが本当はnfs-kernel-server。
 

■起動順序

Ubuntuではインストールすると勝手にサービスに登録されて起動したが、手動で起動する場合は起動順序に気をつける必要がある。起動順序に関して検索するとportmap→nfslock→nfsの順に起動しろという記述を目にするが、現在のバージョンではサービス名が変わっているようで、portmap→nfs-common→nfs-kernel-serverの順でいいと思う。一応/etc/rc3.d内のファイル名からサービス起動順序が確認できる。
portmapとnfs-common、nfs-kernel-serverの起動順序
itmst@mv1c3e:/etc/rc3.d$ ls *{portmap,nfs*}
S17portmap  S20nfs-common  S20nfs-kernel-server
nfs-commonやnfs-kernel-serverよりも先にportmapが起動していないとまずいことが分かる。RPCベースのサービスはportmapサービスに依存するので当然。
 

■RPC

portmapはRPC(Remote Procedure Call)を管理する。NFSサービスはRPCで提供される。 RPCはリモートマシンに用意されているなんらかのサービスを、別のマシンから呼び出して使えるようにする機能。 RPCサービスはプログラム番号で識別される。サービス名とプログラム番号の対応は/etc/rpcで設定されている。
(省略)
portmapper      100000  portmap sunrpc
rstatd          100001  rstat rstat_svc rup perfmeter
rusersd         100002  rusers
nfs             100003  nfsprog
(省略)
 

■RPCとportmap

RPCの各サービスのTCP/IPポート番号は実行時に動的に割り当てられる。それを管理するのがportmapサービス。 クライアントからサービス番号を受け取り対応するサービスのポート番号を返す。 現在portmapに登録されているすべてのRPCプログラムを表示するには「rpcinfo -p」を実行する。
$ rpcinfo -p
   program vers proto   port
    100000    2   tcp    111  portmapper
    100024    1   udp  32768  status
    100024    1   tcp  35772  status
    100011    1   udp    630  rquotad
    100011    2   udp    630  rquotad
    100011    1   tcp    632  rquotad
    100011    2   tcp    632  rquotad
    100000    2   udp    111  portmapper
    100003    2   udp   2049  nfs
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100021    1   udp  32780  nlockmgr
    100021    3   udp  32780  nlockmgr
    100021    4   udp  32780  nlockmgr
    100003    2   tcp   2049  nfs
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100021    1   tcp  33493  nlockmgr
    100021    3   tcp  33493  nlockmgr
    100021    4   tcp  33493  nlockmgr
    100005    1   udp  32781  mountd
    100005    1   tcp  44233  mountd
    100005    2   udp  32781  mountd
    100005    2   tcp  44233  mountd
    100005    3   udp  32781  mountd
    100005    3   tcp  44233  mountd
 
nfsはTCP/IPポート2049番に割り当てられているのが確認できる。portmapperは111番。 クライアントは111番のportmapperサービスにnfsのサービス番号100003で問い合わせ、 nfsサービスがTCP/IPの2049番で動作していることを知ることができる。このようにポート番号は動的に割り当てられることになっているが実際のところNFSは2049番ポートで実行されることがほとんどのようです。
 

■portmapのアクセス制御

portmapにはTCPWrappersのライブラリlibwrapが組み込まれているので/etc/hosts.allowと/etc/hosts.denyでアクセス制御が可能。以下のように設定することで192.168.0.0/24ネットワークからのみportmapサービスにアクセスできるようにすることができる。ただしportmapサービスのアクセス制御はRPCベースのすべてのサービスに影響することに注意する。
 
□192.168.0.*からのアクセスを許可する
/etc/hosts.allow
 ALL:127.0.0.1
 portmap:192.168.0.
 lockd:192.168.0.
 mountd:192.168.0.
 statd:192.168.0.
□その他のアクセスを拒否する。
/etc/hosts.deny
 portmap:ALL
 lockd:ALL
 mountd:ALL
 rquotad:ALL
 statd:ALL
上記の設定は以下を参考。
NFS サーバの設定
 

■公開ディレクトリの設定ファイル

公開ディレクトリは「/etc/exports」で設定する。
/etc/exportsの書式
<公開ディレクトリ> <アクセス許可ホスト>(<カンマ区切りオプション>)
 
□主なオプション一覧
ro読み取りのみ許可
rw読み取り・書き込みともに許可
root_squashリモートrootをnobodyユーザとして扱う。明示的に指定しなくてもデフォルトで有効になる。no_root_squashオプションで無効にできるが、特別な理由がない限り避けるべき。
no_root_squashリモートrootをローカルrootとして扱う。クライアント側のroot権限をNFSでマウントしたファイルシステムにも有効にする。セキュリティホールになり得るので特別な理由がない限りこのオプションは使うべきではない。
all_squash全てのユーザを不特定ユーザとして扱う。 全てのユーザを匿名ユーザ(nobody)として扱う
anonuid不特定ユーザ用にローカルユーザIDを指定 匿名ユーザ用のUIDを指定する
anongid不特定ユーザ用にローカルグループIDを指定する 匿名ユーザ用のグループIDを指定する
no_subtree_checkサブツリーのチェックを無効
 
その他オプションは以下参照
Manpage of EXPORTS
 
実際の例として、/home/itmst/Desktopをlanドメインからのすべてのアクセスを許可し、読み書き可、root権限なし、サブツリーチェック無効で公開する場合、
/home/itmst/Desktop *.lan(rw,root_squash,no_subtree_check)
となる。ひとつのディレクトリに対して複数の公開対象ホストを設定する場合はスペース区切りで続けて記述する。
/home/itmst/Desktop *.lan(rw,root_squash,no_subtree_check) *.lan2(ro)

スペースが区切り文字として認識されるので、「*.lan」と「(rw,」の間にスペースを空けてはいけないことに注意。
 

■設定の反映

/etc/exportsを変更した場合は以下のコマンドを実行して設定を反映させる。
$ sudo service nfs-kernel-server reload
 * Re-exporting directories for NFS kernel daemon...     [ OK ]
または
$ sudo exportfs -r
でも可。
 

■公開ディレクトリの確認

公開されているディレクトリを確認するにはnfs-commonパッケージに含まれるshowmountコマンドを使う。-eオプションでホストを指定できる。クライアントの設定をするときも目的のホストの公開ディレクトリを確認できる。
$ showmount -e localhost
Export list for localhost:
/home/itmst/Desktop 192.168.0.*
 

■サーバとクライアントでuidとgidを統一させる

NFSではユーザの識別がユーザ名ではなく、ユーザIDによって行われるため、サーバ側とクライアント側でユーザIDを統一しておく。

■NFSクライアント

クライアント側からNFS公開ディレクトリをマウントする。通常のmountとほとんど同じだが、マウント対象ディレクトリの前に「ホスト名:」をつける。マウントオプションは-oオプションでカンマ区切りで記述する。-tオプションでファイルシステムにnfsを指定してもいいが無くてもいける。  
□代表的なマウントオプション
hardハードマウント(デフォルトで有効)
softソフトマウント
intrハードマウント時に割り込みを受け付けるかどうか
rsize=byte読み込みバッファサイズ デフォルト1024Byte。rsize=4096のように1024の倍数で16384までの範囲でバイト単位で指定。
wsize=byte書き込みバッファサイズ デフォルト1024Byte。rsize=4096のように1024の倍数で16384までの範囲でバイト単位で指定。
nosuidサーバ上のsuidプログラムの実行を不可にする。クライアント側のroot所有ファイルが書き換えられるの防ぐ。サーバが完全に信用できない場合は有効にすべき。
noexecサーバ上のファイルの実行を禁止する。サーバが信用できない場合、必要なら有効に。
 
実際にマウントする際の例は以下。
$ sudo mkdir /mnt/nfs
$ sudo mount -t nfs -o hard,intr 192.168.0.3:/home/itmst/Desktop nfs
 

■ハードマウントとソフトマウント

ハードマウントの場合は、NFSサーバへの書き込みは保証されるが、サーバ側がダウンした場合クライント側では無限にリトライを繰り返し、 プロセスがハングアップする可能性がある。サーバが復活したらそのまま再接続される。 ソフトマウントの場合は、NFSサーバへの書き込みは保証されないのでファイルが破損する可能性がある。 接続できない場合はタイムアウトするのでハングアップの心配はない。
 
NFSの問題については以下参照。
NFS環境の問題点と自動マウント
 
複数のクライントが接続する場合は負荷が高くなるのでautofsなどを使って通信が発生する場合のみマウントするようにした方が良い。
 

■/etc/fstabに登録して自動起動

書式
<ホスト名>:<リモートディレクトリ> <マウント先ディレクトリ> nfs <カンマ区切りオプション> 0 0
192.168.0.3で公開されている/home/itmst/Desktopを読み書き可、割り込み可でハードマウントする場合は
192.168.0.3:/home/itmst/Desktop /mnt/nfs nfs rw,hard,intr 0 0
という感じになる。
 
[参考]
Linux NFS-HOWTO
NFS(Network File System)
 
2008-04-09 13:01 | Linux | Comment(1) | Trackback(1)
Knoppix 5.1.1 起動オプションメモ
投稿日時 : 2008-03-19 01:08
 Knoppixを久々に遊びで使ってみた。起動オプションとかすっかり忘れていたのでメモ。昔はうまくいったはずのオプションではダメになっていた。
 
KNOPPIX Japanese edition
 
KNOPPIX日本語版5.1.1DVDを落としてUSB外付けDVDドライブから起動。理由は分からないが初回は起動中にkernelパニック。外付けドライブだからダメなのかとも思ったが再起動してみたらふつうに起動した。ほかにもいくつか不安定な要素が散見された。
 
解像度が800x600になっていたのでとりあえず
boot : knoppix screen=1024x768
としたら、画面におさまらなくなった。KNOPPIXの基礎(2/9)を参考にいろいろいじってみた結果、
boot : knoppix xmodule=fbdev fb1024x768
フレームバッファでXを起動し、その解像度を1024x768に設定。これで画面におさまったが、少し重くなったような気がする。
上記サイトを参考に他のオプションも試してみた。以下のオプションでハードディスクにコピーしたディスクイメージファイルから起動できる。
boot : knoppix bootfrom=/dev/sda1/knoppix511.iso
/dev/sda1は外付けHD。起動後設定ファイルの保存先を/dev/sda1に設定しようとすると書き込めませんみたいなことを言われる。これはbootfromオプションで/dev/sda1/knoppix511.isoを指定しているせいで、起動時に既にリードオンリーでマウントされているため。ディスクイメージを参照している限りumountはもちろん、mount -o remount,rwができない。bootfromオプションなしで、ふつうにDVDドライブから起動すれば問題なく/dev/sda1に保存できた。
 
保存した設定ファイルを読み込むには起動オプションで以下のように指定
boot : knoppix myconf=/dev/sda1
明示的に指定しなくても
boot : knoppix myconf=scan
でもOK。以上の起動オプションをまとめると、
boot : knoppix xmodule=fbdev fb1024x768 myconf=/dev/sda1
という感じになった。
 
 あと問題は音が出ない。lsmodするとドライバは読み込まれているみたい。設定ツールを起動するとkernelモジュールが無効になっているとかなんとか・・・。面倒くさいのでまたいつか。
 
2008-03-19 01:08 | Linux | Comment(0) | Trackback(0)
<これ以前の記事 | これ以降の記事>
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。