[Netkit.users] Netkit filesystem

Massimo Rimondini rimondin a dia.uniroma3.it
Mer 27 Set 2006 22:36:49 CEST


[ This e-mail answers to questions by both Paolo Carpo and Endro Mei A. ]

Hi there,

first of all, I apologize for not answering for a while, but sometimes 
work comes into bursts.

As for the kernel panic after building the brand new filesystem, it is 
likely to be related to the filesystem itself. In order to minimize the 
warnings issued when booting a Netkit virtual machine, the filesystem 
distributed with Netkit contains a partition in it (i.e., it is not 
actually a filesystem but rather a disk image with a valid partition 
table). If you replace the Netkit filesystem with one built on your own, 
you should also take care of creating a partition in it before actually 
mkfs'ing and installing an OS inside it, since this is what Netkit 
expects to find. Instructions for doing this are provided in the man 
page "netkit-filesystem".
Before doing this, I suggest you first try to invoke vstart with '-m 
your_new_filesystem', which should prevent Netkit from looking for a 
partition and is probably going to work with the fs you have aready created.

To answer Endro's question about the creation of the filesystem, I think 
Paolo's question is simply the answer :)
Using Debian (or derivatives) as host OS makes things straightforward: 
you can simply use debootstrap to install a basic Debian system inside a 
filesystem image. The details are in Paolo's mail (which I attach below).
No gcc is required, since you are not going to /compile/ the fs, but 
simply to install packages in it. This is what debootstrap does.
Adding packages to the newly created filesystem works exactly as it 
would on your host machine. Simply mount the filesystem image on a 
directory of your choice, then chroot to that directory. Once done, you 
get a shell which is kind of "trapped" inside the filesystem image. 
Hence, issuing commands like 'dselect' or 'apt-get' only affects the 
filesystem image and does not harm your host filesystem (I advise you to 
be careful nevertheless).
Last, the filesystem and the kernel are two independent entities. Once 
you choose to build up a new filesystem, this has nothing to do with the 
kernel (except, possibly, the fact that any tool you are installing in 
the fs has dependencies on the kernel version - which is unlikely to 
happen). The kernel of Netkit is something that lives outside the 
filesystem, which you can easily establish by observing that they are 
distributed as two separate packages.

I hope this works out most of your doubts.

Regards,
Massimo.



Paolo Carpo wrote:
> Hi all,
>
> thanks one more time for the answer, but, as you can guess, I have other 
> question ready for you Mr Rimondini :)
> I would like to use a new filesystem with netkit (too many new application to 
> integrate). I read the man page, but when I try to use it I get:
>
> Kernel panic - not syncing VFS: Unable to mount root fs on unknown-block(98,1)
>
> Is it a kernel problem, or is there something wrong with my filesystem?
> The filesystem was made with these commands:
>
> dd if=/dev/zero of=ubuntu count=1 bs=1k seek=$[2*1024*1024]
>
> mkfs.ext3 ubuntu
>
> mount -o loop ubuntu /mnt/ubuntu
>
> debootstrap --arch i386 dapper /mnt/ubuntu 
> http://archive.ubuntulinux.org/ubuntu
>
>
> FSTAB configuration
>
> 	/dev/ubd0	/	ext3	defaults	0 1
> 	proc		/proc	proc	defaults	0 0
>
>
> In /mnt/ubntu/dev
>
> 	mknod --mode=660 ubd0 b 98 0
> 	chown root:disk ubd0
> 	
> If I run it not with netkit it works perfectly...
>
> Thank you a lot,
>
> 	Paolo Carpo
>
>   
> ------------------------------------------------------------------------
>
> _______________________________________________
> Netkit.users mailing list
> Netkit.users a list.dia.uniroma3.it
> http://list.dia.uniroma3.it/mailman/listinfo/netkit.users
>   
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: http://list.dia.uniroma3.it/mailman/private/netkit.users/attachments/20060927/1db569f8/attachment.html


Maggiori informazioni sulla lista Netkit.users