Slashdot Mirror


FreeBSD 10.0 Released

An anonymous reader writes "FreeBSD 10.0 has been released. A few highlights include: pkg is now the default package management utility. Major enhancements in virtualization, including the addition of bhyve, virtio, and native paravirtualized drivers providing support for FreeBSD as a guest operating system on Microsoft Hyper-V. Support for the high-performance LZ4 compression algorithm has been added to ZFS and TRIM support for SSD has been added to ZFS. clang is the default compiler. This release has official Raspberry Pi support. For a complete list of new features and known problems, please see the online release notes and a quick FreeBSD installation video is here. FreeBSD 10.0-RELEASE may be downloaded via ftp or via a torrent client that supports web seeding."

31 of 136 comments (clear)

  1. Outstanding by Anonymous Coward · · Score: 4, Interesting

    Good to hear. I'm sure I'm not the only one who really likes the BSDs in general. After almost 20 years in the IT biz, I would still choose FreeBSD or OpenBSD for my server needs for almost anything over almost anything. I've never been disappointed in the service of either BSD variant. Kudos to the FreeBSD devs!

    1. Re:Outstanding by Anonymous Coward · · Score: 3, Informative

      ZFS is reason alone to use BSD in critical data storage situations, as far as I'm concerned.

      Linux ZFS implementation is severely lacking in stability and features.

      Of course, some Oracle products have ZFS features that BSD in turn lacks, but I can do without those.

  2. Re: VMware tools included by Anonymous Coward · · Score: 2, Informative

    In 10.0, "pkg install open-vm-tools" should work. There are a few issues, but we're waiting on fixes from upstream for those.

  3. Re:I wish FreeBSD had a decent VM server/hyperviso by Bengie · · Score: 4, Informative

    bhyve is technically a type 2, but it makes use of the HW acceled instructions that Type 1s normally use. bhyve is more a of a hybrid between 1 and 2, with more of a bias towards 2. Because of this, it is not very friendly with many Type 2 guests because it lacks legacy support and it's not a true Type 1, so it still needs proper interfaces, but it is faster, lighter weight, and uses about 10x fewer lines of code than most, so it is easy to debug and prove security.

  4. Actually 10.0 is pretty good... by drussell · · Score: 3, Informative

    I've been using 10.0-PRELEASE for most things here for a while and it works well... Watch the package system change though if you're upgrading a really old system and used to just using things like portupgrade, I'm still trying to get one of my old 8.something boxes ports all updated properly, though that's probably mostly my fault for being sloppy and not reading ports/UPDATING carefully enough :) The 10.0 kernel and userland themselves are working perfectly and it was a pain free transition all the way from 8 on that box.

    1. Re:Actually 10.0 is pretty good... by TheRaven64 · · Score: 2

      With 10.0, you most likely want to be using binary packages, either from FreeBSD.org, or by rolling your own with poudriere. If you're used to using ports with custom options, the best thing to do is install poudriere and put all of the configuration options in a make.conf, dump the installed package list to a file, and then use poudriere bulk to build that set. You can then point pkg at the local repository and install things. Ideally, make a cron job that updates the ports tree and reruns the build overnight, so you can update whenever you want.

      --
      I am TheRaven on Soylent News
  5. Re: pkg is the default "binary" package by Galactic+Dominator · · Score: 4, Informative

    pkg IS the default package management utility

    pkgng is the project which spawned pkg * replacing the previous pkg_* tools

    http://www.freebsd.org/cgi/man.cgi?query=pkg&apropos=0&sektion=0&manpath=FreeBSD+10.0-RELEASE&arch=default&format=html

    --
    brandelf -t FreeBSD /brain
  6. Re:Quality vs OpenBSD? by ThorGod · · Score: 2

    With the recent OpenBSD news many people claim OpenBSD has much cleaner code and can be kept more secure as a result. Is this just FUD or is there some evidence that FreeBSD accepts horrible performance patches and so on?

    They're different projects with different emphasis. I think it's just a "us and them" type thing.

    --
    PS: I don't reply to ACs.
  7. Re:Quality vs OpenBSD? by Anonymous Coward · · Score: 3, Interesting

    OpenBSD does have cleaner code because they continually audit their code. It's the only way. OpenBSD also does not allow binary blobs, which in today's world would be the height if stupidity because you cannot validate what is in them, view their source, to whom they may communicate with unbeknownst to you. Clean, open source viewable code is a must to establish and maintain trust. Binary blobs and the recent Linux model of cooperating with the MS secure boot initiative scares the crap out of many, including myself. I will likely be buying the same machines that RMS uses from this point forward.

  8. Re:VMware tools included by dreamchaser · · Score: 2

    I use qemu now but when I used to use VMWare, I never bothered to install VMWare tools on any guests. It seemed much easier and safer to just use my own script that would use ssh with password less key auth to shutdown, reboot or what not guests.

    Do you really need VMWare tools?

    It depends on one's individual needs. If you want better graphics/sound support, copy/paste support, seamless use of the mouse, and other features then they are great. In practice I only install them some of the time, mostly for desktop type guest OSes.

  9. Re:I wish FreeBSD had a decent VM server/hyperviso by Galactic+Dominator · · Score: 2

    Exactly. Versus a properly configured host, It's a "difference" drummed up out of thin air so they can sell you "security".

    --
    brandelf -t FreeBSD /brain
  10. Re:VMware tools included by Anonymous Coward · · Score: 2, Informative

    Do you really need VMWare tools?

    One of the things the VMware Tools packages offer, apparently, is a kernel shim that allows the guest to inform the host of certain I/O-related things pertaining to filesystem use (ex. file deletions). Otherwise what you end up with is a disk image on the host (of the guest) which continually grows and performs worse and worse the more file creation/expansion/deletion is done on the guest.

    I've yet to see the VMware Tools package work correctly on Linux (particularly Debian). I've tried for years to get the software to work, but it never starts up properly (always in "failed" state on boot). The same situation applies to VirtualBox, as I understand it.

    So even if you're not using X / the GUI on the guest, it's still worthwhile having the Tools installed and used there.

  11. Re:Never use a .0 by Sponge+Bath · · Score: 3, Insightful

    I'll wait for the x.1 release

    Which is fine. Avoiding a rush to implement a .0 release for anything critical is sound advice, regardless of vendor or closed/open source. But if nobody runs it, you do not uncover bugs and you never get a .1 release.

  12. Re:Quality vs OpenBSD? by ducomputergeek · · Score: 4, Informative

    FreeBSD's goal is to create a solid Unix based general server OS. And it's around a lot in the storage markets and routing markets, it's just not usually called FreeBSD. I know more than a few Solaris shops that have been converting over to FreeBSD after the Oracle purchase because FreeBSD had DTrace and ZFS support that Linux didn't have at the time.

    OpenBSD's goal is security above all else.

    --
    "The problem with socialism is eventually you run out of other people's money" - Thatcher.
  13. Re:I wish FreeBSD had a decent VM server/hyperviso by Bengie · · Score: 4, Insightful

    According to wiki: Kernel-based Virtual Machine (KVM) and bhyve are implemented as a kernel modules for Linux and FreeBSD respectively which, when loaded, allows its host operating system to act as a bare metal (i.e., Type 1) hypervisor

    So the only difference is the kernel is not just a hypervisor, but also an OS. If you don't make use of the OS part, it works like a normal Type 1 hypervisor.

  14. NIMFY by epine · · Score: 4, Interesting

    But if nobody runs it, you do not uncover bugs and you never get a .1 release.

    Yeah, we're talking the NIMFY effect: not in my front yard.

    Really, with the .0 releases, if you try to stay fairly mainstream in your deployment, and you're mindfull about the necessary mitigations if it doesn't go well, the risk is not outrageous. But first test your backups.

    If I had to choose between 10.0 (which I hardly know) and 5.3 (all too well known) I'd pick 10.0 in a heartbeat. That series should have started out at 5.-5 (five dot negative five).

    The .0 thing is just a loose heuristic.

    1. Re:NIMFY by Lawrence_Bird · · Score: 5, Insightful

      To each his own but X.0 releases in the BSD world are pretty stable things. Sure, wait a couple weeks just to be on the safe side but if there aren't any real horror stories then upgrade - 10.1 will not be around for some time. BSD is not like Linux - even point releases can be a year apart.

    2. Re:NIMFY by Bengie · · Score: 2

      But first test your backups.

      Always a good idea. Not as good as a back-up, but you can snapshot your current system and rollback to that exact snapshot if bad things happen. One of the beautiful parts of ZFS on root.

    3. Re:NIMFY by archen · · Score: 5, Informative

      I haven't found an elegant way to migrate to iconv going into the base system aside from plowing through a reinstall of ports.

      One laptop I have which is very old has 128Mb of RAM and a P3m. I've never had a problem building the system, until clang entered the picture (which I just worked around in 9x by not building clang). Gcc compiles Gcc fine. Clang compiles Clang fine. Gcc compiling clang hits swap very hard and it literally takes days to compile. It bombed out once or twice, and my last attempt I just decided to let it go even though I thought the system was hung. Since then I've had no problems rebuilding the system, and with clang as the default compiler it takes about as long as before so that appears to have been a one time situation.

      I have a virtualized web server I've had around since 8x. The network interface has always been em0, but with xen support the name changed to xn0 (leading to no networking). As I've never seen the network interface name change, that wasn't an expected issue.

      I'm not 100% sure, but compiling with clang for an AMD Geode (LX) processor using the k6-2 seems to lead to a broken build (which is what I've used with GCC for quite a while) Still working through this at the moment. Plugging the drive into an Athlon X2 and everything works, so I suspect this is the issue.

    4. Re:NIMFY by TheRaven64 · · Score: 3, Informative

      For the P3, I'd recommend using freebsd-upgrade and pkg, unless you really need a custom kernel. You can also do make toolchain on a faster machine and then copy your obj tree across and use the XDEV stuff if you really need to be building kernel and world on it.

      The en0 becoming xn0 thing surprised me too, when I switched from a GENERIC kernel to a XENHVM one on 9.0. With 10.0, I think we're compiling the Xen HVM drivers into the GENERIC kernel, so you'll get the new devices. In the Xen block device drivers, I think there's some extra magic so that they'll appear with a different device node name if the device was previously used with the emulated devices, but that isn't present in the network drivers, which I think is a shame.

      For the Geode, it shouldn't be an issue since September. Prior to that, clang would emit long nops for some things that would break the Geode.

      --
      I am TheRaven on Soylent News
    5. Re:NIMFY by TheRaven64 · · Score: 2

      The down side is that 10 uses a newer version of the ZFS on-disk format that 9 can't load. I managed to hit this, accidentally doing an installkernel with a custom kernel config from a 9-STABLE tree just after doing a binary update to 10-RC3. The 9 kernel couldn't mount the 10 ZFS root, and I then had to find a bootable 10 CD (it turns out the machine I did this on can't boot from USB) to reinstall the 10 kernel. Worst of all, I discovered that the kernel option I wanted actually was in the default config in 10, I just didn't think it was because I'd told freebsd-update not to update my src tree to speed up the updates. A whole sequence of operator errors, and fortunately a recoverable one (once I'd replaced the kernel with the one from the CD, it worked perfectly).

      --
      I am TheRaven on Soylent News
  15. FreeBSD... by wonkey_monkey · · Score: 2

    ...that's the one that's a bit like Linnux but not quite, right?

    --
    systemd is Roko's Basilisk.
  16. Re:VMware tools included by EasyTarget · · Score: 3, Interesting

    Do you really need VMWare tools?

    Yes.

    Things like Gui integrations are fine and handy/essential if you are virtualizing a desktop OS.

    But even if setting up a headless virtual server that you never access on the console after sshd is running you should still use them in order to benefit from virtualized disk and network I/O. This can deliver decent speedups if your VM is bottlenecking in that area.

    The drivers you want should be in ports, or a precompiled package for all common OS's. If this is not true for your VM system then you should be questioning the VM provider, not the guest OS, about why they are so hard to setup.

    --
    "Oops, I always forget the purpose of competition is to divide people into winners and losers." - Hobbes
  17. Re:Never use a .0 by TheRaven64 · · Score: 2

    The major release numbers in FreeBSD mean breaks in binary compatibility. Any binary, including kernel modules, that runs on FreeBSD x.y is expected to run on FreeBSD x.(y+1). Userspace binaries should also work on (x+1).z, but may require compatibility packages to be installed (for userspace libraries that had ABI changes or were removed) and may require the kernel to be built with compatibility options enabled. This is the default for the GENERIC kernel, but some embedded builds disable them, and for some architectures there's no point in enabling them if FreeBSD didn't run on that architecture at the time.

    --
    I am TheRaven on Soylent News
  18. Re:I wish FreeBSD had a decent VM server/hyperviso by TheRaven64 · · Score: 2

    Some guys at Spectra Logic and Citrix have been pushing Xen PVH support into FreeBSD recently. It didn't make it for 10.0, but hopefully should be in 10.1. In PVH mode, a guest boots as if it is a PV guest, with Xen's entry point and event channels instead of interrupts, but then uses the hardware page tables and either PCI pass-through devices or PV devices. This is important, because PVH guests can also run as dom0, if they implement the management interfaces (which are mostly userspace and shared across platforms). Getting PVH working in domU is much more effort than going from a working domU PVH to a working dom0 PVH.

    That said, with bhyve and the new vps work (shared kernel like jails, but with some nifty features like live migration between hosts), there's a lot less of a reason for me to care about Xen, in relation to FreeBSD.

    --
    I am TheRaven on Soylent News
  19. Re:Is freebsd free yet however? by kthreadd · · Score: 2

    http://www.gnu.org/distros/common-distros.html#BSD

    FreeBSD is free according to the definition used by the FreeBSD developers. Firmware is not loaded into the kernel so it's not concidered to be a concern, and the FreeBSD developers have no interest in saying what programs users should or should not use.

  20. Includes strengthened cryptography by johnjaydk · · Score: 3, Interesting

    My primary attraction is the strengthened random number generation for cryptography. This eliminates the NSA introduced weaknesses in the underlying hardware.

    That alone is enough to turn me into a rapid FreeBSD supporter.

    --
    TCAP-Abort
    1. Re:Includes strengthened cryptography by plasticsquirrel · · Score: 2

      You do know that Linux and OpenBSD always used this method, right? FreeBSD was relying too much on hardware random number generation. Now they are finally catching up. If anything, it should make people wary of FreeBSD security.

      --
      Systemd: the PulseAudio of init systems
  21. Re:I wish FreeBSD had a decent VM server/hyperviso by TheRaven64 · · Score: 2

    I think your numbers for KVM are for the entire kernel, not just the VM support, but your bhyve numbers are for the bhyve kernel module, which depends on a lot of other stuff in the kernel (the VM subsystem, device drivers, at least one out of the network and storage stacks). The Xen number includes, I think, includes just the hypervisor, not the domain 0 guest that is responsible for running the control plain, providing all of the emulated devices, and so on.

    --
    I am TheRaven on Soylent News
  22. Re:Quality vs OpenBSD? by TheRaven64 · · Score: 3, Interesting

    Capsicum, POSIX and NFS4 ACLs are all about adding complexity to allow for greater administrative policy enforcement

    This is almost true for ACLs. ACLs are no more expressive than standard UNIX permissions, but they are significantly simpler for implementing the same thing - you no longer need to create a group for every set of people who want to share things. This lets you leave your default at share-nothing, and explicitly share the things that you need to share with the people that you need to share it with. The code for implementing them is significantly less complex than the work arounds that you need for their absence if you want the same level of access control, and if you don't want the same level of access control it's because you're fine with leaving things more widely readable than they need to be. Neither of these attitudes is good for security.

    Capsicum is definitely not about adding complexity. The implementation adds an extra bitmask check on file accesses and restricts system calls to a whitelisted set. The total code changes in the kernel are very small and easy to audit (and have been audited by several groups). The code changes in userspace code are far more significant. The sandboxing in Chromium, for example, is six times more lines of code on OpenBSD using chroot() than it is on FreeBSD using Capsicum, and offers less isolation (for example, the renderer processes on OpenBSD can create network sockets, so an image in an email that exploits libpng or libjpeg vulnerabilities can phone home and send copies of all of your emails if you use webmail from OpenBSD, with Capsicum is can't). The privilege separation code in OpenSSH is also cleaner and easier to audit when it uses Capsicum.

    In OpenBSD, security means that you eliminate bugs so that the most basic promise is held true.

    In FreeBSD, we care about mitigation. Useful software is never bug free, no matter how simple you make it. The goal is to ensure that once an attacker finds a bug, they can't use it to exploit the system. That doesn't mean 'they can't get root', because on a huge number of modern systems, from single-user laptops to single-service VMs, getting ambient authority for a single user can mean the same as getting root, when it comes to having access to the data that the user cares about. Jails, Capsicum, and so on are all about enforcing the principle of least privilege, so when a bug is discovered the attacker only gets control of a sandbox with no access to the rest of the user's data. This used to be something that OpenBSD people cared about.

    --
    I am TheRaven on Soylent News
  23. Re:Quality vs OpenBSD? by chriscappuccio · · Score: 2

    Binary firmware blobs, OpenBSD allows. You would run them anyways on your hardware, no matter what software you choose.

    Binary kernel blobs, OpenBSD eschews. Example - While FreeBSD is basically happy to suck the dick of Nvidia, running proven crap, OpenBSD will wait for a Nouveau port coming in perhaps the near future.