FreeSBIE 2.0 Release Notes, Handbook and FAQ

January 2007

FreeBSD is a registered trademark of the FreeBSD Foundation.

The release notes for FreeSBIE 2.0 contain information about what FreeSBIE is, how to use it, what software can be found in it, and plans for future development.


Table of Contents
1 Welcome to FreeSBIE 2.0 !
2 Using FreeSBIE 2.0
3 TODO List for the next FreeSBIE release
4 Donations
5 Thanks go to..
6 Frequently Asked Questions
7 Installed Packages
8 Last words
9 License

1 Welcome to FreeSBIE 2.0 !

Dear user, the FreeSBIE staff is proud to welcome you to the latest result of its work: FreeSBIE 2.0, based on FreeBSD 6.2-RELEASE. The last FreeSBIE release dates back to December 6th 2004 and FreeBSD 5.3-RELEASE. The toolkit used to produce the ISO images went through a complete rewrite thanks to Google Summer of Code 2005. Due to lack of time and enthusiasm we are able to deliver FreeSBIE 2.0 only more than a year later. We want to thank everybody for their support and you in particular since you are using our software. Feel free to send us any idea, comment, bug report, complaint about FreeSBIE 2.0 because our users' opinion is really important for us to offer you the best FreeSBIE experience we can.

In the next sections we offer you a tour around FreeSBIE 2.0: what its features are and how to use them.

You should understand that what you see is nothing more and nothing less than a complete FreeBSD system, running from your CD-ROM drive. If you need additional information about FreeBSD, you should consider reading the FreeBSD Handbook.


2 Using FreeSBIE 2.0

Let's start from the beginning. Somehow you got a CD-ROM with the writing "FreeSBIE 2.0" on it. You may have downloaded the ISO image yourself, or a friend of yours gave you that CD-ROM saying "Try it!" or you just ended up with that CD-ROM without any evident cause. We do not know and do not care about it. We would like you to just use it and we are here to explain to you how to use it.


2.1 Booting is all about cheating

Insert the CD-ROM in the drive, switch your computer on and boot from the CD-ROM. You should see a menu like the one in the following image:

This is the first FreeSBIE Boot Menu (since it is the first, you can easily imagine that there will be another one later). If you just want to boot FreeSBIE without changing the default values it uses for its configuration parameters, just press 1 or wait 10 seconds. If you feel brave or just want to tune FreeSBIE to fit your needs, press 2 and the second (and last) FreeSBIE boot menu will be drawn on the screen. For a moment, let's suppose you pressed 1: now you see a new menu which you should be familiar with if you ever used FreeBSD before. The menu you see should be similar to the one in the image:

You should not bother to understand all listed options: they are for advanced users and will not be described here; if you need them, you know their meaning, otherwise you just do not need them. To eventually boot FreeSBIE 2.0, press 1 or wait 10 more seconds.

On the other hand, if you pressed 2 at the first boot menu, the screen will look like the following image:

You may wonder why this section's title is "Booting is all about cheating". Now we will try to explain this assertion. FreeSBIE has many parameters which can be tweaked: localization, memory filesystem disks' sizes, window manager to use. Well, not too many, but at least "some". Tweaking these parameters could really improve your FreeSBIE experience. We are not going to describe every parameter in this document but the following table may be of help. Type help cheatcodes and press Enter at the OK prompt to get additional information.

Cheatcode Accepted Values Brief Description
freesbie.backup yes, no, device  
freesbie.lang bg, cz, cs, de, en, es, fr, it, pl, ru, sk, ua Set the system localization: language, keymap, charset and so on.
freesbie.mountdisks yes, no Mount any slices found on local disks. Read Section 2.3 for additional information.
freesbie.wm fluxbox, xfce4 Start the selected window manager after the boot.
freesbie.{etc,usrlocaletc,root,home,var,tmp}size XXm Set the size of the corrisponding md(4) disk. Size should be specified in megabytes with an "m" at the end.

Here we are: FreeSBIE 2.0 is booting! The following image will appear on your screen:

This image will hide any boot message. Press any key to hide the image and show the messages. When the boot process is completed, the freesbie user is automatically logged in on the first pseudo-terminal, as shown in the following image:


2.2 From the console to the window manager and back again

