Hi guys,
I am stuck in a situation which I think is easy, but I cannot see the solution that must be in front of me. I installed my fbsd 8-stable system on a ufs filesystem, and then I created a zfs pool (on another partition). On the pool I created a few filesystems (/etc,/var/,/usr/,/usr/local and more). I copied my files from my initial /etc to my zfs-pool /etc (my pool is called msi_root), and on /etc/fstab I have:
My problem is that when my system boots, if first reads my initial /etc (which is later hidden by my zfs /etc), so things I write on msi_root/etc/rc.conf, for example, are not valid unless I write them on my initial /etc/rc.conf.
Which means that I have to shutdown to single user mode, unmount my zfs/etc filesystem and write my changes on my initial /etc/rc.conf in order for me to work.
I know I am missing something but I don't know what it is. What should I do so as to make my system "see" the zfs /etc on boot? (this is not my only problem. When I log onto single user mode, my system sees only my initial /etc, /usr, blabla filesystems. The kernel loaded is always the latest (I follow stable). The binaries and libraries located in /usr/ are those that I installed the first time. I assume that at some moment those two will become out of sync and I won't be able to operate my system).
Please, don't instruct me to install zfsboot. I know how to do this, I had my system running like this in the past, but I encountered a problem during a zfs pool upgrade that made me reinstall my system from scratch (it wouldn't update the mbr, no matter what). I prefer to be able to boot from a ufs system, and keep /etc/, /usr and other filesystems stored in zfs.
Thank you all for your time in advance.
I am stuck in a situation which I think is easy, but I cannot see the solution that must be in front of me. I installed my fbsd 8-stable system on a ufs filesystem, and then I created a zfs pool (on another partition). On the pool I created a few filesystems (/etc,/var/,/usr/,/usr/local and more). I copied my files from my initial /etc to my zfs-pool /etc (my pool is called msi_root), and on /etc/fstab I have:
Code:
# Device Mountpoint FStype Options Dump Pass#
/dev/ad4s2a / ufs rw 1 1
msi_root/etc /etc zfs rw 0 0
msi_root/home /home zfs rw 0 0
msi_root/root /root zfs rw 0 0
msi_root/usr /usr zfs rw 0 0
msi_root/usr/local /usr/local zfs rw 0 0
msi_root/usr/local/share /usr/local/share zfs rw 0 0
msi_root/usr/obj /usr/obj zfs rw 0 0
msi_root/usr/ports /usr/ports zfs rw 0 0
msi_root/usr/share /usr/share zfs rw 0 0
msi_root/usr/src /usr/src zfs rw 0 0
msi_root/var /var zfs rw 0 0
msi_root/var/db /var/db zfs rw 0 0
msi_root/var/log /var/log zfs rw 0 0
/dev/ad4s2b none swap sw 0 0
/dev/ad4s1 /mnt/nt ntfs ro,noauto,-CUTF-8 0 0
/dev/acd0 /cdrom cd9660 ro,noauto 0 0
My problem is that when my system boots, if first reads my initial /etc (which is later hidden by my zfs /etc), so things I write on msi_root/etc/rc.conf, for example, are not valid unless I write them on my initial /etc/rc.conf.
Which means that I have to shutdown to single user mode, unmount my zfs/etc filesystem and write my changes on my initial /etc/rc.conf in order for me to work.
I know I am missing something but I don't know what it is. What should I do so as to make my system "see" the zfs /etc on boot? (this is not my only problem. When I log onto single user mode, my system sees only my initial /etc, /usr, blabla filesystems. The kernel loaded is always the latest (I follow stable). The binaries and libraries located in /usr/ are those that I installed the first time. I assume that at some moment those two will become out of sync and I won't be able to operate my system).
Please, don't instruct me to install zfsboot. I know how to do this, I had my system running like this in the past, but I encountered a problem during a zfs pool upgrade that made me reinstall my system from scratch (it wouldn't update the mbr, no matter what). I prefer to be able to boot from a ufs system, and keep /etc/, /usr and other filesystems stored in zfs.
Thank you all for your time in advance.