たぶんyoさんしか分からない質問だと思いますが(すいません。)
arch linux on apu1(2)を参考に何度か試みている状態です。
二つ質問があります。
1.append行を修正
APPEND console=ttyS0,115200n8 root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx rw clocksource=hpet これは/boot/syslinux/syslinux.cfg の二行あるAPPEND root=/dev/sda3 rw の部分の書き換えで良いですか?良い場合ですが現状でこの部分を書き換えるとブート時に/dev/sdaが見つからないとエラーになってしまいますが?何がおかしいのでしょうか?
2.ブートローダを変える場合はここで変えます。
extlinuxの場合 この部分ですが「あとはsyslinuxと同じです」この記述の意味が分からず実行していません。無理に置き換えなくても良いですか?
以上二点について教えていただきたくお願いします。
Loading ../vmlinuz-linux... ok
Loading ../initramfs-linux.img...ok
Probing EDD (edd=off to disable)... ok
[ 0.074802] ..MP-BIOS bug: 8254 timer not connected to IO-APIC
:: running early hook [udev]
starting version 218
:: running hook [udev]
:: Triggering uevents...
Waiting 10 seconds for device /dev/disk/by-uuid/0d630131-e330-4b5b-bf6b-2753487d0cff ...
error: /dev/sda: No medium found
error: /dev/sda: No medium found
ERROR: device 'UUID=0d630131-e330-4b5b-bf6b-2753487d0cff' not found. Skipping fsck.
ERROR: Unable to find root device 'UUID=0d630131-e330-4b5b-bf6b-2753487d0cff'.
You are being dropped to a recovery shell
komaさん
> 1.append行を修正
> 二行あるAPPEND root=/dev/sda3 rw の部分の書き換えで良いですか?
先頭のserial 0 115200の追加とAPPEND行の修正でいいです。
よく分からないのは「二行ある」という部分で、一行だけの修正です。マルチブートしていない限り、二行にはならないと思いますが...。
> 2.ブートローダを変える場合はここで変えます。
> extlinuxの場合 この部分ですが「あとはsyslinuxと同じです」この記述の意味が分からず実行していません。無理に置き換えなくても良いですか?
「あとはsyslinuxと同じです」はその前の行の
nano /boot/extlinux/extlinux.conf
の修正内容は「syslinuxと同じです」という意味です。
rootに設定した /dev/sda3 と uuid/0d630131-e330-4b5b-bf6b-2753487d0cff 見つからないためブートがうまくいっていないように見えます。ブートデバイスがubootから見てどういうデバイス名になっているかとブートデバイスのuuidを調べれば解決すると思います。
もしかして全然違うファイルを弄っていたようです/boot/extlinux/extlinux.conf のひな形は?どこにあるんでしょうか?申し訳ないです。教えてください。
調べるとこんな感じです/dev/sda1は/bootです。
# blkid
/dev/sda1: UUID="f391e1d7-b4ec-4fb0-8fba-387ecb57b2ee" TYPE="ext4" PARTUUID="000328aa-01"
/dev/sda2: UUID="c297b1be-01cb-467b-a655-eb303ee3ec3a" TYPE="swap" PARTUUID="000328aa-02"
/dev/sda3: UUID="0d630131-e330-4b5b-bf6b-2753487d0cff" TYPE="ext4" PARTUUID="000328aa-03"
swapがあることを見ると、マルチブートしているわけではなく、/dev/sda1がブートパーティション、/dev/sda3がルートパーティションなのですかね。であれば、/dev/sda1にあるコンフィグを書き換えればいいです。
ありがとうございます。色々試しましたがやはり
error: /dev/sda: No medium found です。
syslinuxのままでextlinuxのブートローダーに置き換えていません。
パーテーションは
sda1 /boot
sda2 swap
ada3 /
にしています。
# cat /boot/syslinux/syslinux.cfg
# Config file for Syslinux -
# /boot/syslinux/syslinux.cfg
#
# Comboot modules:
# * menu.c32 - provides a text menu
# * vesamenu.c32 - provides a graphical menu
# * chain.c32 - chainload MBRs, partition boot sectors, Windows bootloaders
# * hdt.c32 - hardware detection tool
# * reboot.c32 - reboots the system
#
# To Use: Copy the respective files from /usr/lib/syslinux to /boot/syslinux.
# If /usr and /boot are on the same file system, symlink the files instead
# of copying them.
#
# If you do not use a menu, a 'boot:' prompt will be shown and the system
# will boot automatically after 5 seconds.
#
# Please review the wiki: https://wiki.archlinux.org/index.php/Syslinux" target="_blank">https://wiki.archlinux.org/index.php/Syslinux
# The wiki provides further configuration examples
serial 0 115200
DEFAULT arch
PROMPT 0 # Set to 1 if you always want to display the boot: prompt
TIMEOUT 50
# You can create syslinux keymaps with the keytab-lilo tool
#KBDMAP de.ktl
# Menu Configuration
# Either menu.c32 or vesamenu32.c32 must be copied to /boot/syslinux
UI menu.c32
#UI vesamenu.c32
# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu" target="_blank">http://syslinux.zytor.com/wiki/index.php/Doc/menu
MENU TITLE Arch Linux
#MENU BACKGROUND splash.png
MENU COLOR border 30;44 #40ffffff #a0000000 std
MENU COLOR title 1;36;44 #9033ccff #a0000000 std
MENU COLOR sel 7;37;40 #e0ffffff #20ffffff all
MENU COLOR unsel 37;44 #50ffffff #a0000000 std
MENU COLOR help 37;40 #c0ffffff #a0000000 std
MENU COLOR timeout_msg 37;40 #80ffffff #00000000 std
MENU COLOR timeout 1;37;40 #c0ffffff #00000000 std
MENU COLOR msg07 37;40 #90ffffff #a0000000 std
MENU COLOR tabmsg 31;40 #30ffffff #00000000 std
# boot sections follow
#
# TIP: If you want a 1024x768 framebuffer, add "vga=773" to your kernel line.
#
#-*
LABEL arch
MENU LABEL Arch Linux
LINUX ../vmlinuz-linux
#APPEND root=/dev/sda3 rw
APPEND console=ttyS0,115200n8 root=UUID=0d630131-e330-4b5b-bf6b-2753487d0cff rw clocksource=hpet
INITRD ../initramfs-linux.img
LABEL archfallback
MENU LABEL Arch Linux Fallback
LINUX ../vmlinuz-linux
#APPEND root=/dev/sda3 rw
APPEND console=ttyS0,115200n8 root=UUID=0d630131-e330-4b5b-bf6b-2753487d0cff rw clocksource=hpet
INITRD ../initramfs-linux-fallback.img
#LABEL windows
# MENU LABEL Windows
# COM32 chain.c32
# APPEND hd0 1
LABEL hdt
MENU LABEL HDT (Hardware Detection Tool)
COM32 hdt.c32
LABEL reboot
MENU LABEL Reboot
COM32 reboot.c32
LABEL poweroff
MENU LABEL Poweroff
COM32 poweroff.c32
> syslinuxのままでextlinuxのブートローダーに置き換えていません。
ブートローダ(MBR)がうまく書き込まれていないということかもしれません。
やり方は僕のサイトに書き込んだと思いますので、試してもらえますか。
これで良いですか?
# df
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 29G 1.3G 26G 5% /
dev 1008M 0 1008M 0% /dev
run 1010M 356K 1009M 1% /run
tmpfs 1010M 0 1010M 0% /dev/shm
tmpfs 1010M 0 1010M 0% /sys/fs/cgroup
tmpfs 1010M 0 1010M 0% /tmp
/dev/sda1 190M 28M 149M 16% /boot
tmpfs 202M 0 202M 0% /run/user/0
# syslinux-install_update -i -a -m
Syslinux BIOS install successful
Boot Flag Set - /dev/sda1
Installed MBR (/usr/lib/syslinux/bios/mbr.bin) to /dev/sda
yoさんのサイトを読むとextlinuxのブートローダにする必要はないんですよね?それとも必須ですか?置き換えるといつも失敗で起動できなくなります。
それと現在の状態だとPentium4のPCだと普通に起動できて音も出せます。
mkdir -p /boot/extlinux
extlinux --install /boot/extlinux
dd bs=440 count=1 conv=notrunc if=/usr/lib/syslinux/bios/mbr.bin of=/dev/sdxn
nano /boot/extlinux/extlinux.conf
あとはsyslinuxと同じです
--------------------------------------------------------
この作業をしても/boot/extlinuxの下にはextlinux.confが出来ないのでお手上げになります。それでしかたなくsyslinux.cfgをextlinux.confにコピーして内容を編集しても起動できません?「あとはsyslinuxと同じです」が理解できていません。
書き込みからは正しく操作されているように見えます。何故うまくいかないか不思議ですね。
僕の環境との違いはbootパーティションとrootパーティションが違うという点だけなのですが、パーティションを分割すると必要な魔法の呪文があるのですかね。
> それと現在の状態だとPentium4のPCだと普通に起動できて音も出せます。
このパーティション構成はどうなっていますか。
>このパーティション構成はどうなっていますか。
これは同じmSATAカードをアダプターを使って
Pentium4のPCへ繋ぐと起動できて音も出せます。
これがまた良い音なのでなんとかAPU1Cへ移植したいんです。
同じなので
sda1 /boot
sda2 swap
ada3 /
です。
> これがまた良い音なのでなんとかAPU1Cへ移植したいんです。
なんとしても解決させましょう。
> 同じなので
このパーティション構成は意図的でしょうか。
意図はないです(笑)他のHPを先に見てVboxにArchを入れてで遊んでいたのでその延長線でこのパーテーションになっています。今から1パーテーションでやってみようかと(笑)
ハードの差(P4だとうまくいって、APUだと駄目)ということは考えにくいので、両者の間でArchシステムの作り方に何らか違いがあるはずです。多分、その違いが問題を引き起こしているのではないでしょうか。
最初から読み直してみましたが、vmlinuzとinitramfsは正常終了しているのですね。従ってブートローダのインストールがおかしいという仮定は間違っていますね。単純にrootパーティションのマウントが出来ていないことのようです。
一個のパーテーションでもダメでした(泣)まったく同じエラーメッセージ...
何故、P4だとOKで、APUだとNGなのかがポイントですね。
> まったく同じエラーメッセージ
だとするとrootパーティションが読み込めないだけの問題なのですが。
mSATAカードのフォーマットからやり直して1パーテーションでインストールしてもsyslinux.cfgにはなぜかAPPEND root=/dev/sda3 rwの行がある?自動認識ではないのか?
ls -l /dev/disk/by-uuid
lrwxrwxrwx 1 root root 9 Dec 29 11:05 2014-12-26-18-44-00-00 -> ../../sr0
lrwxrwxrwx 1 root root 10 Dec 29 11:04 496baf46-dbd9-4892-9b38-7852c465bd3b -> ../../sda1
こうなっているんですがエラーメッセージを見ると探してしているのは
error: /dev/sda: No medium found
「/dev/sda」で「/dev/sda1」では無いんだと思うんです。この辺なんとかならないのかな?
komaさん
参考までに、僕の環境ですが
[root@arch ~]# ls -l /dev/disk/by-uuid
total 0
lrwxrwxrwx 1 root root 10 Dec 29 18:19 0aefbbb0-cd28-4342-9165-9f6d934ada5f -> ../../sda3
lrwxrwxrwx 1 root root 10 Dec 29 18:19 54029457-8887-48d2-95b0-bde7d629024a -> ../../sda2
lrwxrwxrwx 1 root root 10 Dec 29 18:19 8fcdc4a2-9f44-4294-a997-efde5e9189de -> ../../sda1
となります。
archはsda2にあり、/boot/syslinux/syslinux.cfgのsyslinux.cfgのLABEL部分は
LABEL arch 64Bit
MENU LABEL Arch Linux 64Bit
LINUX ../vmlinuz-linux
APPEND console=ttyS0,115200n8 root=UUID=54029457-8887-48d2-95b0-bde7d629024a rw clocksource=hpet
INITRD ../initramfs-linux.img
となっています。
sda1はVoyageMPD(+開発環境)、sda3はVoyageMPD(ext4鑑賞用)で使っています。
あと、sda1のブートローダはgrubで、sda2をチェーンロード(sda2にはpbrを書き込み)、sda3は普通にマルチブートしています。TinyCoreLinuxはsda2の独立したディレクトリに置き、普通にマルチブートしています。
これで全てのシステムは問題なくブート出来ます。
現状としてarch linuxのisoイメージをヘッドレスに対応させるスクリプトを使ってi686版のインストールDVDを作ってP4マシンでインストールしています。あと試すのは64版を他のPCでインストールしてみてそれをAPU1Cに付けて起動ぐらいしか思いつきません。/dev/disk/by-uuidは私も調べて見ましたがリンクも異常なく出来ていました。私にとってArchの方が音が良いので何とかしたいです。
yoさんお付き合いあろがとうございました!!
疲れました(笑)あっさり成功?!64bit版だとそのままブートして音が出ました?!お騒がせしました。悔しいが原因不明(笑)
ありゃ再起動したら音が出ない。mpd.confのデバイス番号もまちがえていないしアルサミキサーも全開だし?クライアントは正常に動作してるように見えるし...mpcのステイタスも正常だし?あれー?
DACの相性みたいで...Wadia151ならOKで x20 [xCORE USB Audio 2.0]を使ったDACだとだめ?なぜか認識は完璧なのに...
とりあえずの問題クリアおめでとうございます。
「32Bitだと駄目。64BitだとOK。」というのは不思議ですね。
僕もvoyageで同じようなエラーを経験した記憶はあって、その時はmbr(pbr)の設定がうまくいってないためでした。どうもapuのbiosはmbr(pbr)が全てのパーティションに正しく設定されていないと、ディスクデバイスの認識がおかしくなるという感じです。多分、Archの64Bit版はこのあたりうまく処理しているのかもしれませんね。
解決策は今回のようにいろいろやってみるしかありません。まあ、32より64の方が音はいいので、これ以上こだわることはないと思いますが。
xCORE は動くはずですから、これも何か魔法の呪文があるのでしょう(^^;;;。
何故か?xCOREの方alsaミキサーがミュートになって立ち上がるのが理由でした。つまらんところで躓きました。無線LANを何とか有効にできましたが最終目標はアドホック設定にしたいです。それと質問ですがArchlinuxをインストールしたカードにVoyage-mpdもインストールしたいのですが?GParted で空きを作ってそこに入れようと思います。それで手間を省きたい...Voyage-mpdのインストール済みのカードからclonezillaで/パーテーションだけ吸い上げてarchlinuxの隣に書き込んでarchlinuxのブートローダーを書き換えればいけますか?心配なのはVoyage-mpdのパーテーションは確か/bootが別になっていたと思うのでそれだとダメですか?
可能だと思いますが、マルチブートに関してのノウハウは必要です。簡単に出来るという世界ではないです。
Voyageのブートローダはディフォルトではgrubなので、mbr、pbrをそれぞれのパーティションに正しく設定し、arch側のコンフィグにチェーンブートを指定すればいいはずです。僕はこのパターンはやったことがないので、理屈はOKだと思いますが、うまくいくかどうかは分からないです。
失敗すると起動できないことになりますが、その時の対処法をご存じなら、挑戦してみて下さい。
この掲示板で見た記憶があるのですがVoyage-MPDのブートローダーをsyslinuxに入れ替える説明があった様な記憶があります。かなり探したけど見つかりません?思い違いかな?それをベースにすればVoyage-MPDの/パーテーションの隣にarchlinuxの/パーテーションをコピーしてsystemlinux.cfgを編集して指定すれば簡単に出来そうに思いますが素人考えですかね(笑)
私の場合はインストールに成功するとすぐにClonezillaでイメージ保存しておくのですぐに現状復帰できます。欠点はClonezillaはヘッドレスPCで起動しないのでmSATAを他のPCへ繋ぎ直す必要が出てくる事です。
> Voyage-MPDのブートローダーをsyslinuxに入れ替える説明があった様な記憶があります。
この記事ですね。
http://mimizukobo.sakura.ne.jp/articles/articles016.html#022" target="_blank">http://mimizukobo.sakura.ne.jp/articles/articles016.html#022
ただsyslinuxにしても、パーティションが違うから、チェーンブートすることになり、mbr,pbrの設定は必要ですよ。