ライブディスクからシステムを実行しているときにisoから起動する方法はありますか?


8

これは少し複雑な質問ですが、何が期待されるのかを説明しましょう。

menuentryISOファイルの場所でGRUB を追加し、GRUBエントリを使用してISOから起動できることを知っています。(つまり、このメソッド)

しかし、次のように仮定します。

  • 私はGNU / LinuxのISOファイル(たとえばTrisquel 7.0)をコンピュータ(ハードディスク)に保存しました。 /dev/sda3/
  • インストールしたい /dev/sda4
  • Ubuntu 14.04インストール(起動可能)ディスクを持っています。そこからライブシステムをインストールまたは試すことができます。
  • 現在インストールされているオペレーティングシステムがないか、インストールされているシステムがクラッシュ/破損していると考えます(現在のブートローダーとは関係ありません)。

問題は次のとおりです。インストールディスクを使用して、ライブ環境を実行して(たとえば、Ubuntu 14.04をインストールせずに試してみます)、ISOから(Trisquel 7.0から)ブートして、/dev/sda3そのシステムにインストールできます/dev/sda4か?どうやって?

注:isoからインストールするシステムのライブディスク/ USBを作成/書き込みする方がよいことに同意しますが、現在ディスク/ USBが利用できない場合、問題のある操作を実行できますか?

私は1つの可能なテクニックがあると思います:(Ubuntuの)ライブ環境からGRUBをHDDにインストールして、ついに起動したいISO(Trisquel)のパスをポイントします!方法?


/ mntに/ dev / sda3をマウントし、cd /mnt/boot、grub/menu.lstでインストール行を見つけることをお勧めしますkexec /vmlunix... install。あなたはいくつかの試みが必要かもしれません...
Archemar

回答:


2

VMでテスト済み。この方法を使用して、(ハードディスクにある)Trisquel Live ISOから起動できました。

必要な手順は次のようになります。

  1. Ubuntu Liveディスクで起動したら、インストールプロセスを開始します。/dev/sda4動作していて起動可能なGRUBを取得するには、少なくともシステムの最小インストールを実行する必要があります。ただし、完全インストールを実行する方が簡単です(かなり迅速です)。

    1.a. インストールを制限して、の内容のみを変更するようにしてください/dev/sda4。そのためには、ハードディスクの設定について尋ねられたら、「何か他のもの」を選択する必要があります。

  2. インストールしたシステムを起動して、新しいGRUBが機能していることをテストします。

    2.a. 注: Ubuntuの下でGRUBメニューを表示するにはShift、システムの起動時に押し続けます。この質問には、起動ごとにGRUBメニューの表示を有効にする方法が含まれています。

  3. 次に、このメソッドで説明したように、必要なメニューエントリを追加する必要があります。適応の提供:

    3.a. Trisquel ISOがのルートにあると思い/dev/sda3/ます。

    ISOイメージのメニューエントリを/etc/grub.d/40_customファイルに追加する必要があります。次の方法でファイルを編集します。

    sudo apt-get install gksu
    gksudo gedit /etc/grub.d/40_custom
    

    そして、そのファイルのテキストを次のテキストで置き換えます。

    #!/bin/sh
    exec tail -n +3 $0
    # This file provides an easy way to add custom menu entries.  Simply type the
    # menu entries you want to add after this comment.  Be careful not to change
    # the 'exec tail' line above.
    
    menuentry "Trisquel ISO" {
            set isofile="/trisquel_7.0_amd64.iso"
            loopback loop (hd0,3)$isofile
            linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile noprompt noeject
            initrd (loop)/casper/initrd
    }
    

    どこにある:

    • Trisquel ISO = Grubメニューに表示したい名前。
    • /trisquel_7.0_amd64.iso =ターゲットパーティション上のISOイメージへのパス。
    • (hd0,3)= ISOイメージを含むパーティション(GRUBの場合/dev/sda3はlinux と同じです: "sda1" == "(hd0,1)"; "sdb2" == "(hd1,2)"; ...)
    • 注:これtail -n +3は単に、「どの行のgrubが設定をそのまま読み取り始めるか」を意味します。この例の3行目は、最初のコメント行であり、問​​題ありません。

    3.b. このファイルを保存して閉じ、次のコマンドを実行します(変更を適用するため)。

    sudo update-grub
    
  4. これで、ハードディスクのISOから起動できるはずです。
    注:/dev/sda3インストールプロセスで使用する必要がある場合は、Live CD環境から次のコマンドを使用します。

    sudo umount -l /isodevice
    

参考資料:Ubuntuメニューエントリのリファレンス

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.