Saya memiliki hard drive laptop di kandang eksternal yang saya gunakan sebagai pendrive besar. Sebagai tambahan, saya telah menginstal Linux di atasnya, jadi saya dapat mem-boot mesin apa pun dengan distribusi pilihan saya (misalnya untuk pemulihan data atau memperbaiki sistem b0rked atau hanya menggunakan laptop yang dipinjam tanpa merusak Windows yang sudah diinstal sebelumnya). Masalahnya adalah, tergantung pada konfigurasi perangkat keras, hard drive USB mungkin terlihat di jalur yang berbeda. Untuk konfigurasi grub, saya hanya menggunakan (hda0,0)
karena relatif terhadap perangkat, grub diluncurkan. Saya memiliki entri UUID di /etc/fstab
. Saya juga menentukan rootwait
dalam parameter kernel sehingga menunggu subsistem USB untuk menetap sebelum mencoba memasang perangkat.
Apa yang harus saya sampaikan ke kernel root=
? Saat ini boot dari flashdisk sekali, periksa pesan debug untuk melihat /dev/sdX
perangkat apa yang telah ditetapkan untuk drive USB oleh kernel, kemudian reboot dan edit konfigurasi grub. Saya tidak dapat mengubah apa pun di PC selain mengaktifkan Boot from USB hard drive
di BIOS dan mengaturnya ke prioritas yang lebih tinggi daripada hard drive internal.
Ada berbagai skrip initrd yang menyertakan dukungan untuk UUID di jalur perangkat root, sayangnya yang asli Gentoo (genkernel) tidak mendukung rootwait
dan saya tidak beruntung mencoba menggunakan yang lain.
Proses boot berjalan seperti ini ( sangat mirip di Windows ):
- BIOS memilih perangkat boot dan memuat apa pun MBR-nya (yang kebetulan grub stage-1).
- Grub memuat konfigurasinya dan file tahap-2 dari perangkat yang telah ditetapkan sebagai
root
, menggunakan(hd0)
untuk perangkat itu diambil dari oleh BIOS. - Grub memuat dan memulai kernel (masih penomoran yang sama, jadi saya bisa menggunakan
(hd0,0)
lagi). - Kernel menginisialisasi semua perangkat bawaan (
rootwait
lakukan sekarang sihir). - Kernel me-mount partisi tempat partisi tersebut dilewatkan
root
(ini adalah parameter kernel, bukan parameter grub). init.d
memulai proses booting pengguna, termasuk pemasangan dari/etc/fstab
.
Bagian 5 adalah yang memberiku masalah.