NetBSD-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Installation troubles on UEFI/GPT laptop (possible bug?)



On 9/30/20 5:48 PM, James Browning wrote:
Hi all,

I am attempting to install NetBSD 9.0 on my UEFI enabled laptop's GPT disk. This disk also contains 
windows and linux paritions, so I do not want to clear the partition table. I attempted installation 
using a usb drive with the install image 'NetBSD-9.0-amd64-uefi-install.img'. The laptop model is 
Acer Aspire E15 E5-575G-57D4. 

I have attempted many methods to correctly format the partition, but nothing seems to be working,
and I am not sure if this is the result of bugs or user ignorance. From my perspective the problem
appears to be Sysinst not cooperating with my GPT.

My steps to attempt this installation are:

1. In linux, use gparted to create a new partiton which will contain NetBSD, I figured the file system 
   type I select is arbitrary because Sysinst will format the partition to FFS

This is almost certainly the cause of your problems. NetBSD wants a GPT partition with the NetBSD GUID (49F48D5A-B10E-11DC-B99B-0019D1879648, unless you're creating an encrypted partition). Technically you'd want a separate GPT partition for swap as well (same GUID).

Any ideas on what is going on here? I really have no idea if it is me or Sysinst that is in the wrong here.

Step 3 fails because the GUID says the partition is not a NetBSD. That's what the error means: newfs: /dev//rdk5/ partition type is not '4.2BSD'. It would be very bad form to newfs a non NetBSD partition (i.e. that is it could erase user data), so this seems like a reasonable sanity check.

Step 4 fails because sysinst is trying to label a GPT partition that doesn't have the NetBSD GUID (I think). Sysinst may not know to change the GUID for the partition.

I'm not sure about step 5, however I second the suggestion to delete the partition and let sysinst create new partition(s) with the appropriate types. The other option is changing the GUID in another OS or doing it from the command line. From the command line there are three steps. Backup the GPT table, find the index number of the partition you want to use, and then change the GUID.

For example:

#gpt backup -o /tmp/gpt-backup ld0

#gpt show ld0
      start       size  index  contents
          0          1         PMBR
          1          1         Pri GPT header
          2         32         Pri GPT table
         34       4062      4  GPT part - bfbfafe7-a34f-448a-9a5b-6213eb736c22

                            ^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

       4096     262144      1  GPT part - EFI System
     266240  115343360      2  GPT part - NetBSD FFSv1/FFSv2
  115609600    6529024      3  GPT part - NetBSD swap
  122138624       4063         Unused
  122142687         32         Sec GPT table
  122142719          1         Sec GPT header

I'm changing the GUID of the first listed GPT partition. (I created a (very small) partition for testing). It is index #4. Then

#gpt type -i 4 -T 49F48D5A-B10E-11DC-B99B-0019D1879648 ld0

    (For you I think it would be -i 6, but check first)

#gpt show ld0

root@liva2:~# gpt show ld0
      start       size  index  contents
          0          1         PMBR
          1          1         Pri GPT header
          2         32         Pri GPT table
         34       4062      4  GPT part - NetBSD FFSv1/FFSv2

                            ^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

       4096     262144      1  GPT part - EFI System
     266240  115343360      2  GPT part - NetBSD FFSv1/FFSv2
  115609600    6529024      3  GPT part - NetBSD swap
  122138624       4063         Unused
  122142687         32         Sec GPT table
  122142719          1         Sec GPT header

Now the partition has the NetBSD GUID. Once the GUID is correct, sysinst shouldn't have problems.

HTH,

Jason M.



Home | Main Index | Thread Index | Old Index