Hi all,
I've got few servers in my rack, both amd64 and i386 with the same FreeBSD release installed.
I came to the idea that I could benefit from keeping ports and distfiles structure on one of them, install and/or create packages on it - and supply them via nfs to other machines. So I did following:
on "main amd64" server. I have noticed that I cannot "zfs set sharenfs=on" option on not mounted zfs filesystem i.e. created with "zfs set mountpoint=none". That's why there are both packages.amd64 and .i386 filesystems. I have also created symlink /usr/ports-packages to /tank/ports/packages.amd64
Then on each "client" server I mounted nfs shares as follows:
and setenv option PACKAGES to /usr/ports-packages on all "main" and "client" servers.
At portmaster.rc file (as I am using portmaster to maintain installed ports) I have set LOCAL_PACKAGEDIR=/usr/ports-packages
This way I was able to compile from sources and install some port on "main" server, and then later on install it from previously created package on "client" server.
Question: Is that a good solution? Does anybody have it done better?
I've got few servers in my rack, both amd64 and i386 with the same FreeBSD release installed.
I came to the idea that I could benefit from keeping ports and distfiles structure on one of them, install and/or create packages on it - and supply them via nfs to other machines. So I did following:
Code:
main# zfs list
tank/ports 1.61G 626G 1.17G /usr/ports
tank/ports/distfiles 151M 626G 151M /usr/ports/distfiles
tank/ports/packages.amd64 214M 626G 214M /tank/ports/packages.amd64
tank/ports/packages.i386 87.4M 626G 87.4M /tank/ports/packages.i386
Then on each "client" server I mounted nfs shares as follows:
Code:
client_i386# cat /etc/fstab
10.180.1.2:/usr/ports /usr/ports nfs rw,noatime 0 0
10.180.1.2:/usr/ports/distfiles /usr/ports/distfiles nfs rw,noatime 0 0
10.180.1.2:/tank/ports/packages.i386 /usr/ports-packages nfs rw,noatime 0 0
client_amd64# cat /etc/fstab
10.180.1.2:/usr/ports /usr/ports nfs rw,noatime 0 0
10.180.1.2:/usr/ports/distfiles /usr/ports/distfiles nfs rw,noatime 0 0
10.180.1.2:/tank/ports/packages.amd64 /usr/ports-packages nfs rw,noatime 0 0
At portmaster.rc file (as I am using portmaster to maintain installed ports) I have set LOCAL_PACKAGEDIR=/usr/ports-packages
This way I was able to compile from sources and install some port on "main" server, and then later on install it from previously created package on "client" server.
Question: Is that a good solution? Does anybody have it done better?