Re: netbsd 2.0 on rs6000 43p, what I've been able to do so far, and where i got stuck
Jochen Kunz <[email protected]>
| Newsgroups | gmane.os.netbsd.ports.prep |
|---|---|
| Message-ID | <[email protected]> |
On Tue, 25 Jan 2005 05:56:26 -0500 Rongsheng Fang <[email protected]> wrote: > Just want to make this a little louder: I tried installing the snopshot > (announced by Jochen yesterday) on my 43p-140 last night and experienced > the _exact_ problem Tim had. Yes. Getting a disklabel on the disk is tricky. I mounted a scratch disk in my 43P-140 to provide you with an installation log. I did it this way: boot sysinst_com0.fs Exit to shell. ifconfig pcn0 mount NFS volume containing distribution sets by hand, then: You must use sysinst.fs and generic.fs when you want to use VGA console. # dd if=generic_com0.fs of=/dev/sd0c # fdisk sd0 [...] Partition table: 0: Linux/MINIX (sharing disk with DRDOS) or Personal RISC boot (sysid 65) start 0, size 2879 (1 MB, Cyls 0-0/45/45), Active 1: <UNUSED> 2: <UNUSED> 3: <UNUSED> # fdisk -u -1 sd0 sd0: no disk label Disk: /dev/rsd0c NetBSD disklabel disk geometry: cylinders: 3708, heads: 20, sectors/track: 113 (2260 sectors/cylinder) total sectors: 8380080 BIOS disk geometry: cylinders: 521, heads: 255, sectors/track: 63 (16065 sectors/cylinder) total sectors: 8380080 Do you want to change our idea of what BIOS thinks? [n] Partition 1: <UNUSED> The data for partition 1 is: <UNUSED> sysid: [0..255 default: 169] start: [0..522cyl default: 2879, 0cyl, 1MB] 1cyl size: [0..521cyl default: 8364015, 521cyl, 4084MB] We haven't written the MBR back to disk yet. This is your last chance. Partition table: 0: Linux/MINIX (sharing disk with DRDOS) or Personal RISC boot (sysid 65) start 0, size 2879 (1 MB, Cyls 0-0/45/45), Active 1: NetBSD (sysid 169) start 16065, size 8364015 (4084 MB, Cyls 1-521/162/10) 2: <UNUSED> 3: <UNUSED> Should we write new partition table? [n] y As you can see there are different fdisk(8) and disklabel(8) geometrys. I choose the NetBSD partition to start on a fdisk(8) cylinder boundary. IIRC this makes the fdisk(8) stuff more happy. Now comes the tricky part. We have to write an initial disklabel(5) to the disk with default values. Otherwise disklabel(8) will refuse to write a disklabel(5) to the disk later. I changed slice c: to cover the entire disk because I got problems writing a new kernel to the disk later. Seems port-prep has some problems with MBR partitions as it doesn't reserve partition d: for the entire disk as port-i386 dos. # disklabel -i -I sd0 sd0: no disk label partition> P 7 partitions: # size offset fstype [fsize bsize cpg/sgs] c: 8364015 16065 unused 0 0 # (Cyl. 7*- 3707) d: 2879 0 unused 0 0 # (Cyl. 0 - 1*) e: 8364015 16065 unused 0 0 # (Cyl. 7*- 3707) partition> W Label disk [n]? y Label written partition> c Filesystem type [?] [unused]: Start offset ('x' to start after partition 'x') [7.10841c, 16065s, 7.84424M]: 0 Partition size ('$' for all remaining) [3700.89c, 8364015s, 4083.99M]: $ c: 8380080 0 unused 0 0 # (Cyl. 0 - 3707) partition> W Label disk [n]? y NetBSD slice at 16065, partition C at 0 Write outside MBR partition? [n]: y Label written partition> R Rounding [sectors]: c partition> a Filesystem type [?] [unused]: 4.2BSD Start offset ('x' to start after partition 'x') [0c, 0s, 0M]: 8c Partition size ('$' for all remaining) [0c, 0s, 0M]: 128M a: 262160 18080 4.2BSD 0 0 0 # (Cyl. 8 - 123) partition> b Filesystem type [?] [unused]: swap Start offset ('x' to start after partition 'x') [0c, 0s, 0M]: a Partition size ('$' for all remaining) [0c, 0s, 0M]: 256M b: 524320 280240 swap # (Cyl. 124 - 355) partition> f Filesystem type [?] [unused]: 4.2BSD Start offset ('x' to start after partition 'x') [0c, 0s, 0M]: b Partition size ('$' for all remaining) [0c, 0s, 0M]: $ f: 7575520 804560 4.2BSD 0 0 0 # (Cyl. 356 - 3707) partition> P 7 partitions: # size offset fstype [fsize bsize cpg/sgs] a: 262160 18080 4.2BSD 0 0 0 # (Cyl. 8 - 123) b: 524320 280240 swap # (Cyl. 124 - 355) c: 8380080 0 unused 0 0 # (Cyl. 0 - 3707) d: 2879 0 unused 0 0 # (Cyl. 0 - 1* ) e: 8364015 16065 unused 0 0 # (Cyl. 7*- 3707) f: 7575520 804560 4.2BSD 0 0 0 # (Cyl. 356 - 3707) partition> W Label disk [n]? y NetBSD slice at 16065, partition C at 0 Write outside MBR partition? [n]: y Label written partition> Q Now start /sysinst. Choose "Edit the MBR partition table" (do not choose "Use the entire disk") but accept the already existing partitions without changing them. Choose "Use existing partition sizes". Edit the options for the a: and f: slices. Set "newfs" to "Yes", set "block size:" to "8192" (or what ever default value the menue presents to you.), set " mount options:" to "softdep" and "mount point:" to "/" resp. "/usr". E.g.: The current values for partition `a' are, Select the field you wish to change: MB cylinders sectors ------- --------- --------- a: FStype: FFSv1 b: start: 8 8 18080 c: size: 128 116 262160 d: end: 136 124 280240 e: newfs: Yes f: avg file size: 4 fragments g: block size: 8192 bytes h: fragment size: 1024 bytes i: mount: Yes j: mount options: softdep >k: mount point: / l: Change input units (sectors/cylinders/MB) m: Restore original values x: Partition sizes ok When done with editing the disklabel(5) will be rewitten. Answer "y" when disklabel(8) asks to write outside MBR partition. From here on everything should work without further cheating. -- tschüß, Jochen Homepage: http://www.unixag-kl.fh-kl.de/~jkunz/