(2 replies, posted in FreeBSD)

Kernel.OK turned out to be the one. I did this:

# mv kernel kernel.BAD
# mv kernel.OK kernel

Rebooted and all was back to normal.


(2 replies, posted in FreeBSD)

Hi all,

I built a custom kernel on my FreeBSD 8.2-RELEASE server and it failed to boot. I'd like to revert to the previous kernel.

I see the following directories in /boot:


If I simply copy kernel.OK to kernel will this be sufficient?


I've found a web page that is pointing me in the right direction:

4.2 POST

  The GET method makes all input field names get displayed in the URL field of
  your browser. That's generally a good thing when you want to be able to
  bookmark that page with your given data, but it is an obvious disadvantage
  if you entered secret information in one of the fields or if there are a
  large amount of fields creating a very long and unreadable URL.

  The HTTP protocol then offers the POST method. This way the client sends the
  data separated from the URL and thus you won't see any of it in the URL
  address field.

  The form would look very similar to the previous one:

        <form method="POST" action="junk.cgi">
          <input type=text name="birthyear">
          <input type=submit name=press value=" OK ">

  And to use curl to post this form with the same data filled in as before, we
  could do it like:

        curl -d "birthyear=1905&press=%20OK%20" www.hotmail.com/when/junk.cgi

  This kind of POST will use the Content-Type
  application/x-www-form-urlencoded and is the most widely used POST kind.

  The data you send to the server MUST already be properly encoded, curl will
  not do that for you. For example, if you want the data to contain a space,
  you need to replace that space with %20 etc. Failing to comply with this
  will most likely cause your data to be received wrongly and messed up.

(from: Using cURL to automate HTTP jobs)

but I am having a little difficulty which name/value parameters to pass with the "-d" option.

Hi all,

I use a Copperjet ADSL/VoATM modem from Allied Data for my internet connection. I have it configured for ZIPB mode, which is a kind of half-bridge setup, whereby my FreeBSD gateway/server shares the external IP.

I am assigned a dynamic IP number by my ISP. I poll the Copperjet every file minutes with the following line in a script ("copperjet" is listed in my /etc/hosts file):

 curl http://$cjtuser:$cjtpass@copperjet/status.html 2> /dev/null | grep -A 1 "WAN IP Address:" | tail -1 | cut -b6- | awk -F '<' '{ print $1 }'

This scrapes the current IP from the "status" webpage; when it changes, I update my DNS records via dnsomatic.

Alas, on acount of limitations in the way it is implemented in the Copperjet, I have to disable and reenable ZIPB in order for the FreeBSD box to get the external IP. To do this interactively, I click on a button called "Disable" on the respective web page, then "Enable". Here is the relevant HTML:

 <FORM method="post" ACTION="/configuration/zipb.html/disable">
       <INPUT type="hidden" name="EmWeb_ns:vim:4.ImZipbAgent:enabled" value="false">
       <INPUT type="hidden" name="EmWeb_ns:vim:3" value="/configuration/zipb.html">
       <INPUT type="submit" value="Disable">

When I try to do this with curl I get an error message:

$ curl http://$cjtuser:$cjtpass@copperjet/configuration/zipb.html/disable                                                                     
405 Method Not Allowed

Anyone know how to manage a "post" action in a script?


1. Thanks

2. OK, I've updated the portsdb database, but what is the next step? How do I query it and compare my installed  versions? When I run that second command it doesn't tell me anything particulary useful:

$ portversion -v -l "<"
[Updating the portsdb <format:bdb_btree> in /var/tmp ... - 18137 port entries found .........1000.........2000.........3000.........4000.........5000.........6000.........7000.........8000.........9000.........10000.........11000.........12000.........13000.........14000.........15000.........16000.........17000.........18000. ..... done]


(1 replies, posted in System Administration)

If you don't know what you are looking for, how can you possibly analyze your logs in a meaningful way?

Why not let newsyslog rotate and eventually discard logs you aren't interested in; those you want to keep but don't know why, copy them periodically to a dir in your ~. You can always run grep and awk on them later.

If you are interested in what's in your postfix maillogs, you can trying running pflogsumm on a regular basis (it is in the ports).

Hi all,

I've been running FreeBSD a little over a year, and I am still coming to grips with some of the nuances of working with ports.

First, I need to recompile postfix with certain options. However, when I run "install make clean" it appears to use a previous configuration, rather than displaying the curses dialog where I can modify the compile options. I have poked around the postfix port dir, but it is not immediately obvious what is causing this behaviour.

Second, one of the ports is not up to date. On another forum, one of the program's devs told me he would send a note to the maintainer asking him to update it. What is the easiest way to find out if a port has been updated? Should I run cvsup (nightly) or is there another way? I am running portaudit, so I get notified of security updates, but I am curious how others manage non-security-related updates.