(元のスーパーユーザーに公開)ここ、回答が不足してここに投稿しました。 )
sda3にAndroidをインストールしましたが、次のようにGrubからロードすると正常に起動します。
set root='(hd0,3)'
search --no-floppy --fs-uuid --set=root 977083a6-5762-4064-b860-39429b9e0cf8
linux /kernel root=UUID=977083a6-5762-4064-b860-39429b9e0cf8
initrd /initrd.img
次のコマンドを使用してKVMにロードしてみました。
#Mount the Android partition as read-only so KVM can read its kernel and initrd
sudo mkdir /media/android
sudo mount -o ro /dev/sda3 /media/android
#Command to start the vm
sudo kvm -kernel /media/android/kernel -initrd /media/android/initrd.img /dev/sda3
どちらの場合も、コマンドライン環境が表示され、多くのオプションをすばやく設定しますが、Grubから起動すると正しいAndroid OSが表示されますが、KVMを使用して仮想マシンで起動しようとするとターミナルインターフェイスにロードされます。正しく機能するには、KVMコマンドにオプションを追加する必要があります(おそらく-appendパラメータを使用)
(この記事をSuperUserに投稿するのか、UnixとLinuxに投稿するのかわかりません。)
Ubuntu 14.10とIntel i5-4690Kを使用してください。
修正する:
そのオプションを追加してみ-append root=/dev/sda
ましたが、役に立ちませんでした。次の行を含む一部の初期化プロセスは引き続き表示されます。
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sd 0:0:0:0: Attached scsi generic sy0 type 0
sda: unknown partition table
sd 0:0:0:0: [sda] Attached SCSI disk
Detecting Android-x86... found at /dev/sda
cliで "mkdir"のようなものを使用しようとするとmkdir failed, Read-only file system
。
アップデート2:
Androidがインストールされている物理ハードドライブ全体(Ubuntuパーティションがあるのと同じハードドライブ)のRAWディスクイメージを使用して、別のハードドライブにインストールされているWindowsのVirtualBoxで実行できました。 WindowsとUbuntuでAndroidパーティションのRAWディスクイメージを作成しようとすると、起動できないVMが作成されます(アクセスできないパーティションを含まないカスタムGRUB 2 ISOを使用している場合も同様)。 Ubuntuで実行すると、fdisk -l
「パーティション3(Androidがインストールされている場所)が論理セクタの境界と一致しません」(または同様のもの)という警告が表示されます。これが根本的な原因になるのでしょうか?
Android パーティションにはデフォルトでインストールされている以外にデータやアプリがないので、パーティションを削除して再インストールして、ここにもう一度報告するようにします。
答え1
私が見るにはrootfsのマウントに失敗したようで、見えるターミナルインタフェースはinitプログラムがあきらめてシェルを実行するだけのようです。root=
grub設定で行ったように、カーネルパラメータを追加する必要があるかもしれません(デバイスが異なるように見えるかもしれません)。おそらく-append root=/dev/sda
、いいえ sda3
)。
また、受信したcliから手動でインストールを試みることもできます。デバイスが表示されない、または/dev/
インストールできない場合は、[ホスト] Linuxがqemuがrawパーティションにアクセスすることを許可していない可能性があります。すでにインストールされているか、qemuがrootとして実行されていません。