Installing minibsd inside vmware virtual disk
Paolo Pisati
p.pisati at oltrelinux.com
Tue Sep 14 15:29:20 PDT 2004
Hi guys,
[the long story]
i've a problem while i try to install minibsd inside
a virtual disk of vmware3 running on top of FreeBSD.
I obtained minibsd scripts form the freesbie cvs,
unpacked in a dir on my disk, executed all the scripts and
generated a iso containing a complete minibsd system.
/*
* personal note: minibsd is SO sweetttt!!!!
* ONLY 15mbs for a working system!!! =)
*/
Booted vmware with freesbie, mouned the minibsd iso
and a 32mb virtual disk previously prepared(see below
for some more info), copied all the stuff from the minibsd iso
and updated /etc/fstab.
Installed the boot code and halted the system.
Unmounted all the iso (freesbie & minibsd iso),
and booted vmware with only virtual disk.
It started correctly, executed the boot code, loaded
the kernel, decompressed it but
when it came to mount / (the previously created fs)
it paniced:
panic: going nowhere without my init
(detaild screenshot here: http://www.gufi.org/~flag/vmware-minibsd-init-signal6.gif)
Now, i know i'm missing something very stupid, but i don't know what...
/* WARNING: brain fart starts here */
The panic msg seems to be clear: the kernel can't find the init
executable so it panics, but:
1) the fs seemed to be ok cause it was mounted with no prob
(if it couldn't find the fs i expected a panic during the
mount phase "Mounting root from ufs:..."
2) the init file is present in the created fs
(/sbin/init)
So here comes the question:
why the hell (if the fs is good and it was mounted correctly)
the kernel cannot find it?
/* End of brain fart */
Uhmmm... probably i should read again the boot section
in the handbook or think a bit more but i'm sure
there's something REALLY stupid i'm missing...
Or maybe is just minibsd that doesn't use init
but a custom program and i botched it...
But if you have any ideas or suggestions i would be
REALLY pleased to here it from you... =)
Thanks.
structure of the created fs:
root at FreeSBIE:~# fdisk /dev/ad0
******* Working on device /dev/ad0 *******
parameters extracted from in-core disklabel are:
cylinders=65 heads=16 sectors/track=63 (1008 blks/cyl)
parameters to be used for BIOS calculations are:
cylinders=65 heads=16 sectors/track=63 (1008 blks/cyl)
Media sector size is 512
Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 1 is:
sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD)
start 63, size 64449 (31 Meg), flag 80 (active)
beg: cyl 0/ head 1/ sector 1;
end: cyl 63/ head 15/ sector 63
The data for partition 2 is:
<UNUSED>
The data for partition 3 is:
<UNUSED>
The data for partition 4 is:
<UNUSED>
root at FreeSBIE:~#))))))
bsdlabel ad0s1
# /dev/ad0s1:
8 partitions:
# size offset fstype [fsize bsize bps/cpg]
a: 64433 16 4.2BSD 2048 16384 4032
c: 64449 0 unused 0 0 # "raw" part, don't edit
root at FreeSBIE:~# mkdir /tmp/minibsd
root at FreeSBIE:~# mount /dev/ad0s1a /tmp/minibsd
root at FreeSBIE:~# ls -la /tmp/minibsd/sbin/init
-r-x------ 1 root wheel 18272 Sep 14 13:07 /tmp/minibsd/sbin/init
root at FreeSBIE:~# /tmp/minibsd/sbin/init
init: already running
root at FreeSBIE:~#
root at FreeSBIE:~# ls -la /tmp/minibsd/
total 34
drwxr-xr-x 17 root wheel 512 Sep 14 13:07 .
drwxrwxrwx 5 root wheel 512 Sep 14 14:04 ..
drwxrwxr-x 2 root operator 512 Sep 14 13:06 .snap
drwxr-xr-x 2 root wheel 512 Sep 14 13:07 bin
drwxr-xr-x 5 root wheel 512 Sep 14 13:06 boot
dr-xr-xr-x 2 root wheel 512 Sep 14 13:06 dev
drwxr-xr-x 18 root wheel 1536 Sep 14 13:07 etc
drwxr-xr-x 3 root wheel 512 Sep 14 13:06 lib
drwxr-xr-x 2 root wheel 512 Sep 14 13:06 libexec
drwxr-xr-x 2 root wheel 512 Sep 14 13:06 mnt
dr-xr-xr-x 2 root wheel 512 Sep 14 13:07 proc
drwxr-xr-x 2 root wheel 512 Sep 14 13:07 rescue
drwxr-xr-x 2 root wheel 512 Sep 14 13:07 root
drwxr-xr-x 2 root wheel 1024 Sep 14 13:07 sbin
lrwxr-xr-x 1 root wheel 11 Sep 14 13:07 sys -> usr/src/sys
drwxr-xr-t 2 root wheel 512 Sep 14 13:07 tmp
drwxr-xr-x 13 root wheel 512 Sep 14 13:07 usr
drwxr-xr-x 20 root wheel 512 Sep 14 13:07 var
root at FreeSBIE:~# cat /tmp/minibsd/etc/fstab
# See the fstab(5) manual page for important information on automatic mounts
# of network filesystems before modifying this file.
#
# Device Mountpoint FStype Options Dump Pass#
/dev/ad0s1a / ufs rw,noatime 1 1
root at FreeSBIE:~#
kernel config file:
machine i386
cpu I486_CPU
cpu I586_CPU
cpu I686_CPU
ident MINIBSD
maxusers 0
options SCHED_4BSD
options INET #InterNETworking
options FFS #Berkeley Fast Filesystem
options SOFTUPDATES #Enable FFS soft updates support
options UFS_DIRHASH #Improve performance on big directories
options NFSCLIENT #Network Filesystem Client
options PROCFS #Process filesystem (requires PSEUDOFS)
options PSEUDOFS #Pseudo-filesystem framework
options SCSI_DELAY=5000 #Delay (in ms) before probing SCSI
options KTRACE #ktrace(1) support
options ROOTDEVNAME=\"ufs:ad0s1\"
device isa
device pci
# ATA and ATAPI devices
device ata
device atadisk # ATA disk drives
options ATA_STATIC_ID #Static device numbering
# syscons is the default console driver, resembling an SCO console
device atkbdc
device atkbd
device vga
device sc
options SC_NO_SYSMOUSE
# Floating point support - do not disable.
device npx
device pmtimer
# Serial (COM) ports
device sio # 8250, 16[45]50 based serial ports
device miibus # MII bus support
device lnc # NIC emulated in vmware
# Pseudo devices - the number indicates how many units to allocate.
device random # Entropy device
device loop # Network loopback
device ether # Ethernet support
device tun # Packet tunnel.
device pty # Pseudo-ttys (telnet etc)
device md # Memory "disks"
options NETGRAPH
--
Paolo
Italian FreeBSD User Group: http://www.gufi.org
More information about the freebsd-hackers
mailing list