Now you have FreeSBIE up and running on your machine, so we can start the all-around tour.

FreeSBIE is equipped with two window managers, that is, two "graphical interfaces": Xfce and FluxBox. The following images show how these two different window managers look in FreeSBIE 2.0. Additional screenshots can be found on the FreeSBIE website.

The default window manager is Xfce, but you can easily switch to FluxBox by modifying the /home/freesbie/.xinitrc file. All you have to do is change the line exec startxfce to exec fluxbox.

Starting the window manager is as simple as typing startx on the command line.

Warning: If you think that FreeSBIE did not pick up the correct resolution for your monitor, read Section 6.1.


2.3 Mounting your disks

FreeSBIE can be used in many different situations but quite often it reveals its usefulness as a Rescue and Recovery tool: your machine boots from the FreeSBIE CD-ROM and you get a working system to recover the one installed on the hard disks of your machine. To accomplish this task you need to mount your hard disks. FreeSBIE can do this for you: the script /usr/local/sbin/mountdisks can mount your FAT16/32, UFS2, EXT2FS, ReiserFS slices and partitions up to a number of 8 per filesystem type. To use it, run it as the user freesbie with the following command:

% sudo mountdisks rw
If you want your slices/partitions to be mounted in read-only mode, replace rw with ro. Partitions and slices are mounted on subdirectories of the /mnt/ directory.


2.4 Backing Up and Restoring your Data

FreeSBIE uses a memory disk to store data. This means that once you have switched your machine off, any data you saved during the FreeSBIE session gets lost. This is not always what you want, so we introduced a tool which makes data backup easy: /usr/local/bin/savebackup. This script reads the file /etc/backup.lst, creates an archive containing the data you chose to back up and put it on a device you specified.

Let's take a closer look at the details. First of all, what is /etc/backup.lst supposed to be? This file contains a list of files or directories you want to back up. Just list them one per line and you are done. If you want to back up a directory but not back up a file or a subdirectory in it, add a line with a "-" followed by the name of that file or directory. An example list can be found in /etc/defaults/backup.lst.

Once you have written the list of files to be backed up, the script can be launched with

% sudo savebackup da0s1
In this case, we specified da0s1 as the slice where to store the backed up data. You can specify any slices you want, as long as it is formatted with a filesystem writable by FreeBSD.

You may wonder where your backup is stored. The answer is: it is the compressed archive freesbie_YYYYMMDD_HHMM in the FreeSBIE directory of the slice you specified when you backed up your data; the date and time in the filename are those of archive creation.

To restore your data, use the /usr/local/sbin/restoredata script. Please note that during the boot process FreeSBIE will look for backup archives on your disks and will try to restore your data automatically.

Note: FreeSBIE will check for backup archives only on your removable media. Use the freesbie.backup cheatcode to specify the device where backup archives should be looked for.


2.5 Using Tor and Privoxy under FreeSBIE

Privacy is important and that is a fact. You should not want to let other people know what you do every moment of your life. Nor you want other people to know what websites you visited, where did you came from and so on. The same applies for other internet services: SSH, IRC, and so on. Two pieces of software can give you a hand in increasing your privacy level online: Tor and Privoxy. Tor works on your network connections and encripts and redirect them to different routers on the Internet to make your provenience virtually impossible to recognize. Privoxy is used to increase the privacy level as far as HTTP is concerned. They are commonly used together and we chose to include both in the liveCD. The PF packet filter included in FreeBSD is used to redirect outgoing TCP connections into Tor to protect applications that are not already configured to use Privoxy or Tor directly. As we know that their correct configuration is not so easy and that many of you may be interested in just giving them a try without having to lose time for their configuration, we included a script which allows you to turn this beautiful couple on and off: /usr/local/bin/freesbie_tor. The table shows the accepted parameters and their meaning.

Parameter Meaning
start Enable Privoxy, Tor and the PF packet filter, needed to intercept outgoing connections and route them through Tor.
stop Stop Privoxy and Tor and disable PF.
wl / whitelist address Add address to the table of sites to which connections should not been redirected through Privoxy and Tor. address can be both an IP address or a full qualified name.
bl / blacklist address Remove address to the table of sites to which connections should not been redirected through Privoxy and Tor. address can be both an IP address or a full qualified name.

3 TODO List for the next FreeSBIE release

The following is a list of items which just did not make it into this release. If a release could have all the features needed by the users and all the features wished for by the developers, there would not be any future release.


4 Donations

Did you like FreeSBIE 2.0 and want to express your "Thanks Guys!" in a concrete way? What about making a donation to the FreeSBIE Project? The following is a list of hardware we would like to receive to improve FreeSBIE even more. The first three items in particular will be really useful since FreeSBIE development is heading towards making embedded FreeBSD possible. If you think we are trustworthy and would like to contribute in some way, contact staff@freesbie.org or one of the developers. Thanks in advance!


5 Thanks go to..

The FreeSBIE Staff want to thank (in no particular order):


6 Frequently Asked Questions

6.1 The monitor does not use the correct resolution!

This problem is caused by the X.org server unable to communicate correctly with your monitor. You can try to solve this by editing /etc/X11/xorg.conf: look for the Monitor section and follow the instructions.


6.2 Can I install FreeSBIE 2.0 on my hard disk?

Short answer: no. Long answer: FreeSBIE 1.1 had BSDInstaller installed, thus it was possible to install FreeSBIE 1.1 on a hard disk. Due to lack of time, resources and interest, FreeSBIE 2.0 does not offer this feature. Nevertheless, since FreeSBIE is nothing more than FreeBSD on a Live CD you can install FreeBSD, take FreeSBIE's configuration files and copy them to the installed FreeBSD system.


7 Installed Packages

Thanks to FreeBSD's geom_uzip(4) feature, FreeSBIE 2.0 includes more than 450 pieces and 1,3 gigabytes of software. We tried to include at least one piece of software for every task we think of. There will be always be something missing: feel free to suggest additional packages to include in future releases. The following is a table of software packages included in FreeSBIE 2.0. Please note that this list includes only the "main" packages and does not include dependencies. If you want a complete list of installed ports, look in the /pkg_info.txt file on the LiveCD.

Package Name Origin
915resolution sysutils/915resolution
abiword editors/abiword
abiword-plugins editors/abiword-plugins
aircrack-ng net-mgmt/aircrack-ng
aMule net-p2p/amule2
ap-utils net-mgmt/ap-utils
arpwatch net-mgmt/arpwatch
audacity audio/audacity-devel
bacula-client sysutils/bacula-client
bash shells/bash
bsd-airtools net-mgmt/bsd-airtools
bsdproxy net/bsdproxy
beep-media-player-esound multimedia/beep-media-player
bmp-scrobbler audio/bmp-scrobbler
bmp-faad2 audio/bmp-faad
bmp-crossfade audio/bmp-crossfade
bmp-wma audio/bmp-wma
bmpx multimedia/bmpx
buffer misc/buffer
bvi editors/bvi
cabextract archivers/cabextract
cdrtools sysutils/cdrtools
cgoban games/cgoban
chillispot net-mgmt/chillispot
chkrootkit security/chkrootkit
clamav security/clamav
conky sysutils/conky
corkscrew net/corkscrew
cpdup sysutils/cpdup
cpuburn sysutils/cpuburn
crack security/crack
cups print/cups
curl ftp/curl
cwdaemon comms/cwdaemon
distcc devel/distcc
dns-proxy-tor security/dns-proxy-tor
e2fsprogs sysutils/e2fsprogs
easytag-devel audio/easytag-devel
ekiga net/ekiga
elinks www/elinks
eject sysutils/eject
emacs editors/emacs
etherape net-mgmt/etherape
ettercap-gtk2 net-mgmt/ettercap
evince graphics/evince
fetchmail mail/fetchmail
firefox www/firefox
firewalk security/firewalk
fluxbox x11-wm/fluxbox
fping net/fping
freeradius net/freeradius
frozenbubble games/frozenbubble
gaim net-im/gaim
gdesklets deskutils/gdesklets
gftp ftp/gftp
gimp graphics/gimp
gnome-control-center sysutils/gnome-control-center
gnuchess games/gnuchess
gnugo games/gnugo
gnumeric math/gnumeric
gnupg security/gnupg
gphoto2 graphics/gphoto2
gpredict comms/gpredict
gqview graphics/gqview
grdesktop net/grdesktop
grig comms/grig
gthumb graphics/gthumb
gtkam-gnome graphics/gtkam
gtkpod audio/gtkpod
gv print/gv
healthd sysutils/healthd
hping net/hping
hydra security/hydra
i855vidctl sysutils/i855vidctl10
ike-scan security/ike-scan
ImageMagick graphics/ImageMagick
inkscape graphics/inkscape
irssi irc/irssi
joe editors/joe2
john security/john
kismet net-mgmt/kismet
ksh93 shells/ksh93
lighttpd www/lighttpd
lsof sysutils/lsof
magicpoint misc/magicpoint
mc misc/mc
mplayer multimedia/mplayer
mplayer-fonts multimedia/mplayer-fonts
mplayerplug-in www/mplayer-plugin
mutt mail/mutt
nagios net-mgmt/nagios
nagios-plugins net-mgmt/nagios-plugins
nano editors/nano
netsed net/netsed
netwox net-mgmt/netwox
ngrep net/ngrep
nikto security/nikto
nmap security/nmap
nmapfe security/nmapfe
ntfsprogs sysutils/ntfsprogs
ntop net/ntop
nut sysutils/nut
nut-usb sysutils/nut-usb
obexapp comms/obexapp
openvpn security/openvpn
outguess security/outguess
pftop sysutils/pftop
pine mail/pine4
playmidi audio/playmidi
privoxy-devel www/privoxy-devel
progsreiserfs sysutils/progsreiserfs
proxy-connect sysutils/proxy-connect
pwcbsd multimedia/pwcbsd
pwd_unmkdb sysutils/pwd_unmkdb
p0f net-mgmt/p0f
rainbowcrack security/rainbowcrack
rkhunter security/rkhunter
rox x11-fm/rox-filer
rsync net/rsync
ruby lang/ruby18
ruby18-gems devel/ruby-gems
s3switch graphics/s3switch
samba net/samba3
screen sysutils/screen
scite-gtk2 editors/scite
slrn news/slrn
smartmontools sysutils/smartmontools
snort security/snort
socat net/socat
sqlite databases/sqlite3
stunnel security/stunnel
sudo security/sudo
thunderbird mail/thunderbird
tightvnc net/tightvnc
tlf comms/tlf
tor-devel security/tor-devel
transmission-gtk2 net-p2p/transmission-gtk2
trickle net/trickle
twpsk comms/twpsk
unicornscan security/unicornscan
unrar archivers/unrar
unzip archivers/unzip
urwfonts-ttf x11-fonts/urwfonts-ttf
vcp sysutils/vcp
vim-gtk2 editors/vim
vlock security/vlock
wget ftp/wget
wipe security/wipe
wireshark net/wireshark
wistumbler2 net/wistumbler2
wol net/wol
xastir comms/xastir
xbindkeys x11/xbindkeys
xbindkeys_config x11/xbindkeys_config
xchat irc/xchat
xfce x11-wm/xfce4
xfce4-battery-plugin sysutils/xfce4-battery-plugin
xfce4-mixer audio/xfce4-mixer
xfce4-netload-plugin sysutils/xfce4-netload-plugin
xfce4-systemload-plugin sysutils/xfce4-systemload-plugin
xfce4-xkb-plugin deskutils/xfce4-xkb-plugin
xfsprogs sysutils/xfsprogs
xlockmore x11/xlockmore
xorg-clients x11/xorg-clients
xorg-fonts-100dpi x11-fonts/xorg-fonts-100dpi
xorg-fonts-75dpi x11-fonts/xorg-fonts-75dpi
xorg-fonts-encodings x11-fonts/xorg-fonts-cyrillic
xorg-fonts-miscbitmaps x11-fonts/xorg-fonts-miscbitmaps
xorg-fonts-truetype x11-fonts/xorg-fonts-truetype
xorg-server x11-servers/xorg-server
xpdf graphics/xpdf
xsane graphics/xsane
xwota comms/xwota
xscreensaver-gnome x11/xscreensaver-gnome
zebra net/zebra
zip archivers/zip
zsh shells/zsh

8 Last words

This LiveCD was brought to you by the FreeSBIE team.

The official website can be found at http://www.FreeSBIE.org.

This document was written to be distributed with the Release 2.0 of FreeSBIE

Enjoy yourself while using FreeSBIE! See you in the next release!


9 License

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE FREEBSD PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.