How does /dev/pf get created?

Gavin Spomer spomerg at cwu.EDU
Fri Jan 25 11:10:31 PST 2008


>>> Jeremy Chadwick <koitsu at FreeBSD.org> 01/25/08 10:05 AM >>>
On Fri, Jan 25, 2008 at 09:54:19AM -0800, Gavin Spomer wrote:
> I followed your instructions to a "T" and then after I rebooted, I double checked everything to make sure I didn't do
>    anything stupid. Still no /dev/pf. Running kldstat still shows that pf.ko didn't get loaded. Trying to load it via your
>    instructions (kldload -v pf) I get:
> 
>       kldload: can't load pf: No such file or directory
This would indicate that /boot/kernel/pf.ko is missing.  It doesn't
appear it was built during your last buildkernel/installkernel.


   Yes, you're quite correct. Oddly enough, I remember that when I had the pf stuff in my kernel config, pk.ko DID exist in
   /boot/kernel. THAT doesn't make much sense.


An example of kldload working properly: [deleted text]


   Your example made complete sense to me. Thanks.


>    When I ran this before following your instructions I got something like: (I'm doing this partially from memory)
>       kldload: can't load pf.ko: File exists 
>    That doesn't make a lick of sense to me.
This is what kldload will say (for most modules) when you already have
said module built in to the kernel.  The kernel module utilities on
FreeBSD are not very "user-friendly" when it comes to error messages;
your confusion in this regard is nothing to be ashamed of.


    No shame here. I just LOVE to point out retarded error messages! ;)


If /dev/pf isn't being created despite pf being built-in, it could
indicate some strange bug in the pf module (where it prefers to be
loaded as a kernel module), OR, a problem with devfs (the filesystem
that controls /dev on FreeBSD) on your machine.
Can you provide the output of df, and the contents of /etc/fstab?

   df: (with -h)
      Filesystem     Size    Used   Avail Capacity  Mounted on
      /dev/da0s1a    496M     75M    381M    16%    /
      devfs          1.0K    1.0K      0B   100%    /dev
      /dev/da0s1e    496M    222K    456M     0%    /tmp
      /dev/da0s1f    256G    2.8G    233G     1%    /usr
      /dev/da0s1d    4.1G    141M    3.6G     4%    /var

   /etc/fstab:
      # Device                Mountpoint      FStype  Options         Dump    Pass#
      /dev/da0s1b             none            swap    sw              0       0
      /dev/da0s1a             /               ufs     rw              1       1
      /dev/da0s1e             /tmp            ufs     rw              2       2
      /dev/da0s1f             /usr            ufs     rw              2       2
      /dev/da0s1d             /var            ufs     rw              2       2
      /dev/acd0               /cdrom          cd9660  ro,noauto       0       0

>    Thanks for taking the time to help this quasi-newbie. :)
No problem.  It's a learning experience, and over time you'll eventually
be able to help others.  :-)

   Thanks, I believe you. There's a lot of things that I know inside and out now that were completely foreign to me when I
   started with them. Some good examples are EZProxy and Greenstone. Two very untraditional pieces of software of which
   I now answer other people's questions on their respective lists. :)

   - Gavin


More information about the freebsd-pf mailing list