
Ubuntu日本語フォーラム

ログインしていません。
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
kiyopさんへ
kiyopさん による投稿:
小生の想定していた問題とは全く違う気がします。お役に立てそうにありません。
また、小生の勘違いでした。小生の勘違いのせいでこれほどまでにトピックを長引かせてしまい、恐縮です。
いえ、こちらこそkiyopさんに教えて頂いた『Kexec-tools』だけが原因だろうという、勝手な思い込みからトピックを立てたのが悪かったと思います。
まだ完全に良好では無いにせよ、少しづつ改善されている状態ではありますし、kiyopさんには、そこに至るまで様々な事を教えて頂きました。
重ねて、御礼申し上げます。
次回、トピックを立てる様な事がありましたら、今回の様に勘違いを生まずに済む様に文章を書きたいと思います。
また、その時はお世話になるかも知れませんが、よろしく御願い致します。
ただ、kiyopさんが期待している様な事(menu.lstやKexec-tools等をこんな風に弄りましたと言った解答)では無い気がしています。
hir0さんの「モデュールをロードするタイミングが問題」に糸口がある様に思え、機体に適合する起動オプションの組み合わせ等が怪しい気もします。
(あくまで、これも素人判断ですが…。)
もう少し、きちんとした結果が出せましたら(完全に一度で起動できる様になったら)、必ずこちらで御報告させて頂きます。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
kiyopさんへ
中間報告を兼ねて、質問させて下さい。
hir0さんからの
『PCとUbuntuのバージョンの相性は確実に存在します。』
『LiveCDで現れた挙動はインストール後に引き継がれます』
『相性の問題を解決するには「起動オプション」を使用するのです』
の御指摘について調べた結果、USB接続の外付HDDを接続したままでの、LiveCDからの起動に成功しました。
方法は
F6を押下、Escでキャンセル(?)後、『quiet splash』を削除し、下記の起動オプションを記載してEnter押下で起動します。
(この様な事は、解ってらっしゃるとは思いますが、一応、私が実行した事を全て記したいと思います。)
noreplace-paravirt nosmp noapic nolapic clocksource=pit
もちろん、全バージョン確認済みです。
ですが、私の本懐は『USB接続の外付HDDにインストール済みのUbuntu9.10を一度で起動させる事』なので、上記の起動オプションを
WindowsのC:\内のKexec-toolsで作成したものとUSB接続の外付HDDにインストール済みのUbuntu9.10に対して、永続的に反映させる方法はありますでしょうか?
もし、御存知でしたら御教え頂ければ幸いです。
オフライン
おめでとうございます。何度も、何度も再起動して辿り着かれたのでしょうね、脱帽です。
起動オプションはmenu.lst に書き込みますが、現在採用されているGRUB2のメニューファイル「grub.cfg」では方法が変わりました。
基本的に以前の様に直接編集する事を想定せずに作られています。
色々なファイルを編集して、総括されたのが「grub.cfg」になります。
今回の場合に当てはまる項目を編集するには端末から
$ sudo cp /etc/default/grub /etc/default/grub.backup
テキストファイル「grub」を「grub.backup」と名前を付けてコピー。
もしもの時の為の処置です。
$ sudo gedit /etc/default/grub
テキストエディタが開き設定ファイルが表示されます
# If you change this file, run 'update-grub' afterwards to update # /boot/grub/grub.cfg. GRUB_DEFAULT=0 #GRUB_HIDDEN_TIMEOUT=0 GRUB_HIDDEN_TIMEOUT_QUIET=true GRUB_TIMEOUT="30" GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" GRUB_CMDLINE_LINUX="" # Uncomment to disable graphical terminal (grub-pc only) #GRUB_TERMINAL=console # The resolution used on graphical terminal # note that you can use only modes which your graphic card supports via VBE # you can see them in real GRUB with the command `vbeinfo' #GRUB_GFXMODE=640x480 # Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux #GRUB_DISABLE_LINUX_UUID=true # Uncomment to disable generation of recovery mode menu entrys #GRUB_DISABLE_LINUX_RECOVERY="true"
9行目、10行目の
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
に注目して下さい。
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" → GRUB_CMDLINE_LINUX_DEFAULT=""
これで「quiet splash」が削除されます、起動時にグラフィカルな画像は表示されません。
GRUB_CMDLINE_LINUX=""
に起動オプションを書き込みます。
GRUB_CMDLINE_LINUX="noreplace-paravirt nosmp noapic nolapic clocksource=pit"
「 "" 」の書き忘れ等に注意して下さい。
注)起動オプションはSatsukiさんの#54のコピペです。
書き終わりましたら保存して終了してください。
あっ、そうだ。
確認の為に変更前のgrub.cfgを見てみましょう。
$ grep /boot/vmlinuz-$(uname -r) /boot/grub/grub.cfg
linux /boot/vmlinuz-2.6.31-20-generic root=UUID=b510507e-3b2e-4221-aade-7ad8bf893585 ro quiet splash
linux /boot/vmlinuz-2.6.31-20-generic root=UUID=b510507e-3b2e-4221-aade-7ad8bf893585 ro single
折り返されて表示されていますが「linux」で始まる一行です。
結果は2行表示されています。「ro quiet splash」と書かれているのが通常起動のエントリーです。
「ro single 」はリカバリーモードのエントリーです。
さて、現在の確認がとれましたら、先程書き換えた設定を反映させましょう。
$ sudo update-grub
実行が終わったらもう一度
$ grep /boot/vmlinuz-$(uname -r) /boot/grub/grub.cfg
で変更されたことを確認してみましょう。
これは
$ gedit /boot/grub/grub.cfg
でも確認できます。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
hir0さんへ
おめでとうございます。何度も、何度も再起動して辿り着かれたのでしょうね、脱帽です。
本当に有難う御座います。
手元のメモ用紙を見る限り、39回程の再起動とCD取替え作業をした様です。
しかし、ここまで出来たのもhir0さんとkiyopさんの御指導の賜物です。
特に#45のhir0さんの御言葉が私の耳に『もう諦めて動く10.04にすれば良いのに』と聞こえた気がしたので、
『イヤ!絶対に私はこの子(PC)に、きちんとしたドレスを着せるの!(最新のOSに乗せ変えてみせる!)』
と、私を奮起させてくれました。(初心者の癖に生意気言って、ごめんなさい。)
内蔵HDDには、もうすぐサポート期限の切れる『Windows2000Professional』がインストールされています。
今まで『お古』で頑張った『ご褒美に』と考えていた為、又、随分と以前に触れた『Knoppix』の感動が忘れられずにいたのでUbuntuにしてあげたかったのです。
(KnoppixはLiveCDを起動して『わぁ!CD一枚で動くOSがあるなんて、すごいっ!!』で感動して、シャットダウンの繰り返しでした。)
お二人の御蔭で、まだまだ現役で頑張れそうです。
本当に有難う御座いました。
さて、余談はこれ位にして、最後に、もうひとつ質問させて下さい。
一応、御指導頂きました書き換え作業は、滞りなく全て完了しましたが、
前述の本体側の内蔵HDDには、grub4dosのmenu.lstとKexec-toolsで作成したinitrd.imgとvmlinuz-2.6.31-20-genericがあります。
こちらには、何か手を施さなくても良いのでしょうか?
hir0さん による投稿:
起動オプションはmenu.lst に書き込みますが、…
が気になったので…。
オフライン
kiyopさんへ
ありがとうございます!!
kiyopさん、hir0さん、お二人のお陰です。
#57を記述の最中にお返事を下さった様で、#56を読まずに#57を書いてしまいました。
kiyopさん による投稿:
https://wiki.ubuntulinux.jp/UbuntuTips/ … execLoader
または
https://wiki.ubuntulinux.jp/UbuntuTips/ … KexecTools
にカーネルにオプションを渡す方法は書いてあります。
initrd.imgのinitを変更して、必ず上記のオプションをカーネルに渡すには、initを適当に変えれば良いだけです。その方法が必要でしたら、ご連絡ください。(initの変更内容をご覧になれば、分かるかもしれませんが。)
と言うことですので、御案内頂いたページを参考に、私なりに考えて(多分、間違っていると思いますが)
initの記述改編部分を探して記述してみましたので、御確認をお願い致します。
270行目 kexec -l /mnt/vmlinuz --append="root=UUID=$(blkid|grep "$device:"|sed -e "s/^.*UUID=\"//"|sed -e "s/\".*//") ro $a noreplace-paravirt nosmp noapic nolapic clocksource=pit" --initrd=/mnt/initrd.img 279行目 kexec -l /mnt/boot/$(ls /mnt/boot -1|grep vmlinuz|tail -n1) --append="root=UUID=$(blkid|grep "$device:"|sed -e "s/^.*UUID=\"//"|sed -e "s/\".*//") ro $a noreplace-paravirt nosmp noapic nolapic clocksource=pit" --initrd=/mnt/boot/initrd.img-$(ls /mnt/boot -1|grep vmlinuz|tail -n1|cut -c9-)
これで宜しいでしょうか?
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
kiyopさんへ
数々の御指導、又、御指摘有難う御座います。
上手に起動出来ました!………と言いたいです。
実は調子に乗り過ぎて、initrd.imgを二つ作ってテストしてみました。
一つは、270行目と279行目の改編後
kiyopさん(#59) による投稿:
noreplace-paravirt nosmp noapic nolapic clocksource=pit
が付いてしまうことを意識させるためには、上記の行の上の方にある、
echo "Please enter commandline parameter to pass to kernel except root=... and ro"
を
echo "Please enter commandline parameter to pass to kernel except root=... and ro"
echo " and noreplace-paravirt nosmp noapic nolapic clocksource=pit"
とでもすれば、起動時にメッセージが現れますが、別に無くても実際の動作は変わりません。
までの、記述改編を行った『test-1-initrd.img』
もう一つは、上記の記述後に
kiyopさん(#59) による投稿:
他のオプションで起動できるようにするには、
例えば、コード:
echo "Please enter commandline parameter to pass to kernel except root=... and ro" read a kexec -l /mnt/vmlinuz --append="root=UUID=$(blkid|grep "$device:"|sed -e "s/^.*UUID=\"//"|sed -e "s/\".*//") ro $a" --initrd=/mnt/initrd.imgの部分を
コード:
echo "Please enter commandline parameter to pass to kernel except root=... and ro" echo "Please type y If you want to boot with root=... ro noreplace-paravirt nosmp noapic nolapic clocksource=pit" read a if [ "$a" = "y" ]; then a="noreplace-paravirt nosmp noapic nolapic clocksource=pit"; fi kexec -l /mnt/vmlinuz --append="root=UUID=$(blkid|grep "$device:"|sed -e "s/^.*UUID=\"//"|sed -e "s/\".*//") ro $a" --initrd=/mnt/initrd.imgとしておけば、
Please enter commandline parameter to pass to kernel except root=... and ro
Please type y If you want to boot with root=... ro noreplace-paravirt nosmp noapic nolapic clocksource=pitと表示された時に
y
と入力すれば
カーネルに渡すオプションが
root=UUID=インストールされたパーティションのUUID ro noreplace-paravirt nosmp noapic nolapic clocksource=pit
になり、他を入力すれば、カーネルに渡すオプションが
root=UUID=インストールされたパーティションのUUID ro
に続けて入力した文字を含めたものになると思います。
を、さらに記述改編した『test-2-initrd.img』ですが、この『test-2-initrd.img』で起動すると、
Failed to execute /init BusyBox v1.13.3(ubuntu 1:1.13.3-1ubuntu7) built-in shell(ash) Enter 'help' for list of built-in commands #[1.648120] usb 1-4: new high speed USB device using ehci_hcd and address 2 [1.782719] usb 1-4: configuratin #1 chosen from 1 choice [1.892116] usb 4-1: new full speed USB device using uhci_hcd and address 2 [2.046107] usb 4-1: configuratin #1 chosen from 1 choice #
と表示されて、フリーズ(?)してしまいます。
そこで、『mount -t ext4 /dev/sdb1 /root』と記述してみましたが、
『mount: mounting /dev/sdb1 on /root failed』と表示されます。
何か間違った事をしたのでしょうか?
因みに、menu.lstの記述ですが、下記の様にしてあります。
title Ubuntu9.10-1 find --set-root /vmlinuz-2.6.31-20-generic kernel /vmlinuz-2.6.31-20-generic root=UUID=b3109f56-50fe-4d6b-b38f-e1660667c1e4 ro noreplace-paravirt nosmp noapic nolapic clocksource=pit rootdelay=90 initrd /test-1-initrd.img boot title Ubuntu9.10-2 find --set-root /vmlinuz-2.6.31-20-generic kernel /vmlinuz-2.6.31-20-generic root=UUID=b3109f56-50fe-4d6b-b38f-e1660667c1e4 ro noreplace-paravirt nosmp noapic nolapic clocksource=pit rootdelay=90 initrd /test-2-initrd.img boot
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
#57 のSatsukiさんへ。
特に#45のhir0さんの御言葉が私の耳に『もう諦めて動く10.04にすれば良いのに』と聞こえた気がしたので、
そう言う意味ですよ。
Ubuntuを起動させることが目的なら、可能性のある方を試す。
9.10を起動させることが目的ならどの限りではない。です。
他の投稿にも現れています。
インストールしたばかりのOSで設定ミスや基準外のパーーケージの導入」等による不具合。
「再インストール」。
不調を来したOSを元に戻すのが目的で、解決方法に辿り着けないのなら「再インストール」
設定を手探りで確認、変更を繰り返すなら、、、ね!ケースバイケース。
hir0さん による投稿:
起動オプションはmenu.lst に書き込みますが、…が気になったので…。
あー、ごめんなさい。
起動部分に改変を行っていたのでしたね。
つい忘れていました。
今回書いたのは、現在の主流でデフォルトで導入される「GRUB2」です。
grub4dosは以前の方式を仕様しているので個の限りではありません。
全体をよく読まずに書いたミスです、混乱させる様な書き込みでした。
話は変わりますがUSBブート未対応のそのPC、起動ディスクでも起動できないのでしょうか?
環境が無いので確認することが出来ませんが、BIOSからUSBを認識していないと無理っぽい意見も有りますが、みなさん起動ディスクで対応しています。
起動できるのあれば煩わしい起動ディスクをHDDに仕込めないか?となるのですが、、、と思いつつ成り行きを見ています。
(もう一歩の所まで来ている感じもしますので、頑張って下さい)
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
kiyopさんへ
ご多忙中の御返事有難う御座います。
#61の回答ですが、
『test-1-initrd.img』の起動は確認しています。
『test-2-initrd.img』を展開して、『init』の存在を確認しました。
私の記載方法が悪かった様です。ごめんなさい。
下記が、フリーズの際の画面表示の再現です。
Failed to execute /init BusyBox v1.13.3(ubuntu 1:1.13.3-1ubuntu7) built-in shell(ash) Enter 'help' for list of built-in commands #[1.648120] usb 1-4: new high speed USB device using ehci_hcd and address 2 [1.782719] usb 1-4: configuratin #1 chosen from 1 choice [1.892116] usb 4-1: new full speed USB device using uhci_hcd and address 2 [2.046107] usb 4-1: configuratin #1 chosen from 1 choice # mount -t ext4 /dev/sdb1 /root mount: mounting /dev/sdb1 on /root failed
それと、menu.lstの手直し、有難う御座いました。
早速、記述を改編しました。
何かの判断になるかと思い、test-1-initrd.imgとtest-2-initrd.imgの各initの改編箇所付近(270~279行目まで)を記載しておきます。
test-1-initrd.imgのinit記述改編部分
コード:
echo "Please enter commandline parameter to pass to kernel except root=... and ro" echo " and noreplace-paravirt nosmp noapic nolapic clocksource=pit" read a kexec -l /mnt/vmlinuz --append="root=UUID=$(blkid|grep "$device:"|sed -e "s/^.*UUID=\"//"|sed -e "s/\".*//") ro $a noreplace-paravirt nosmp noapic nolapic clocksource=pit" --initrd=/mnt/initrd.img kexec -e exit 0 elif [ -n $(ls /mnt/boot/ -1 2>/dev/null|grep vmlinuz) ] then if [ -e /mnt/boot/initrd.img-$(ls /mnt/boot -1|grep vmlinuz|tail -n1|cut -c9-) ] then echo "Please enter commandline parameter to pass to kernel except root=... and ro" read a kexec -l /mnt/boot/$(ls /mnt/boot -1|grep vmlinuz|tail -n1) --append="root=UUID=$(blkid|grep "$device:"|sed -e "s/^.*UUID=\"//"|sed -e "s/\".*//") ro $a noreplace-paravirt nosmp noapic nolapic clocksource=pit" --initrd=/mnt/boot/initrd.img-$(ls /mnt/boot -1|grep vmlinuz|tail -n1|cut -c9-) kexec -e exit 0test-2-initrd.imgの記述改編部分
コード:
echo "Please enter commandline parameter to pass to kernel except root=... and ro" echo "Please type y If you want to boot with root=... ro noreplace-paravirt nosmp noapic nolapic clocksource=pit" read a if [ "$a" = "y" ]; then a="noreplace-paravirt nosmp noapic nolapic clocksource=pit"; fi kexec -l /mnt/vmlinuz --append="root=UUID=$(blkid|grep "$device:"|sed -e "s/^.*UUID=\"//"|sed -e "s/\".*//") ro $a" --initrd=/mnt/initrd.img kexec -e exit 0 elif [ -n $(ls /mnt/boot/ -1 2>/dev/null|grep vmlinuz) ] then if [ -e /mnt/boot/initrd.img-$(ls /mnt/boot -1|grep vmlinuz|tail -n1|cut -c9-) ] then echo "Please enter commandline parameter to pass to kernel except root=... and ro" read a kexec -l /mnt/boot/$(ls /mnt/boot -1|grep vmlinuz|tail -n1) --append="root=UUID=$(blkid|grep "$device:"|sed -e "s/^.*UUID=\"//"|sed -e "s/\".*//") ro $a noreplace-paravirt nosmp noapic nolapic clocksource=pit" --initrd=/mnt/boot/initrd.img-$(ls /mnt/boot -1|grep vmlinuz|tail -n1|cut -c9-) kexec -e exit 0
以上です。
見難いかと思いますが、宜しく御願い致します。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
hiroさんへ
起動ディスクですか?
以前は、PLoP Boot Managerを使用していたのですが、CDドライブを頻繁に使用する事と、データ保存用に大容量のUSB接続外付HDDを接続しているので、他に方法はと探していた所にUbuntu Tipsの『USBメディアの起動をサポートしないBIOSを持つパソコンでUSB-HDDに通常の方法でインストールしたUbuntuを起動するには』が目に留まり、『これっ!』と調子に乗って、手を出してしまいました。
でも、色々と遠回りはしましたが、それ以上に沢山、勉強させて頂きました。
hir0さん による投稿:
(もう一歩の所まで来ている感じもしますので、頑張って下さい)
重ねて御礼申し上げます。
有難う御座いました。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
#67のkiyopさんへ
kiyopさん による投稿:
え?
test-1-initrd.imgを用いた場合なら、USB-HDD内にインストールしたUbuntuを問題なく起動できたということでしょうか?
Yes! 起動出来ました。
ですが、test-2-initrd.imgを使うとフリーズしてしまいます。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
kiyopさんへ
とりあえず、当面の目標はクリアです。
長いトピックにお付き合い頂き、本当に有難う御座います。
test-2-initrd.imgはオマケでしたが、このままでは、今一つ目覚めが悪いので、最後まで完遂したいと思います。
つきましては、test-2-initrd.imgのinitの全文を投稿したいと思います。
尚、#69でのkiyopさんから御指摘頂いた部分は記述改編済みの状態になります。
五度程、起動を試みましたが、#65の私が投稿したコードが表示されフリーズする状態でした。
#!/bin/sh
[ -d /dev ] || mkdir -m 0755 /dev
[ -d /root ] || mkdir -m 0700 /root
[ -d /sys ] || mkdir /sys
[ -d /proc ] || mkdir /proc
[ -d /tmp ] || mkdir /tmp
mkdir -p /var/lock
mount -t sysfs -o nodev,noexec,nosuid none /sys
mount -t proc -o nodev,noexec,nosuid none /proc
grep -q '\<quiet\>' /proc/cmdline || echo "Loading, please wait..."
# Note that this only becomes /dev on the real filesystem if udev's scripts
# are used; which they will be, but it's worth pointing out
mount -t tmpfs -o mode=0755 udev /dev
[ -e /dev/console ] || mknod -m 0600 /dev/console c 5 1
[ -e /dev/null ] || mknod /dev/null c 1 3
> /dev/.initramfs-tools
mkdir /dev/.initramfs
# Export the dpkg architecture
export DPKG_ARCH=
. /conf/arch.conf
# Set modprobe env
export MODPROBE_OPTIONS="-qb"
# Export relevant variables
export ROOT=
export ROOTDELAY=
export ROOTFLAGS=
export ROOTFSTYPE=
export IPOPTS=
export break=
export init=/sbin/init
export quiet=n
export readonly=y
export rootmnt=/root
export debug=
export panic=
export blacklist=
export resume_offset=
# Bring in the main config
. /conf/initramfs.conf
. /scripts/functions
# Parse command line options
for x in $(cat /proc/cmdline); do
case $x in
init=*)
init=${x#init=}
;;
root=*)
ROOT=${x#root=}
case $ROOT in
LABEL=*)
ROOT="${ROOT#LABEL=}"
# support / in LABEL= paths (escape to \x2f)
case "${ROOT}" in
*[/]*)
if [ -x "$(command -v sed)" ]; then
ROOT="$(echo ${ROOT} | sed 's,/,\\x2f,g')"
else
if [ "${ROOT}" != "${ROOT#/}" ]; then
ROOT="\x2f${ROOT#/}"
fi
if [ "${ROOT}" != "${ROOT%/}" ]; then
ROOT="${ROOT%/}\x2f"
fi
IFS='/'
newroot=
for s in $ROOT; do
if [ -z "${newroot}" ]; then
newroot="${s}"
else
newroot="${newroot}\\x2f${s}"
fi
done
unset IFS
ROOT="${newroot}"
fi
esac
ROOT="/dev/disk/by-label/${ROOT}"
;;
UUID=*)
ROOT="/dev/disk/by-uuid/${ROOT#UUID=}"
;;
/dev/nfs)
[ -z "${BOOT}" ] && BOOT=nfs
;;
esac
;;
rootflags=*)
ROOTFLAGS="-o ${x#rootflags=}"
;;
rootfstype=*)
ROOTFSTYPE="${x#rootfstype=}"
;;
rootdelay=*)
ROOTDELAY="${x#rootdelay=}"
case ${ROOTDELAY} in
*[![:digit:].]*)
ROOTDELAY=
;;
esac
;;
resumedelay=*)
RESUMEDELAY="${x#resumedelay=}"
;;
loop=*)
LOOP="${x#loop=}"
;;
loopflags=*)
LOOPFLAGS="-o ${x#loopflags=}"
;;
loopfstype=*)
LOOPFSTYPE="${x#loopfstype=}"
;;
cryptopts=*)
cryptopts="${x#cryptopts=}"
;;
nfsroot=*)
NFSROOT="${x#nfsroot=}"
;;
netboot=*)
NETBOOT="${x#netboot=}"
;;
ip=*)
IPOPTS="${x#ip=}"
;;
boot=*)
BOOT=${x#boot=}
;;
resume=*)
RESUME="${x#resume=}"
;;
resume_offset=*)
resume_offset="${x#resume_offset=}"
;;
noresume)
noresume=y
;;
panic=*)
panic="${x#panic=}"
case ${panic} in
*[![:digit:].]*)
panic=
;;
esac
;;
quiet)
quiet=y
;;
ro)
readonly=y
;;
rw)
readonly=n
;;
debug)
debug=y
quiet=n
exec >/dev/.initramfs/initramfs.debug 2>&1
set -x
;;
debug=*)
debug=y
quiet=n
set -x
;;
break=*)
break=${x#break=}
;;
break)
break=premount
;;
blacklist=*)
blacklist=${x#blacklist=}
;;
esac
done
if [ -z "${noresume}" ]; then
export resume=${RESUME}
else
export noresume
fi
depmod -a
# export BOOT variable value for compcache,
# so we know if we run from casper
export BOOT
# Don't do log messages here to avoid confusing usplash
run_scripts /scripts/init-top
log_begin_msg "Loading essential drivers..."
load_modules
log_end_msg
[ "$quiet" != "y" ] && log_begin_msg "Running /scripts/init-premount"
run_scripts /scripts/init-premount
[ "$quiet" != "y" ] && log_end_msg
[ -d /mnt ] || mkdir -m 0755 /mnt
echo ==========================
echo "Please wait until all the device you want to boot is recognized and then push ENTER key."
echo ==========================
read a
deviceslist=$(blkid|cut -d: -f1)
okdeviceslist=""
for a in $deviceslist
do
umount -l /mnt 2>/dev/null
mount -t auto $a /mnt 2>/dev/null || continue
if [ -e /mnt/vmlinuz -a -e /mnt/initrd.img ]
then
okdeviceslist="${okdeviceslist} $a"
elif [ -n $(ls /mnt/boot/ -1 2>/dev/null|grep vmlinuz) ]
then
if [ -e /mnt/boot/initrd.img-$(ls /mnt/boot -1|grep vmlinuz|tail -n1|cut -c9-) ]
then
okdeviceslist="${okdeviceslist} $a"
fi
fi
umount -l /mnt 2>/dev/null
done
i=0
echo ==========================
echo "The device file names and information of partitions will be recognized and are shown below."
echo
for a in ${okdeviceslist}
do
echo $i":"$(blkid|grep "${a}:")
i=$(expr $i + 1)
done
echo
echo "Please type the number of the device file name of the root partition of Ubuntu you want to boot."
while [ a = a ]
do
read a
if [ $a -ge 0 ]
then
if [ $? = 1 ]
then
echo "Please type number"
continue
elif [ $a -lt $(echo ${okdeviceslist}|tr ' ' '\n'|wc -l) ]
then
break
else
echo "Please type number smaller than $(echo ${okdeviceslist}|tr ' ' '\n'|wc -l)"
continue
fi
echo "Please type number larger than 0 or 0"
fi
done
device=$(echo ${okdeviceslist}|cut -d" " -f $(expr $a + 1))
echo "You selected $a:$device"
mount -t auto $device /mnt
if [ -e /mnt/vmlinuz -a -e /mnt/initrd.img ]
then
echo "Please enter commandline parameter to pass to kernel except root=... and ro"
echo "Please type y If you want to boot with root=... ro noreplace-paravirt nosmp noapic nolapic clocksource=pit"
read a
if [ "$a" = "y" ]
then
a="noreplace-paravirt nosmp noapic nolapic clocksource=pit"
fi
kexec -l /mnt/vmlinuz --append="root=UUID=$(blkid|grep "$device"|sed -e "s/^.*UUID=\"//"|sed -e "s/\".*//") ro $a" --initrd=/mnt/initrd.img
kexec -e
exit 0
elif [ -n $(ls /mnt/boot/ -1 2>/dev/null|grep vmlinuz) ]
then
if [ -e /mnt/boot/initrd.img-$(ls /mnt/boot -1|grep vmlinuz|tail -n1|cut -c9-) ]
then
echo "Please enter commandline parameter to pass to kernel except root=... and ro"
echo "Please type y If you want to boot with root=... ro noreplace-paravirt nosmp noapic nolapic clocksource=pit"
read a
if [ "$a" = "y" ]
then
a="noreplace-paravirt nosmp noapic nolapic clocksource=pit"
fi
kexec -l /mnt/boot/$(ls /mnt/boot -1|grep vmlinuz|tail -n1) --append="root=UUID=$(blkid|grep "$device"|sed -e "s/^.*UUID=\"//"|sed -e "s/\".*//") ro $a" --initrd=/mnt/boot/initrd.img-$(ls /mnt/boot -1|grep vmlinuz|tail -n1|cut -c9-)
kexec -e
exit 0
fi
fi
umount -l /mnt
echo "DAMESSU! Please push ENTER key"
read a
shutdown -r now
exit 0不具合の解析をよろしく御願い致します。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
kiyopさんへ
#73の回答ですが、
最初にGrub4dosのメニューが現れます。そこで、test-2-initrd.imgを利用するためのメニューを選択してENTERを押下後、何も操作する事無く『BusyBox』に落ちています。
#74
『configuratin』は、『configuration』の間違いです。ごめんなさい。
それと、最悪なお知らせが…。
test-1-initrd.imgも同様の現象が起きています。
外付HDDにインストールしたUbuntuが起動出来ない状態です。
PLoPも試してみましたが、ダメでした。
LiveCDからの起動も試みてみました。F6で起動オプションを表示後
『boot=/dev/sdb1』に記述を変更し、
『quiet splash』を削除、『noreplace-paravirt nosmp noapic nolapic clocksource=pit』を追記して、
起動してみましたがダメでした。
オフライン