12

I want to install FreeBSD today on a spare HDD I have lying around. I'd like to give it a trial run, learn a few things, and if it suits me I'll replace my current Ubuntu 10.10 'server/NAS/encoding box' with it. Curiosity is the main reason. I also want to see most of the major bugs ironed out of GNOME 3/Unity before I jump aboard the next Ubuntu iteration.

I have no experience with the BSDs (except for OS X) but I have installed and used quite a few Linux distros over the years. I have a fairly good understanding of how to get Linux up and running, including some of the roll-your-own distros such as Arch. But I'm not an expert by any stretch of the imagination. Basically, I'd say I'm better than my grandma is.

So is there anything that I should keep in mind when installing FreeBSD for the first time? In particular, are there any major differences between installing and setting up FreeBSD and a Linux distro? Furthermore, should I be using a i386 release? I read somewhere in the documentation that i386 is recommended but I'm not sure if that's out-of-date information.

boehj
  • 2,630
  • 5
    It's difficult to know what to say. Obviously, there are differences, but will they be where you expect them? maybe, maybe not. Read the FAQ and the handbook (one piece at a time, of course). Don't always expect things to work exactly the same — it's a different OS after all. You might prefer to start in a VM, so you can do things like browse the web for information if you get stuck. – Gilles 'SO- stop being evil' Apr 16 '11 at 23:51
  • OK, that's fair enough. I'm happy that there's nothing that really stands out. The VM idea is a good one. I'm still keen to see if anyone has any other suggestions about things that caught them out first time. Perhaps there won't be any. – boehj Apr 17 '11 at 00:04
  • Using the handbook cannot be emphasized enough. Most answers to forum questions will almost always refer you to the handbook. Also, with all due respect to those here, you should visit http://forums.freebsd.org/ . – Rob Apr 17 '11 at 11:53
  • I'm having a read through the handbook now actually. Have been all day. Full of good info. – boehj Apr 17 '11 at 13:33
  • Still reading... Lots of good stuff in there. – boehj Apr 20 '11 at 00:50

3 Answers3

8

You will notice differences certainly. Most noticable will be differences in the standard userland utilities. FreeBSD does not use GNU ls, GNU cp, and so on. For example, if you're attached to a colorized ls, you may want to alias ls to "ls -G". It does use GNU grep, though. The default shell is a much simpler and less bloated shell than GNU Bash, which is the default on most Linux distributions. If you are attached to bash, that may be one of the first packages you will want to install. The ports system has been the standard way to install software on the various BSDs. Ports downloads the source code, builds it, and then installs it. It's nearly entirely automatic. To install bash, for example, do this as root:

cd /usr/ports/shells/bash && make install && make clean

If you don't do a make clean at the end, you will leave the built source code lying in the ports tree. Many ports have pre-built packages that can be downloaded if you prefer not to waste time building it and don't need to customize it. To install bash as a package, this should do it:

pkg_add -r bash

You can find most any common program in ports including Gnome 3, sudo, rsync, or what ever else you need. A great website for navigating ports is FreshPorts. You also should get familiar with the FreeBSD Handbook.

cjm
  • 27,160
penguin359
  • 12,077
  • If you've used Gentoo, portage is based on the concept of ports from BSD. – penguin359 Apr 17 '11 at 09:19
  • But don't make installing bash the first thing you do. As noted, sh is the default shell and others are used more often than you'll see bash. – Rob Apr 17 '11 at 11:51
  • Thanks for this info. I've left off doing the install until I've ploughed through the handbook. Sounds like I'll be making lots of aliases. :) – boehj Apr 17 '11 at 13:58
  • @boehj I do recommend learning the native FreeBSD commands, but I don't want these differences to scare you off. When I first installed FreeBSD, I realized just how user-friendly Linux was with all the customizations Linux distributors make to Linux and their choice of software. FreeBSD is still easier to get used to then a standard Solaris install from my experience. – penguin359 Apr 17 '11 at 17:18
3

First difference you'll probably notice is that C shell is the default shell. After that, you'll notice that GNU bash is not installed.

If you do any programming (or building from source) you'll notice that GNU make is not installed, but rather BSD make.

Lastly - and this is a goodie - every command is documented in the man pages. No more "undocumented" pages from Debian, and no more missing man pages as in Red Hat and others. FreeBSD is the best documented of all of them - possibly even better than the other BSDs.

One more thing: FreeBSD doesn't really use its package capabilities at all; the preference is to use FreeBSD ports and build a package to suit your current environment.

Mei
  • 1,136
2

Having never used any BSDs myself, I would say the differences are likely to be limited to the kernel rather than the applications. In other words, you will still be able to run the same applications you're used to (e.g. Firefox, or even just bash), but lower-level things will be different (device names in /dev for example, or the commands used to set firewall rules.)

I suspect once you got the system up and running the 'big' things would work in much the same way, but you'd find a bit of a learning curve trying to figure out how to configure some of the little things!

Doing something like this however is always a worthwhile exercise, as the knowledge you gain from it will surely come in handy one day (even if it's just having experience teaching yourself something new!)

Malvineous
  • 6,883