このチュートリアルでは、GRUB2ブートローダーを使用してハードドライブから直接Debian ISOファイルを起動する方法を示します。これにより、ライブCDまたはライブUSBを作成する必要がなくなります。最近のLinuxライブUSBの作成は非常に簡単です。グラフィカルツールを使用するか、コマンドラインから作成できます。しかし、USBフラッシュドライブがない場合、またはUSBフラッシュドライブにDebianをインストールしたい場合はどうなりますか?
救助へのGRUB
GRUB2ブートローダーは、LinuxISOイメージファイルをハードドライブから直接起動できます。
- GRUB2は、ext4、HFS +、NTFSなど、多くのファイルシステムをサポートしています。つまり、これらのファイルシステムのいずれかにISOファイルを配置できます。
- GRUB 2は、LVMおよびRAIDデバイスから直接ファイルを読み取ることができます。
- GRUB2はネットワークもサポートしています。 TFTP を使用して、ネットワークからOSイメージをロードできます。 プロトコル。
このチュートリアルでは、ローカルハードディスクからのISOファイルの起動についてのみ説明します。この機能を使用するには、コンピュータにすでにインストールされているブートローダーとしてGRUB2を備えたLinuxディストリビューションが必要です。
GRUB2を使用してハードドライブから直接DebianISOファイルを起動する方法
まず、コンピューターを起動し、既存のLinuxディストリビューションを起動します。 DebianISOをダウンロードします。ネットインストールISOまたはライブCDISOのいずれかを使用できます。 hd-media / initrd.gzもダウンロードする必要があります
およびhd-media / vmlinuz
このページから。
- initrd.gz は最初のramdiskです。
- vmlinuz Linuxカーネルです。
マウスを使用してクリックできるグラフィカルインストーラーが必要な場合は、 hd-media / gtk / initrd.gzをダウンロードしてください。
およびhd-media / gtk / vmlinuz
代わりは。これらの3つのファイルを同じディレクトリに配置します。次に、ターミナルウィンドウを開き、 /etc/grub.d/40_custom
を編集します。 nanoなどのテキストエディタでファイルを作成します。
sudo nano /etc/grub.d/40_custom
このファイルでは、GRUBブートメニューにカスタムエントリを追加できます。この場合、DebianISOファイルを起動するためのエントリを追加します。以下は例です。
menuentry "Debian.4 net-install.iso" { insmod ext2 set root='(hd0,2)' linux /linuxbabe/vmlinuz initrd /linuxbabe/initrd.gz }
説明:
- menuentry :このエントリは、GRUB2ブートメニューに表示されます。好きな名前を付けることができます。
- insmod コマンドはモジュールを挿入します。これらの3つのファイルはホームパーティションに保存されているため、
ext2
モジュールが必要です。これらのファイルがNTFSパーティション上にある場合は、insmod ntfs
が必要です。 代わりに。 - セット コマンドは、最初のハードドライブの2番目のパーティションをルートディレクトリとして設定します。 (私のホームパーティションは、最初のハードドライブの2番目のパーティションです。)
-
linux
コマンドは、指定されたパスからLinuxカーネルをロードします。vmlinuz
仮想メモリをサポートする圧縮されたLinuxカーネル実行可能ファイルを意味します。文字「z」は、圧縮されていることを示します。 -
initrd
コマンドは、指定されたパスから初期ramdiskをロードします。linux
の後にのみ使用できます コマンドが実行されました。初期RAMディスクは、RAMにマウントされた最小限のルートファイルシステムです。
GRUBはしないことに注意してください IDEとSCSIを区別します。 Linuxでは、 / dev / hda
最初のIDEハードドライブと/dev / sda
を指します 最初のSCSIまたはSATAハードドライブを指します。 NMVe SSDを使用する場合、 / dev / nvme0n1
という名前が付けられる場合があります 、 / dev / nvme1n1
等々。ただし、GRUBでは、最初のハードドライブは常に hd0
と呼ばれます。 、インターフェイスの種類に関係なく。また、GRUBのパーティション番号は0ではなく1から始まることに注意してください。
パーティション番号を確認するには、 lsblk
を実行します。 またはsudoparted -l </ code> ターミナルウィンドウのコマンド。次のコマンドを発行してインストールできるGpartedパーティションエディタでも確認できます。
sudo apt install gparted
私のコンピューターでは、 vmlinuz
、 initrd.gz
およびDebianISOイメージは/home / linuxbabe /
に保存されます ディレクトリですが、別のホームパーティションがあり、GRUB構成ファイルでrootとして設定されているため、パスは / linuxbabe
で始まる必要があります。 、 / home / linuxbabe /
ではありません 。
ファイルを保存して閉じます。次に、次のコマンドでGRUBブートメニューを更新します。
sudo grub-mkconfig -o /boot/grub/grub.cfg
Fedoraでは、実行するコマンドは次のとおりです。
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
DebianベースのLinuxディストリビューションでは、次のコマンドを使用してGRUBブートメニューを更新できます。
sudo update-grub
出力から、GRUBが新しいメニューエントリを追加したことがわかります。 (新しいバージョンのGRUBでは、このメッセージは表示されません。)
次に、コンピュータを再起動します。 GRUBブートメニューで、追加したばかりのメニューエントリを確認できます。コンピュータの再起動時にGRUBブートメニューを表示するには、右のShiftキーを押す必要がある場合があることに注意してください。
それを選択してEnterキーを押します。 Linuxカーネル( vmlinuz
)および初期RAMディスク( intird.gz
)がメモリにロードされます。次に、追加のインストーラコンポーネントがDebianISOイメージからロードされます。
一般的な落とし穴の回避
次のコードを使用してハードディスクからUbuntuISOを起動した可能性がありますが、DebianISOにも同じ構文を使用しようとしています。
menuentry "ubuntu-16.04-desktop-amd64.iso" { set isofile="/home/username/Downloads/ubuntu-16.04-desktop-amd64.iso" loopback loop (hd0,1)/$isofile linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile quiet noeject nopromt spalsh -- initrd (loop)/casper/initrd.lz }
動作しません。この構文を使用すると、DebianISOの起動後に次のエラーが発生します。
No common CD-ROM drive was detected.
または
No medium found containing a live file system.
その理由は、UbuntuメソッドはISOイメージ内でLinuxカーネルと初期ramdiskを使用しますが、 hd-media / vmlinuz
を使用する必要があるためです。 およびhd-media/ initrd.gz
ハードディスクからDebianインストーラを起動するため。 Debian ISOイメージは、Debianインストーラに必要なCD-ROM/メディアです。
その他のヒント
3つのファイルがディスクパーティションの最上位ディレクトリにある場合は、 vmlinuz
へのパスを指定するときに最初のスラッシュを省略しないでください。 およびintird.gz
。言い換えれば、あなたは必要です
linux /vmlinuz initrd /initrd.gz
ではなく
linux vmlinuz initrd initrd.gz
3つのファイルがMBRディスクの拡張パーティション上にある場合、パーティション番号は1ではなく5から始まります。たとえば、拡張パーティション内の最初の論理パーティションには5の番号が付けられます。拡張パーティション内の2番目の論理パーティションには6の番号が付けられます。
コンピューター内にSATAディスクとNVMeSSDがある場合、SATAディスクが最初で、NVMeSSDが2番目です。 USBドライブとNVMeSSDについても同じことが言えます。
このチュートリアルが、GRUB2ブートローダーを使用してハードディスクからDebianISOイメージを起動するのに役立つことを願っています。いつものように、この投稿が役に立った場合は、無料のニュースレターを購読して、その他のヒントやコツを入手してください。