
Ubuntu日本語フォーラム

ログインしていません。
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
#26を拝読いたしました。“ls /dev/”に関しましては、#25に
(initramfs)プロンプトで
ls /dev/disk/by-uuid
を実行すると、SDカードが認識されていないのでしょう、 sda1とsda2のみが表示されます。後者はFATのせいか4桁-4桁です。
の状態であると報告しましたように、「SDカードが見つけられん」と叱られております。そして、情けないようですが、ご案内のURLの実行はシンドイ印象です。いまさらの弱気ですが、「これしかUbuntuが使えない」という環境ではないことが起因しています。決して「できれば・・・」ではなかったのですが、あまりに敷居が高いのも困りモノというのが実情です。すみません。少々の軟弱路線を検討中です。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
他人事のように聞こえるかもしれませんが、ひじょうに残念です。SDカードにUbuntuをインストールしましたのは、WindowsのExplorerで何の設定もしないのに16GBが認識されたことが始まりです。インストール後、念のためと思って実行したUSB経由の接続でも簡単に起動したのが「愚挙」に進む決定打であったかもしれません。私の思いつきのような「愚挙」のために、多くの情報をお寄せいただきましたこと、深く感謝します。ありがとうございました。
軟弱路線を・・・と申しましたのは、まず“plpbt”によるFDD経由の起動テスト、SDカードをDドライブに見立ててWubiのインストールを実施してみましたが、いずれも起動にいたりませんでした。Dドライブ(ただしHDDのパーティション)へのWubiインストールは他のコンピュータで使っていた時期がありましたので、これには期待するところがありましたが、残念ながらgrubプロンプトが出現し、やはりデバイスを見つけることができませんでした。それにつけてもLiveUSBのUbuntuでコンピュータが起動されてしまうと、SDカードは自動マウントし、読み書き自由で、ここが納得できないところです。
ところで、ls /devの件は失礼しました。異なるものとは理解しておりませんでした。ls /dev/disk/ですと、その後にby-id、by-path、by-uuidなどのオプション(でしょうか)が選択できるので、詳細情報が得られると一人合点していた結果です。正確な情報が提供できなかったことは申しわけありませんでした。
kiyopさんの今後の成果を期待しております。そのうち、他のシーンであっても私のアイディアが提供できる日がくるよう精進したいものです。ありがとうございました。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
LiveCDを試せと言ったのは、ドライバの有無、アクセスのシステムとしての可否の確認です。
gnome-mount辺りは結構お節介に色々拾ってきて勝手にマウントしてくれる節があるので、単にSDHCが起動時には認識しないだけなんじゃないかとは思うのだけど。
ですから、起動後に認識するけど起動するまで使えないというのはあり得ないことではないです。
また、ドライバが活性化し、マウントされなければ中身は見えませんから、ドライバが無いとか、BIOSによるエミュレートなどに頼る場合、その仕様の制限を受けますから、PLoPで認識しないのは構造上妥当です。
ダメだったと書かれていることの多くはBIOSの制限や、ハードウェアがSDHCの読み書き要件を満たす状況が構築されていないところから起こそうとしているので、動かなくてもしょうがないような気はします。
カーネルコンフィギュレーションで、ドライバをカーネル組み込みにしたらうまくいったり…すれば苦労はないか。
取り敢えず、ブート時に認識できるデバイスで、ハードウェアを起こしてしまえば、後は何とかなりそうな気はするんですけど。
条件として似たような状況を作れるような環境がないので、試せませんが。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
ということではなく、カーネル組み込みか、モジュールで、ドライバはUbuntuのデスクトップが起動している時点でのシステムには入っていると思われます。
が、カーネルが起動したときにマウントする範囲には入っていないんじゃないかと。
なので、明示的にマウントするようにしておけば、起動する可能性は有るんじゃないかと思うのですけれど。
kexec-loaderがどの程度その直前の状態を反映するのかは解りませんが。
ドライバが入っていても、自動でマウントする範囲になく止まっているようにも思います。
デバイスとして接続、マウント可能であるということと、(Ubuntuのデスクトップだと勝手に認識しますけれど、起動時のそれは裏でその仕組みは動いていないので)起動時にマウントして認識する範囲にあるというのは別の問題であると思うので、明示的にマウントして、そこにシステムがあると認識させて処理を移すようにしないといけないのではないかと。
なにせ、HDDじゃないですし、sd?でも無いんで、普通に作らせると設定が想定の範囲の外にあるように思います。
思いつきを書いてるだけなので、きちんと動作を追って、根拠が有るわけではないですが。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
initrdを作り直せば#19の方法で起動できるかもしれません。
1. 9.10のLiveCDでUbuntuを起動します。
2. SDカード用のモジュールを確認します。(たぶん必要なモジュールはmmc_block.koだと思います)
3. /etc/initramfs-tools/modulesにmmc_blockを追加します。
4. mkinitramfs -o ./initrd.gz
カレントディレクトリにinitrd.gzができますのでこれを#19の方法で使います。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
kiyopさん、Crushさん、jackalopeさん、ありがとうございます。継続ワッチはいたしております。Googleも検索しておりますが、ぬか喜びばかりでした。「SDカードで起動!!!」で色めきたちましたが、USB接続のカードリーダー経由でした。簡単ではないはず・・・と思いながらも、つい真剣に読んでしまいます(近況報告・・・でもないか)。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
モジュール名を調べるにはUbuntuを起動してlsmodとかlshwで分かると思います。
注意する所はSDHCとWindowsのパーティションのカーネルのバージョンを合わせるのと、新しく作るinitrdもカーネルのバージョンに合わせる。
9.10のLiveCDで起動して#37の4を実行すればバージョン2.6.31-14-generic用のinitrdができるはず。
USB接続のカードリーダを使ってSDHCからUbuntuが起動できるようなのでこのシステム上で実行してもいいですが、SDHCに複数のカーネルがある場合はオプションを指定しないと最新のバージョン用のinitrdができます。
現状はBIOSで認識されていないデバイスからはブートに関わるファイルなどが読めないので、認識されているデバイス上にブートに関わるファイルなどを置いてこのデバイスを経由してブートしようとしているがroot file system(SDHC)を/にマウントできない状態で、原因はSDHCカードからコピーしたinitrd.img-2.6.31-14-genericにSDHCを使うためのモジュールが無い為で、必要なモジュールを組み込んだinitrdを作ればうまくブートすると思うのですが。。。
オフライン
やっと試す時間がとれました。報告が遅くなってしまいスミマセン。結果は残念ながら、やはり(initramfs)に落ちてしまいます。#40にしたがい実施しました。"test.img"も、"initrd.img"にリネームしても結果に変化はありませんでした。
LiveUSBで起動して行ったので、kernelは2.6.31-14-genericが前提と思い、menu.lstの記述も、それに合わせてあります。c:\bootにコピーしたファイルも同様です。なお、
$ sudo mkinitramfs -o test.img
で作成されたファイルが、WindowsXPで確認すると
test.img 8187KB
initrd.img-2.6.31-14-genelic 7468KB
と、枝葉でしょうがサイズが若干異なります。なお、(initramfs)に落ちた後、ls /dev/m*の実行では、
/dev/mem
/dev/mcelog
/dev/mapper
だけが表示され、mmcblk0p1は認識されておりませんでした。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
とりあえずmenu.lstだけを貼ります。
default 0
timeout 10
title ubuntu on /dev/mmcblk0p1-test.img
find --set-root /boot/vmlinuz-2.6.31-14-generic
kernel /boot/vmlinuz-2.6.31-14-generic root=/dev/mmcblk0p1 ro
initrd /boot/test.img
これはtest.img版です。なお、
また、作成されたtest.imgがホームフォルダにある状況で、
~$ mkdir init2
~$ cd init2
~/init2$ gzip -dc ../test.img |cpio -i
~/init2$ find . -iname mmc_block.koとすると最後のコマンドで何が表示されますか?
は、LiveUSB上で実行するという意でしょうか。
オフライン
> 何が表示されますか
は、以下のようになりました。これは別のUbuntuでホームフォルダにtest.imgをコピーして実施しました。コピー、mkdirの後、
***@***-ubuntu:~/tmp/init2$ gzip -dc ../test.img |cpio -i
を実行し、以下のようになっております。
***@***-ubuntu:~/tmp/init2$ ls -al
合計 44
drwxr-xr-x 9 *** *** 4096 2010-04-04 15:12 .
drwxr-xr-x 4 *** *** 4096 2010-04-04 15:08 ..
drwxr-xr-x 2 *** *** 4096 2010-04-04 15:11 bin
drwxr-xr-x 3 *** *** 4096 2010-04-04 15:11 conf
drwxr-xr-x 6 *** *** 4096 2010-04-04 15:11 etc
-rwxr-xr-x 1 *** *** 4877 2010-04-04 15:11 init
drwxr-xr-x 8 *** *** 4096 2010-04-04 15:11 lib
drwxr-xr-x 2 *** *** 4096 2010-04-04 15:11 sbin
drwxr-xr-x 11 *** *** 4096 2010-04-04 15:11 scripts
drwxr-xr-x 3 *** *** 4096 2010-04-04 15:11 usr
***@***-ubuntu:~/tmp/init2$ find . -iname mmc_block.ko
(何も発見できず、↓すぐにプロンプト)
***@***-ubuntu:~/tmp/init2$
やはり、見つけれない状態です。最初の・・・
kiyopさんの記述 による投稿:
その後の作業ですが、
$ sudo gedit /etc/initramfs-tools/modules
で開いたテキストエディタで末尾に改行してから
SDHCを認識するために利用されているファイルに関する名前を追記。
よく分からなければ(小生も分かっていませんが)
mmc_block
を追記すれば良いかも。
保存してテキストエディタを終了してください。
が不調だったのかもしれません。これを調べてみます。
オフライン
気になっていましたmodulesへの追加ですが、理由は
$ sudo gedit /etc/initramfs-tools/modules
の実行時にLiveUSBからでしたので、
$ sudo gedit /media/(***UUID***)/etc/initramfs-tools/modules
としたため、不安があったことです。確認しましたら、
# List of modules that you want to include in your initramfs.
#
# Syntax: module_name [args ...]
#
# You must run update-initramfs(8) to effect this change.
#
# Examples:
#
# raid1
# sd_mod
mmc_block
上記のように追加されておりました。
オフライン
sudo gedit /media/(***UUID***)/etc/initramfs-tools/modules
/mediaにマウントされた/etc/initramfs-tools/modulesを変更しても目的のinitrdはできません。
起動しているシステムの/etc/initramfs-tools/modulesを変更して下さい。
オフライン
起動しているシステムの/etc/initramfs-tools/modulesを変更して下さい。
というのが、よくわかっていません。この作業のときに起動していたシステムはLiveUSBです。私には、ここが理解できていないようです。うーんです。
オフライン
少し落着いて再挑戦しました。前回とほとんど同じことを繰り返したのですが、
9.10のLiveCDで起動します。(本当は、HDDにインストールしたUbuntuの方が良いかもしれません。ただし、SDHCカードにインストールされたUbuntuのカーネルと同じバージョンである必要があると思います。)
との記述があったので、今回はSDHCカードにインストールしたUbuntuからUSB経由で起動したところが異なります。以下の手順です。
1. kernelは、2.6.31-20-genericで起動。
2. $cat /etc/initramfs-tools/modulesでmmc_blockの追加記述を確認。
3. $sudo mkinitramfs -o test20.imgを実行し、カレントディレクトリにtest20.imgが作成されたことを確認。
4. mkdirの実行後、移動して$ gzip -dc ../test20.img |cpio -iを行い、$ find . -iname mmc_block.koを実行すると、./lib/modules/2.6.31-20-generic/kernel/drivers/mmc/card/mmc_block.koが表示された(大変化と進歩)。
5. test20.imgと、念のためにSDHCカード内のvmlinuz-2.6.31-20-genericをc:\bootにコピー。
6. menu.listを以下に書換え。
default 0
timeout 10
title ubuntu on /dev/mmcblk0p1-test20.img
find --set-root /boot/vmlinuz-2.6.31-20-generic
kernel /boot/vmlinuz-2.6.31-20-generic root=/dev/mmcblk0p1 ro
initrd /boot/test20.img
以上の作業を実施後、再起動。結果は「残念なり」でした。やはり、(initramfs)に落ちてしまい、ls /devでmmcblk0p1は存在せずでした。きょうは、ここまでとします。ありがとうございました。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン