How to add zfs support to FreeBSD?

2013-02-18 Thread Fbsd8

The handbook does not cover how to add zfs support.

How is it done?
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"


Re: How to add zfs support to FreeBSD?

2013-02-18 Thread Fbsd8

Fbsd8 wrote:

The handbook does not cover how to add zfs support.

How is it done?



Let me reword. If zfs is in the base system why does it not show up
when I look for it this way?

if config -x $( sysctl -n kern.bootfile ) | grep -q 
'^[[:space:]]*options[[:space:]]\{1,\}ZFS\>'; then

  echo "yes zfs is in the kernel"
fi
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"


Re: How to add zfs support to FreeBSD?

2013-02-18 Thread Polytropon
On Mon, 18 Feb 2013 16:21:11 -0500, Fbsd8 wrote:
> The handbook does not cover how to add zfs support.

Does the Handbook's section 21.2 fail to contain something
specific you're searching for?

http://www.freebsd.org/doc/handbook/filesystems-zfs.html



> How is it done?

By adding zfs_enable="YES" to /etc/rc.conf and issuing the
command "service zfs start" the ZFS subsystem should be up
and running.



-- 
Polytropon
Magdeburg, Germany
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"



Re: How to add zfs support to FreeBSD?

2013-02-18 Thread Glenn Sieb
On 2/18/13 4:21 PM, Fbsd8 wrote:
> The handbook does not cover how to add zfs support.
> 
> How is it done?

Does this help you?

https://wiki.freebsd.org/ZFS

Best,
--Glenn


___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"


Re: How to add zfs support to FreeBSD?

2013-02-18 Thread Polytropon
On Mon, 18 Feb 2013 16:57:14 -0500, Fbsd8 wrote:
> Fbsd8 wrote:
> > The handbook does not cover how to add zfs support.
> > 
> > How is it done?
> 
> 
> Let me reword. If zfs is in the base system why does it not show up
> when I look for it this way?
> 
> if config -x $( sysctl -n kern.bootfile ) | grep -q 
> '^[[:space:]]*options[[:space:]]\{1,\}ZFS\>'; then
>echo "yes zfs is in the kernel"
> fi

Without the ability to check this, I strongly assume that
if you enable ZFS as described in the Handbook, the module
/boot/kernel/zfs.ko (part of the default system) will be
loaded. That's why it won't show up in a sysctl query
aimed at the _kernel_ itself -- because it isn't in the
kernel.

Also, "sysctl -n kern.bootfile" will return the actual
kernel file, /boot/kernel/kernel, which is a binary. If
the exact config list (from the kernel _configuration_
file) is not plain-text part of that file, grep will not
find the text you're grepping for.



-- 
Polytropon
Magdeburg, Germany
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"


Re: How to add zfs support to FreeBSD?

2013-02-18 Thread Fbsd8

Polytropon wrote:

On Mon, 18 Feb 2013 16:57:14 -0500, Fbsd8 wrote:

Fbsd8 wrote:

The handbook does not cover how to add zfs support.

How is it done?


Let me reword. If zfs is in the base system why does it not show up
when I look for it this way?

if config -x $( sysctl -n kern.bootfile ) | grep -q 
'^[[:space:]]*options[[:space:]]\{1,\}ZFS\>'; then

   echo "yes zfs is in the kernel"
fi


Without the ability to check this, I strongly assume that
if you enable ZFS as described in the Handbook, the module
/boot/kernel/zfs.ko (part of the default system) will be
loaded. That's why it won't show up in a sysctl query
aimed at the _kernel_ itself -- because it isn't in the
kernel.

Also, "sysctl -n kern.bootfile" will return the actual
kernel file, /boot/kernel/kernel, which is a binary. If
the exact config list (from the kernel _configuration_
file) is not plain-text part of that file, grep will not
find the text you're grepping for.




So the next question is there any sh script code I can use to
check if zfs has been enabled by the rc.conf zfs_enable statement.

I need to determine if zfs is enabled on the host.

Thanks

___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"


RE: How to add zfs support to FreeBSD?

2013-02-18 Thread Teske, Devin
The tool for checking rc.conf(5) is my sysrc(8).

It will eventually be part of base (it's already checked into HEAD at 
usr.sbin/sysrc -- but not installed by default unless WITH_BSDCONFIG is enabled 
when performing a build(7) or release(7) process).

Currently, also available via ports in sysutils/sysrc

I definitely recommend giving it a shot.

There's essentially two ways to use it for your needs:

1. sysrc -n zfs_enable

Returns YES for example.

or...

2. For better performance, use the includes...

#!/bin/sh
. /usr/local/share/sysrc/sysrc.subr
f_sysrc_get zfs_enable

Returns YES for example.
-- 
Devin



From: owner-freebsd-questi...@freebsd.org [owner-freebsd-questi...@freebsd.org] 
on behalf of Fbsd8 [fb...@a1poweruser.com]
Sent: Monday, February 18, 2013 5:41 PM
To: Polytropon
Cc: FreeBSD questions
Subject: Re: How to add zfs support to FreeBSD?

Polytropon wrote:
> On Mon, 18 Feb 2013 16:57:14 -0500, Fbsd8 wrote:
>> Fbsd8 wrote:
>>> The handbook does not cover how to add zfs support.
>>>
>>> How is it done?
>>
>> Let me reword. If zfs is in the base system why does it not show up
>> when I look for it this way?
>>
>> if config -x $( sysctl -n kern.bootfile ) | grep -q
>> '^[[:space:]]*options[[:space:]]\{1,\}ZFS\>'; then
>>echo "yes zfs is in the kernel"
>> fi
>
> Without the ability to check this, I strongly assume that
> if you enable ZFS as described in the Handbook, the module
> /boot/kernel/zfs.ko (part of the default system) will be
> loaded. That's why it won't show up in a sysctl query
> aimed at the _kernel_ itself -- because it isn't in the
> kernel.
>
> Also, "sysctl -n kern.bootfile" will return the actual
> kernel file, /boot/kernel/kernel, which is a binary. If
> the exact config list (from the kernel _configuration_
> file) is not plain-text part of that file, grep will not
> find the text you're grepping for.
>


So the next question is there any sh script code I can use to
check if zfs has been enabled by the rc.conf zfs_enable statement.

I need to determine if zfs is enabled on the host.

Thanks

___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"

_
The information contained in this message is proprietary and/or confidential. 
If you are not the intended recipient, please: (i) delete the message and all 
copies; (ii) do not disclose, distribute or use the message in any manner; and 
(iii) notify the sender immediately. In addition, please be aware that any 
message addressed to our domain is subject to archiving and review by persons 
other than the intended recipient. Thank you.
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"


Re: How to add zfs support to FreeBSD?

2013-02-18 Thread Polytropon
On Mon, 18 Feb 2013 20:41:19 -0500, Fbsd8 wrote:
> So the next question is there any sh script code I can use to
> check if zfs has been enabled by the rc.conf zfs_enable statement.
> 
> I need to determine if zfs is enabled on the host.

Even though the statement zfs_enable="YES" may be part of
/etc/rc.conf, it's still possible that the ZFS subsystem
is _currently_ not running. So in my opinion you should
check with something that relies on ZFS actually running.
So there could be a difference between "is enabled" and
"is running".

Regarding "is enabled", you can easily check if the
corresponding line in /etc/rc.conf is present. This could
result in a false-positive answer regarding "is running".

For example, if I add zfs_enable="YES" to /etc/rc.conf
and check its presence (e. g. using grep), but I don't
do anything else; I'll get this:

% zfs
internal error: failed to initialize ZFS library

Here's an example from a system not running ZFS:

/sbin/zfs > /dev/null 2>&1
if [ $? -eq 0 ]; then
echo "ZFS is currently running."
else
echo "ZFS is currently _not_ running."
fi

Check on a system running ZFS. :-)


-- 
Polytropon
Magdeburg, Germany
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"


Re: How to add zfs support to FreeBSD

2013-02-19 Thread Jeremy Chadwick
Regarding all the recommendations on "how to determine if ZFS is
available on the system":

Do not run commands like /sbin/zfs or /sbin/zpool right off the bat.
This will result in the underlying kld bits dynamically loading zfs.ko
and opensolaris.ko on the fly -- even if there aren't any ZFS
filesystems used -- which takes up kernel memory.  This also generates
crap on the console, and I can assure you an SA running some script is
not expecting this.  (An example is a system I admin which does not use
ZFS, but I often forget that fact and type "zpool status" as root by
accident, which loads ZFS, etc. -- I ended up using WITHOUT_CDDL on that
system just to keep that from happening ;-) ).

The OP needs to define what he means by "enabled on the host".  This
could mean:

a) The host actually has ZFS compiled or not (e.g. WITHOUT_ZFS and/or
WITHOUT_CDDL and/or WITHOUT_CTF are not defined in src.conf),

b) The host is capable of using ZFS (e.g. kernel modules are built and
installed but are not loaded),

c) The host has the kernel modules loaded but are not actually in use
(e.g. zfs_enable="yes" in rc.conf but no ZFS filesystems defined),

d) The host has the kernel modules loaded and actively has ZFS
filesystems in use.


Recommendations (meaning you get to use a combination of these to create
proper logic depending on what you want -- please keep in mind what I
just said about using /sbin/zpool and so on however):

1) Check for the existence of /sbin/zfs (e.g. if [ -x ... ]).  If it
exists, the system was built without WITHOUT_{ZFS,CDDL,CTF} set.  (Sorry
for the double negative).

2) Use "sysctl -n vfs.zfs.version.zpl" and check exit code.  If 1, the
kernel modules are not loaded, else they are.

3) Run "/sbin/zpool list -H" and see if there's any output.  If there
is, there are pools defined, which means in some way or another ZFS is
being used by the system.  (Note that I recommend using /sbin/zpool not
/sbin/zfs, because zpool (for me anyway) takes less time and if there's
a pool there is going to be a filesystem (even if -omountpoint=none)
that shows up /sbin/zfs).

Note that this WILL result in the kernel modules being loaded.
Depending on what the OP wants, you could use "/sbin/mount | grep zfs"
instead, but that won't catch one situation: where all ZFS filesystems
are mountpoint=none.

Footnote: do not do silly things like grep /etc/src.conf for WITHOUT_xxx
features, or /etc/rc.conf for whatever; an admin may have set these in
advance for the next {build,install}{world,kernel} which have yet to be
run.  Parsing/checking config files is not going to suffice.

-- 
| Jeremy Chadwick   j...@koitsu.org |
| UNIX Systems Administratorhttp://jdc.koitsu.org/ |
| Mountain View, CA, US|
| Making life hard for others since 1977. PGP 4BD6C0CB |

___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"


RE: How to add zfs support to FreeBSD

2013-02-19 Thread Teske, Devin
4. lsvfs output?
-- 
Devin


From: owner-freebsd-questi...@freebsd.org [owner-freebsd-questi...@freebsd.org] 
on behalf of Jeremy Chadwick [j...@koitsu.org]
Sent: Tuesday, February 19, 2013 12:16 AM
To: freebsd-questions@freebsd.org
Cc: fb...@a1poweruser.com; free...@edvax.de
Subject: Re: How to add zfs support to FreeBSD

Regarding all the recommendations on "how to determine if ZFS is
available on the system":

Do not run commands like /sbin/zfs or /sbin/zpool right off the bat.
This will result in the underlying kld bits dynamically loading zfs.ko
and opensolaris.ko on the fly -- even if there aren't any ZFS
filesystems used -- which takes up kernel memory.  This also generates
crap on the console, and I can assure you an SA running some script is
not expecting this.  (An example is a system I admin which does not use
ZFS, but I often forget that fact and type "zpool status" as root by
accident, which loads ZFS, etc. -- I ended up using WITHOUT_CDDL on that
system just to keep that from happening ;-) ).

The OP needs to define what he means by "enabled on the host".  This
could mean:

a) The host actually has ZFS compiled or not (e.g. WITHOUT_ZFS and/or
WITHOUT_CDDL and/or WITHOUT_CTF are not defined in src.conf),

b) The host is capable of using ZFS (e.g. kernel modules are built and
installed but are not loaded),

c) The host has the kernel modules loaded but are not actually in use
(e.g. zfs_enable="yes" in rc.conf but no ZFS filesystems defined),

d) The host has the kernel modules loaded and actively has ZFS
filesystems in use.


Recommendations (meaning you get to use a combination of these to create
proper logic depending on what you want -- please keep in mind what I
just said about using /sbin/zpool and so on however):

1) Check for the existence of /sbin/zfs (e.g. if [ -x ... ]).  If it
exists, the system was built without WITHOUT_{ZFS,CDDL,CTF} set.  (Sorry
for the double negative).

2) Use "sysctl -n vfs.zfs.version.zpl" and check exit code.  If 1, the
kernel modules are not loaded, else they are.

3) Run "/sbin/zpool list -H" and see if there's any output.  If there
is, there are pools defined, which means in some way or another ZFS is
being used by the system.  (Note that I recommend using /sbin/zpool not
/sbin/zfs, because zpool (for me anyway) takes less time and if there's
a pool there is going to be a filesystem (even if -omountpoint=none)
that shows up /sbin/zfs).

Note that this WILL result in the kernel modules being loaded.
Depending on what the OP wants, you could use "/sbin/mount | grep zfs"
instead, but that won't catch one situation: where all ZFS filesystems
are mountpoint=none.

Footnote: do not do silly things like grep /etc/src.conf for WITHOUT_xxx
features, or /etc/rc.conf for whatever; an admin may have set these in
advance for the next {build,install}{world,kernel} which have yet to be
run.  Parsing/checking config files is not going to suffice.

--
| Jeremy Chadwick   j...@koitsu.org |
| UNIX Systems Administratorhttp://jdc.koitsu.org/ |
| Mountain View, CA, US|
| Making life hard for others since 1977. PGP 4BD6C0CB |

___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"

_
The information contained in this message is proprietary and/or confidential. 
If you are not the intended recipient, please: (i) delete the message and all 
copies; (ii) do not disclose, distribute or use the message in any manner; and 
(iii) notify the sender immediately. In addition, please be aware that any 
message addressed to our domain is subject to archiving and review by persons 
other than the intended recipient. Thank you.
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"


Re: How to add zfs support to FreeBSD

2013-02-19 Thread Jeremy Chadwick
On Tue, Feb 19, 2013 at 09:09:07AM +, Teske, Devin wrote:
> 4. lsvfs output?
> -- 
> Devin
> 
> 
> From: owner-freebsd-questi...@freebsd.org 
> [owner-freebsd-questi...@freebsd.org] on behalf of Jeremy Chadwick 
> [j...@koitsu.org]
> Sent: Tuesday, February 19, 2013 12:16 AM
> To: freebsd-questions@freebsd.org
> Cc: fb...@a1poweruser.com; free...@edvax.de
> Subject: Re: How to add zfs support to FreeBSD
> 
> Regarding all the recommendations on "how to determine if ZFS is
> available on the system":
> 
> Do not run commands like /sbin/zfs or /sbin/zpool right off the bat.
> This will result in the underlying kld bits dynamically loading zfs.ko
> and opensolaris.ko on the fly -- even if there aren't any ZFS
> filesystems used -- which takes up kernel memory.  This also generates
> crap on the console, and I can assure you an SA running some script is
> not expecting this.  (An example is a system I admin which does not use
> ZFS, but I often forget that fact and type "zpool status" as root by
> accident, which loads ZFS, etc. -- I ended up using WITHOUT_CDDL on that
> system just to keep that from happening ;-) ).
> 
> The OP needs to define what he means by "enabled on the host".  This
> could mean:
> 
> a) The host actually has ZFS compiled or not (e.g. WITHOUT_ZFS and/or
> WITHOUT_CDDL and/or WITHOUT_CTF are not defined in src.conf),
> 
> b) The host is capable of using ZFS (e.g. kernel modules are built and
> installed but are not loaded),
> 
> c) The host has the kernel modules loaded but are not actually in use
> (e.g. zfs_enable="yes" in rc.conf but no ZFS filesystems defined),
> 
> d) The host has the kernel modules loaded and actively has ZFS
> filesystems in use.
> 
> 
> Recommendations (meaning you get to use a combination of these to create
> proper logic depending on what you want -- please keep in mind what I
> just said about using /sbin/zpool and so on however):
> 
> 1) Check for the existence of /sbin/zfs (e.g. if [ -x ... ]).  If it
> exists, the system was built without WITHOUT_{ZFS,CDDL,CTF} set.  (Sorry
> for the double negative).
> 
> 2) Use "sysctl -n vfs.zfs.version.zpl" and check exit code.  If 1, the
> kernel modules are not loaded, else they are.
> 
> 3) Run "/sbin/zpool list -H" and see if there's any output.  If there
> is, there are pools defined, which means in some way or another ZFS is
> being used by the system.  (Note that I recommend using /sbin/zpool not
> /sbin/zfs, because zpool (for me anyway) takes less time and if there's
> a pool there is going to be a filesystem (even if -omountpoint=none)
> that shows up /sbin/zfs).
> 
> Note that this WILL result in the kernel modules being loaded.
> Depending on what the OP wants, you could use "/sbin/mount | grep zfs"
> instead, but that won't catch one situation: where all ZFS filesystems
> are mountpoint=none.
> 
> Footnote: do not do silly things like grep /etc/src.conf for WITHOUT_xxx
> features, or /etc/rc.conf for whatever; an admin may have set these in
> advance for the next {build,install}{world,kernel} which have yet to be
> run.  Parsing/checking config files is not going to suffice.

That's a pretty awesome command, one which I've never heard of --
probably because it's only mentioned in these, and only these:

df(1)
find(1)
mount(2)
nmount(2)
umount(2)
jail(8)

Not even in mount(8), VFS(9), extattr(9), or any other man page one
might think be relevant.  Strange, considering it's existed since
FreeBSD 2.0 (!).

-- 
| Jeremy Chadwick   j...@koitsu.org |
| UNIX Systems Administratorhttp://jdc.koitsu.org/ |
| Mountain View, CA, US|
| Making life hard for others since 1977. PGP 4BD6C0CB |
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"