BSD Now

BSD Now

Download on the App Store

BSD Now episodes

  • 157: ZFS, The “Universal” File-system

    This week on BSDNow, we have an interview with Richard Yao, who will be telling us about the experience and challenges of porting ZFS to Linux. That plus the latest news and feedback is coming your way, on your place

    This episode was brought to you by

    src="/images/2.png" alt="DigitalOcean - Simple Cloud Hosting, Built for Developers" />
    />

    Headlines
    Registration for MeetBSD 2016 is now Open
    • “Beastie’s coming home!” This year, MeetBSD will be held at UC Berkeley’s Clark Kerr Campus
    • November 11th and 12th, preceded by a two day FreeBSD Vendor/Dev Summit (Nov 9th and 10th)
    • MeetBSD can be traced back to its humble roots as a local workshop for BSD developers and users, hosted annually in Poland since 2004. Since then, MeetBSD’s popularity has spread, and it’s now widely recognized as its own conference with participants from all over the world.

      • The US version runs every two years in California since 2008, and now trades off with the east coast vBSDCon which runs on the odd years.
      • “MeetBSD 2016 uses a mixed unConference format featuring both scheduled talks and community-driven events such as birds-of-a-feather meetings, lightning talks, hackable presentations, stump the chumps, and speed geeking sessions. Speakers are to be determined – stay tuned for more information!”
      • Register before September 30th, and get $30 off
      • Kris and I will be there, along with lots of other FreeBSD Developers, Vendors, and Users.
      • MeetBSD’s unconference style does a very good job of mingling users with developers and is one of my favourite conferences.
      • ***
        Dual Booting FreeBSD and Windows UEFI
        • Looking to install FreeBSD alongside Windows 10? What happens if that that system is pre-installed and UEFI? Well you could run TrueOS, but if that isn’t your bag and you want vanilla FreeBSD we have you covered this week!
        • Over on Kevin Bowling’s blog, we have a detailed article showing exactly how to do that.
        • First up, as prep you’ll need to go into the Windows disk manager and shrink your existing NTFS partition.
        • You’ll need to next boot FreeBSD 11 or later.
        • From there the walkthrough takes us through disk partitioning using gpart, and setup of ZFS into a boot-environment friendly layout.
        • Once you get through the typical FreeBSD setup / extraction, the tutorial gives us a nice bonus, showing how to setup “rEFInd” for a graphical boot-menu.
        • A great walkthrough, and hopefully it encourages others to try out dual-booting “EFI-style”.
        • ***
          ZFS High-Availability NAS
          • Interested in a DiY HA ZFS NAS? Edmund White (ewwhite on github) has posted a very detailed look at how he has custom-rolled his own Linux + ZFS + HA setup.
          • Most of the concepts are already ones used in various other HA products, but it is interesting and informative to see a public detailed look at how ZFS and HA works.
          • In particular this setup require some very specific hardware, such as dual-port SAS drives, so you will have to pre-plan according.
          • The only bummer is this is a ZFS on Linux setup. Maybe this can serve as the guide / inspiration for somebody in our community to do their own FreeBSD + HA + ZFS setup and blog about it in similar detail.
          • ***
            First public release of chyves - version 0.1.0
            • As bhyve continues to mature we are seeing tooling evolve around it. Enter ‘chyves’ which started life as a fork of iohyve.
            • We are looking to do an interview with the author in the near future, but we still want to bring you some of the new features / changes in this evolution of bhyve management.
            • First up, nearly every function from iohyve has either been re-written in part or full.
            • Among the new features, a full logging system (master and per-vm logs), multiple pool configurations, properties stored outside of ZFS (for speed) and self-upgrading. (Will that work with pkg’d version?)
            • In addition to the above features, the website has a large chart showing the original ‘iohyve’ commands, and how that usage has changed moving to chyves.
            • Give it a spin, let the author know of issues!
            • ***
              Interview - Richard Yao - [email protected]

              Sr. Kernel Engineer at ClusterHQ - Major Contributor to ZFS on Linux

              News Roundup
              ZFS Deadlock: 'Directory of Death'
              • A user reports that when they try to install npm (the Node.js package manager), their system deadlocks
              • It turns out, this was also hitting the FreeBSD package building machines
              • PR 209158
              • The problem was a race condition in the way renames are handled in the FreeBSD VFS vs how ZFS does them internally
              • This bug has existed since the original import of ZFS, but some other change caused it to happen much more frequently
              • “ZFS POSIX Layer is originally written for Solaris VFS which is very different from FreeBSD VFS. Most importantly many things that FreeBSD VFS manages on behalf of all filesystems are implemented in ZPL in a different Way. Thus, ZPL contains code that is redundant on FreeBSD or duplicates VFS functionality or, in the worst cases, badly interacts / interferes with VFS.”
              • “The most prominent problem is a deadlock caused by the lock order reversal of vnode locks that may happen with concurrent zfs_rename() and lookup(). The deadlock is a result of zfs_rename() not observing the vnode locking contract expected by VFS.”
              • The fixes have been merged to the 10.x and 11.x branches
              • ***
                New BSD Magazine out (2016-07)
                • Articles include: Implementing in-memory cache in the BeaST architecture, Docker Cleanup, FreeNAS Getting Started Guide, and starting at the very beginning with open source
                • The August issue is also out
                • This issue features two articles about MINIX 3, continues the FreeNAS getting started guide, Optimizes the in-memory cache for the BeaST architecture, and talks about fixing failed ports for Hardened and LibreBSD
                • We hope to have an interview with the creator of the BeaST architecture in the coming weeks
                • ***
                  DragonflyBSD and UEFI
                  • We’ve featured a few stories and walkthroughs about using UEFI to dual-boot BSD, and now its Dragonfly BSD’s turn.
                  • Dave McFarlane writes into the DF mailing lists, telling us about the specific steps taken to get UEFI installed and boot-strapped on his system.
                  • If you’ve done a FreeBSD manual UEFI install, the process looks very similar, but you will end up manually running ‘gpt’ to create partitions, installing dist files, and eventually installing boot1.efi into the FAT EFI partition.
                  • Dave also ran into an issue with resulted in no /etc/fstab being present, and helpfully includes what his system needed to fully boot hammer properly.
                  • Somebody should document this fully for DFLY, since I would expect to become more commonplace as commodity hardware is shipped with UEFI on by default.
                  • ***
                    Netflix and Fill
                    • The Netflix team has produced a technical blog post describing how their OpenConnect appliances work
                    • First the content is received from the content provider, and the Netflix content team makes it ready for deployment, by transcoding the various bitrates, packaging the subtitles, etc.
                    • The finished files are then pushed to Amazon S3 storage
                    • “We deploy the majority of our updates proactively during configured fill windows. An important difference between our OpenConnect CDN and other commercial CDNs is the concept of proactive caching. Because we can predict with high accuracy what our members will watch and what time of day they will watch it, we can make use of non-peak bandwidth to download most of the content updates to the OCAs in our network during these configurable time windows. By reducing disk reads (content serving) while we are performing disk writes (adding new content to the OCAs), we are able to optimize our disk efficiency by avoiding read/write contention. The predictability of off-peak traffic patterns helps with this optimization, but we still only have a finite amount of time every day to get our content pre-positioned to where it needs to be before our traffic starts to ramp up and we want to make all of the OCA capacity available for content serving.”
                    • The OCA may actually contain more than one copy of the same video, because each disk in the OCA is independent, storing the same video on two different disks will provide twice the available read bandwidth
                    • Normally the filesystem cache would obviate the need for this, but the Netflix OCA has so much storage, and not a lot of memory, and the requests from users are offset enough that the cache is useless
                    • “OCAs communicate at regular intervals with the control plane services, requesting (among other things) a manifest file that contains the list of titles they should be storing and serving to members. If there is a delta between the list of titles in the manifest and what they are currently storing, each OCA will send a request, during its configured fill window, that includes a list of the new or updated titles that it needs. The response from the control plane in AWS is a ranked list of potential download locations, aka fill sources, for each title.”
                    • “It would be inefficient, in terms of both time and cost, to distribute a title directly from S3 to all of our OCAs, so we use a tiered approach. The goal is to ensure that the title is passed from one part of our network to another using the most efficient route possible.”
                    • The article then goes on to explain how they calculate the least cost filling source
                    • “Now that Netflix operates in 190 countries and we have thousands of appliances embedded within many ISP networks around the world, we are even more obsessed with making sure that our OCAs get the latest content as quickly as possible while continuing to minimize bandwidth cost to our ISP partners.”
                    • ***
                      Beastie Bits:
                      • Cover reveal for “PAM Mastery”
                      • LibertyBSD 5.9 is out - looking for mirrors
                      • Unix for Poets
                      • Feedback/Questions
                        • Chuck / Ingo - Get Involved
                        • Oskar - Thanks
                        • Alex - SMF
                        • Raymond - RPI3
                        • ***
                          1 hr 23 min
                        • 156: The Fresh BSD experience

                          This week on BSDNow, Allan is back from his UK trip and we’ll get to hear his thoughts on the developer summit. That plus all the

                          This episode was brought to you by

                          />

                          Headlines
                          FreeBSD 11.0-RC1 Available
                          • FreeBSD is marching onwards to 11.0, and with it the first RC1 was released. In addition to the usual amd64 architectures, you may want to give it

                          • a whirl on your various ARM boards as well, as it includes images for the following systems:

                            • 11.0-RC1 amd64 GENERIC
                            • 11.0-RC1 i386 GENERIC
                            • 11.0-RC1 powerpc GENERIC
                            • 11.0-RC1 powerpc64 GENERIC64
                            • 11.0-RC1 sparc64 GENERIC
                            • 11.0-RC1 armv6 BANANAPI
                            • 11.0-RC1 armv6 BEAGLEBONE
                            • 11.0-RC1 armv6 CUBIEBOARD
                            • 11.0-RC1 armv6 CUBIEBOARD2
                            • 11.0-RC1 armv6 CUBOX-HUMMINGBOARD
                            • 11.0-RC1 armv6 GUMSTIX
                            • 11.0-RC1 armv6 RPI-B
                            • 11.0-RC1 armv6 RPI2
                            • 11.0-RC1 armv6 PANDABOARD
                            • 11.0-RC1 armv6 WANDBOARD
                            • 11.0-RC1 aarch64 GENERIC
                            • For those wondering the list of changes between this and BETA4, we have that as well:

                              • A NULL pointer dereference in IPSEC has been fixed.
                              • Support for SSH Protocol 1 has been removed.
                              • OpenSSH DSA keys have been disabled by default. Users upgrading from
                              • prior FreeBSD versions are urged to update their SSH keys to RSA or
                                ECDSA keys before upgrading to 11.0-RC1.
                              • PCI-e hotplug on bridges with power controllers has been disabled.
                              • A loader tunable (hw.pci.enable_pcie_hp) to disable PCI-e HotPlug has
                              • been added.
                              • A VESA panic on suspend has been fixed.
                              • Google Compute Engine image publication has been fixed.
                              • An AES-ICM heap corruption typo bug has been fixed.
                              • A regression in pf.conf while parsing the 'interval' keyword has been
                              • fixed.
                              • A ZFS/VFS deadlock has been fixed.
                              • RC2 is delayed while some issues are sorted out

                              • RC2 is looming large, but was pushed back a few days while the following bugs are sorted out:

                                • Issue with IPv6 UDP traffic being sent from wrong MAC address
                                • Layer2 violation with IPv6
                                • ***
                                  OpenBSD just added initial support for the RaspberryPi 2 and 3 devices
                                  • It’s a good time to be an ARM and BSD enthusiast. In addition to all the ARM images in FreeBSD 11.0, we also have word that initial support for RPi2 and RPi3 has started to land in OpenBSD.
                                  • Mark Kettenis has posted the following with his Commit:
                                  • Initial support for Raspberry Pi 2/3. All the hard work done by patrick@, I just cleaned things up a bit. Any bugs introduced in that process are entirely mine.

                                    This doesn't work yet. But when it does, you'll need recent firmware from the Raspberry Pi Foundation git repository at:

                                    https://github.com/raspberrypi/firmware

                                    The device tree for the Raspberry Pi is somewhat in flux as bits and pieces to support the Raspberry Pi 2 and 3 are committed to the mainline Linux kernel.“

                                    • Exciting news! We will of course keep you informed as to when we have images to play with. Running OpenBSD / PF on a RPi does sound intriguing.
                                    • ***
                                      drm-4.8-rc2 tagged in drm-next
                                      • Remember when FreeBSD lagged so far behind in Graphics support? Well, those days are rapidly coming to an end.
                                      • Matt Macy has posted an update to the FreeBSD X11 list with news of his DRM branch being caught up all the way to Linux 4.8-RC2 now.
                                      • This is a huge accomplishment, with Matt commenting:
                                      • As of this moment sys/dev/drm in the drm-next tree is sync with https://github.com/torvalds/linux drivers/gpu/drm (albeit only for the subset of drivers that FreeBSD supports - i915, radeon, and amdgpu). I feel this is a bit of a milestone as it means that it is possible that in the future graphics support on FreeBSD could proceed in lockstep with Linux.

                                        • For those who want to try out the latest support, you can build from his branch at the following GitHub location: (https://github.com/FreeBSDDesktop/freebsd-base-graphics)
                                        • Or, if compiling isn’t your thing, TrueOS (The re-branded PC-BSD) will be releasing the a new ISO based upon his update to Linux 4.7 in the coming days, with 4.8-RC2 to follow in the next week or two.
                                        • ***
                                          Installing FreeBSD for Raspberry Pi
                                          • People have been running FreeBSD on various RPi devices for a while now, however there are still a lot of people who probably need a hand to get boot-strapped on their RPi system.
                                          • The FreeBSD foundation has put together a nice tutorial which walks even the most novice user through getting FreeBSD up and running.
                                          • In particular this could become a good way for students or other FreeBSD newcomers to try out the OS on a relatively low-cost platform outside of a VM.
                                          • The tutorial starts of with a check-list of the specific items you’ll need to get started, for RPi 1 (a/b) or RPi 2 hardware.
                                          • From there, instructions on how to get the downloaded images onto a sdcard are provided, including Mac and Windows image burning details.
                                          • With this done, it’s really only a matter of plugging in your device to be presented with your new RPi + FreeBSD system. The most important details (the default username/password) at also provided, so don’t skim too quickly.
                                          • ***
                                            Interview - Drew Gurkowski
                                            • Foundation Intern: First time FreeBSD User and Writing Tutorials
                                            • ***
                                              News Roundup
                                              FreeBSD’s ipfw gets a NAT64 implementation
                                              • A new feature has been added to FreeBSD’s native firewall, ipfw2
                                              • The new loadable module implements stateless and stateful NAT64
                                              • “Stateless translation is appropriate when a NAT64 translator is used in front of IPv4-only servers to allow them to be reached by remote IPv6-only clients.”
                                              • With this setup, you map specific IPv6 addresses to the corresponding IPv4 address, allowing IPv4 only servers to be reachable on the v6 network.
                                              • “Stateful translation is suitable for deployment at the client side or at the service provider, allowing IPv6-only client hosts to reach remote IPv4-only nodes.”
                                              • This configuration allows many IPv6 only clients to reach the “legacy” internet. The FreeBSD cluster has been waiting for this feature for
                                              • a while, because they have limited IP addresses, but many service jails that require access to services like GitHub that are not IPv6 enabled.
                                              • The work was sponsored by Yandex, the Russian search engine and long time FreeBSD user
                                              • Example configurations for both types are included in the commit message
                                              • If you would find this feature useful, please take the time to set it up and document the steps and contribute that to the FreeBSD Handbook.
                                              • ***
                                                Update on using LLVM's lld linker in the FreeBSD base system
                                                • Ed Maste has written a lengthy update on the progress being made towards using LLVM’s lld linker as a replacement for GNU’s ‘ld’.
                                                • Ed starts off by giving us some of the potential benefits of using lld vs the 2.17.50 ‘ld’ version FreeBSD currently uses:

                                                  • AArch64 (arm64) support
                                                  • Link Time Optimization (LTO)
                                                  • New ABI support
                                                  • Other linker optimization
                                                  • Much faster link times
                                                  • Maintained code base
                                                  • Ed also gives us an update on several of the major blockers:

                                                  • Since the last update in March several lld developers have implemented much of the missing functionality. The main blockers were symbol version support and expression evaluation in the linker script expression parser. Both are now nearly complete“

                                                    • A detailed plan was also articulated in respect to switching over:
                                                      1. Update lld along with the Clang/LLVM 3.9 update that dim@ is working on.
                                                      2. Add the bmake build infrastructure, installing as /usr/bin/ld.lld on the same architectures that use Clang (amd64, arm, arm64, i386). I don't think there's a need for a WITH_LLD src.conf knob, but will add one if desired.
                                                      3. Update lld again (most likely to a snapshot from upstream SVN) once it is able to link an unmodified FreeBSD kernel.
                                                      4. Modify the boot loader and kernel builds to avoid using features not implemented by lld.
                                                      5. Introduce a WITH_LLD_AS_LD knob to have /usr/bin/ld be a ld.lld hardlink instead of /usr/bin/ld.bfd.
                                                      6. Request ports exp-runs and issue a call for testing with 3rd party software. Fix issues found during this process.
                                                      7. Switch /usr/bin/ld to ld.lld by default in head for the Clang-using architectures. Add a WITHOUT_LLD_AS_LD knob to switch back to GNU ld.
                                                      8. ***
                                                        How to install FreeBSD with ZFS filesystem on DigitalOcean
                                                        • I know we’ve mentioned using FreeBSD + ZFS on digital ocean in the past, but today we have a nice HowTo by Kaspars Mickevics (fxlv) on GitHub.

                                                        • Before getting started, kaspars mentions some pre-reqs. First up he recommends starting with a Minimum of 2GB of RAM. (The $20/mo droplet). This is to ensure you have plenty of cushion to avoid running out of memory during the process. It is possible to use ZFS with less, but depending on your desired workload this does make sense.

                                                        • From there, checking out “mfsBSD” is discussed, along with details on how to make it suitable for a DO installation. (Mostly just disabling DHCP for the network device) For good measure ‘pkg-static’ is also included.

                                                        • With that done, using mfsBSD you will create a tar file, which is then extracted on top of the running system.

                                                        • After rebooting, you will be able to run “bsdinstall” and proceed to installing / formatting your disk with ZFS as normal.

                                                        • A good tutorial, something I may need to do here in the near future.

                                                        • User manages to get OpenBSD and FreeBSD working with Libreboot
                                                          • In a short drive-by post to the Libreboot mailing list Piotr Kubaj gives a quick notice that he managed to get OpenBSD and FreeBSD both booting.
                                                          • > I know GNU people don't like BSD, so let me make it quick :)
                                                            >
                                                            >
                                                            > I've succeeded in booting FreeBSD 11.0-RC1 using txt mode on my X200
                                                            > with the newest Libreboot.
                                                            >
                                                            > To get installer to boot, I used:
                                                            > kfreebsd (usb0,gpt3)/boot/kernel/kernel
                                                            > set FreeBSD.vfs.mountfrom=ufs:/dev/da1p3
                                                            > boot
                                                            >
                                                            > I didn't try to install yet.
                                                            >
                                                          • The trick looks relatively simple (looks like GRUB), manually loading the kernel with ‘kfreebsd’ and then setting the vfs.root.mountfrom
                                                          • variable to find the USB stick.
                                                          • In an update he also mentions booting OpenBSD with ‘kopenbsd’ instead of ‘kfreebsd’ (again GRUB syntax)
                                                          • Now somebody will need to test installation of the system (he didn’t) and see what other issues may crop up in running BSD on a free BIOS.
                                                          • ***
                                                            Beastie Bits:
                                                            • The ACPICA (ACPI Component Architecture) coding language AML now in DragonFly BSD

                                                            • Release announcement for 4.3BSD Tahoe from 1988

                                                            • Feedback/Questions
                                                              • Mike - Jail Uptime
                                                              • Greg - Router Hardware
                                                              • Kristof writes in
                                                              • Ty - Updates and Logs
                                                              • Benjamin - MTA Bug
                                                              • ***
                                                                1 hr 29 min
                                                              • 155: Cabling up FreeBSD

                                                                This week on BSDNow, Allen is away in the UK (For BSDCam), but we still have a full episode for you! Don’t miss our interview with

                                                                This episode was brought to you by

                                                                Headlines
                                                                My two year journey to becoming an OS Developer
                                                                • A blog post by Ryan Zezeski about how he ended doing OS Development instead of working on application
                                                                • We have featured his posts before, including The illumos SYSCALL Handler
                                                                • It started in the summer of 2014: I had just left Basho after 3.5 years of working on Riak, when I decided I wanted to become an OS developer. I purchased Solaris Internals, cloned illumos-gate, fired up cscope, and got to work. I hardly knew any C, x86 might as well have been Brainfuck, and, frankly, I knew shit about operating systems. But I was determined.

                                                                  I’ve always learned best by beating my head against something until it makes sense. I’m not a fast learner; I’m persistent. What others have in ability I make up for in effort. And when it comes to OS internals it’s all about work ethic. The more you look, the more you realize it’s just another program. The main difference being: it’s the program all the other programs run on.
                                                                  My strategy: to pick something, anything, that looked interesting, and write a post describing how it works. I wrote several of these posts in 2014 and 2015. More important, it put me in touch with Roger Faulkner: the creator of truss(1), the Solaris process model, and the real /proc filesystem. At the time I didn’t like my interaction with Roger. He explained, in what I would later find out to be his typical gruff manner, that I was wrong; so I concluded he is a prick. But over the years I realized that I was being a brat—he was trying to teach me something and I let my ego get in the way. I’ve come to view that interaction as a blessing. I interacted with one of the greats, a mentor of my mentor’s mentor (a Great Great Mentor).
                                                                  A couple of weeks later something even more surreal happened, at illumos Day 2014. Bryan Cantrill was the last speaker of the day. One of my mentors and someone I admire greatly. He was there to regale us with the story of Joyent’s resurrection of lx-branded zones: Linux system call emulation on top of the illumos kernel. But before he would do that he decided to speak about me! I couldn’t believe it. I was so overwhelmed that I don’t remember most of what he said. I was too busy flipping shit—Bryan Cantrill is on stage, in front of other kernel developers I look up to, saying my name. I was in a dream. It turns out, unknown to me at the time, that he wrote the POSIX queue code for both Solaris and QNX, which I wrote about. He compared me to the great expository technical writers Elliott Organick and Richard Stevens. And it was at this moment that I knew I could do this: I could become an OS developer.
                                                                  Never underestimate the effect kind words can have on someone that looks up to you.

                                                                  • There is a lot more to the story, and it is definitely worth the read
                                                                  • The story then goes on to talk about his recent run in with Bryan Cantrill
                                                                  • > A week from now my two year journey to become an OS developer comes to an end; and a new chapter begins. I don’t know what specific things I’m going to work on, but I’m sure it will push me to the limit. I look forward to the challenge.
                                                                    ***
                                                                    Version 1.0 of the Lumina Desktop released
                                                                    • After 4 years of development, Lumina Desktop has now hit version 1.0!
                                                                    • This release brings with it a slew of new features and support:
                                                                      • Completely customizable interface! Rather than having to learn how to use a new layout, change the desktop to suit you instead!
                                                                      • Simple shortcuts for any application! The “favorites” system makes it easy to find and launch applications at any time.
                                                                      • Extremely lightweight! Allows applications to utilize more of your system hardware and revitalizes older systems!
                                                                      • Multiple-monitor support! Each monitor is treated as an independent entity – making it great for presentation systems which use a temporary monitor or for workstations which utilize an array of monitors for various tasks.
                                                                        • While originally developed on PC-BSD, it already has been ported to a variety of different platforms, including OpenBSD, DragonFly, NetBSD, Debian and Gentoo
                                                                        • Lumina has become the defacto desktop environment for TrueOS (Formerly PC-BSD), and looks like will provide a solid framework to continue growing desktop features.
                                                                        • ***
                                                                          n2k16 hackathon report: Ken Westerback on dhclient, bridges, routing and more
                                                                          • Next up, we have a report from Ken Westerback talking about the recent OpenBSD hackathon in Prague
                                                                          • He starts by telling us about the work in bpf:
                                                                          • First order of business, stsp@'s weird setup involving bridges and multiple dhclient clients. A bit of bpf(4) programming to restrict dhclient to handling ethernet packets unicast to its interface worked. Cool. Unfortunately it turned out some lazy dhcp servers always use ethernet broadcasts just because some lesser, non-OpenBSD clients ignore unicast packets until they have configured IP. Classic chicken and egg. So this was backed out just before 6.0. Sigh.

                                                                            • Next up, he talks about an idea he had on the flight over, specifically with regard to how DHCP leases are stored, and how keeping the SSID information with them could speed up re-connection times, by only trying leases for current SSID’s connected. After a day or so of hacking, it was working! However for $REASONS it was shelved for post 6.0, bummer!
                                                                            • He then discusses an on-going project with Peter Hessler on passing along relevant PIDs in response to routing messages generated by kernel from ioctl events. This is something they’ve been hacking at, in order to allow dhclient to recognize its own routing messages. Sounds like they are both still works-in-progress.
                                                                            • However, Ken did get something in for 6.0:
                                                                            • Diving back into dhclient code I discovered that in situations where multiple offers were received the unused offers were not being declined and discarded. Despite a clear comment saying that's what was being done! Thus dhclient might gradually use up more and more memory. And possibly be retrying offers that should have been discarded. The fix for this did make 6.0! Yay!

                                                                              In Memoriam Roger Faulkner
                                                                              • USENIX has re-released Roger Faulkner’s original paper on /proc as a free download
                                                                              • The UNIX community recently lost one of its original pioneers, Roger Faulkner, whom one commenter described as “The godfather of post-AT&T UNIX”
                                                                              • In his memory, the USENIX group as re-released his original paper on the /proc file-system from 1991.
                                                                              • Roger worked in many area’s of UNIX, however the process file system /proc was his special baby.
                                                                              • “/proc began as a debugger interface superseding ptrace(2) but has evolved into a general interface to the process model.”
                                                                              • The original /proc only had a file for each process, not a directory. "Data may be transferred from or to any valid locations in the process's address space by applying lseek(2) to position the file at the virtual address of interest followed by read(2) or write(2)."
                                                                              • Processes could be controlled using IOCTLs on the file
                                                                              • As the USENIX article states:

                                                                              • Roger believed that terrible things were sometimes required to create beautiful abstractions, and his trailblazing work on /proc embodies this burden: the innards may be delicate and nasty ("vile," as Roger might say in his distinguished Carolinian accent)—but the resulting abstractions are breathtaking in their power, scope and robustness.

                                                                              • RIP Roger, and thanks for the wonderful UNIX legacy you’ve left us all.

                                                                              • Interview - Myke Geiger - [email protected] / @mWare
                                                                                • Using FreeBSD at a DSL/Cable ISP
                                                                                • ***
                                                                                  News Roundup
                                                                                  New options in bsdinstall - some sysctls and date/time settings
                                                                                  • bsdinstall in FreeBSD 11.0 will feature a number of new menus.
                                                                                  • The first, well allow you to set the date and time. Often on computers that have been in storage, or some embedded type devices that have no RTC, the date will be wildly wrong, and ntpd will refuse to run until the date is correctly set. This feature makes it easy to enter the date and time using dialog(1)
                                                                                  • The second menu, inspired by the existing ‘services’ menu, offers a number of ‘hardening’ options
                                                                                  • This menu allows users to easily enable a number of security features, including:
                                                                                    • Hide processes running as other users/groups
                                                                                    • Disable reading the kernel message buffer and debugging processes for unprivileged users
                                                                                    • Randomize the PID of newly created processes
                                                                                    • Enable the stack guard
                                                                                    • Erase /tmp at boot
                                                                                    • Disable remote syslog
                                                                                    • Disable sendmail
                                                                                    • All of these options are off by default, so that an install done with the installer will be the same as an install from source, or an upgrade.
                                                                                    • A number of these options are candidates to become on-by-default in the future, so the hope is that this menu will get more users to test these features and find any negative interactions with applications or general use, so they can be fixed.
                                                                                    • ***
                                                                                      Rawrite32: the NetBSD image writing tool
                                                                                      • Martin of the NetBSD project has released a new version of his USB imaging tool, rawrite32
                                                                                      • For those who’ve not used this tool before, it is a Windows Application that allows writing NetBSD images directly to USB media (other other disk media)
                                                                                      • This update brings with it support for writing .xz file, and binary signing
                                                                                      • This may come in handy for writing other OS images to memory sticks as well, especially for those locked into a windows environment who need to
                                                                                      • switch.
                                                                                        ***
                                                                                        ZFS-Snap-Diff -- A pretty interface for viewing what changed after a ZFS snapshot
                                                                                        • There are lots of nice little utilities to help create and maintain your ZFS snapshots. However today we have something unique to look at, ‘zfs-snap-diff’.
                                                                                        • What makes it unique, is that it ships with a built-in golang / angularjs GUI for snapshot management
                                                                                        • It looks very powerful, including a built-in diff utility, so you can even see the changes in text-files, in addition to downloading files, restoring old versions and more.
                                                                                        • Its nice to see so many ZFS utilities starting to take off, and evolve file-management further.
                                                                                        • ***
                                                                                          Dtrace Conf 2016 Event Videos
                                                                                          • The videos from Dtrace.conf 2016 have been posted
                                                                                          • Some highlights:
                                                                                            • Useful DTrace Intro
                                                                                            • CTF Everywhere
                                                                                            • Distributed DTrace
                                                                                            • DTrace for Apps
                                                                                            • DTrace json() subroutine
                                                                                            • Implementing (or not) fds[] in FreeBSD
                                                                                            • OpenDTrace
                                                                                            • DTrace performance improvements with always-on instrumentation
                                                                                            • D Syntactic Sugar
                                                                                            • DTrace and Go, DTrace and Postgres
                                                                                            • dtrace.conf(16) wrap-up by Bryan Cantrill
                                                                                            • Once again, it was an eclectic mix of technologists — and once again, the day got kicked off with me providing an introduction to dtrace.conf and its history. (Just to save you the time filling out your Cantrill Presentation Bingo Card: you can find me punching myself at 16:19, me offering unsolicited personal medical history at 20:11, and me getting trolled by unikernels at 38:25.)

                                                                                              • The next DTrace.conf isn’t until 2020
                                                                                              • ***
                                                                                                Beastie Bits
                                                                                                • The BSD Daemon features in Mexican candy packaging

                                                                                                • Remove PG_ZERO and zeroidle (page-zeroing) entirely

                                                                                                • OpenBSD: Release Songs: 6.0: "Black Hat"

                                                                                                • OpenBSD Gaming Resource

                                                                                                • LibreSSL 2.4.2 and 2.3.7 Released

                                                                                                • Feedback/Questions
                                                                                                  • Pedja - Bhyve GUI
                                                                                                  • Tim - Jail Management
                                                                                                  • Don - X260
                                                                                                  • David - Updates
                                                                                                  • Ghislain - Jail Management
                                                                                                  • ***
                                                                                                    1 hr 58 min
                                                                                                  • 154: Myths, Pi’s & Features, oh my!

                                                                                                    This week on BSDNow, we are taking a look at a few different tutorials, including running your very own RPi web-server. (Come-on, you

                                                                                                    This episode was brought to you by

                                                                                                    />

                                                                                                    Headlines
                                                                                                    broken features aren't used
                                                                                                    • This post from TedU talks about the difficulty of removing features from an operating system
                                                                                                    • “One of the difficulties in removing a feature is identifying all the potential users. A feature here could be a program bundled with an operating system, or a command line option, or maybe just a function in a library. If we remove a feature, users that depend on it will be sad. Unfortunately, absence of evidence is not evidence of absence. I’ve never heard of anybody running ls -p but it’s not impossible that somebody does.”
                                                                                                    • “The reasons why we want to remove an existing feature can vary. Sometimes it’s old code that interferes with maintenance. Sometimes a nearly complete rewrite can improve performance. In other cases, the feature in question is really more of a misfeature. It may have security implications, where the existence of the feature can be used to facilitate the exploitation of other vulnerabilities, and removing the feature will help mitigate the exploit.”
                                                                                                    • “There’s no general test that can be used, but there is one test that works in many cases. Test that the feature works. If the feature doesn’t work, that’s compelling evidence that nobody is using it, because nobody can be using it. You don’t need to fix it. You can just remove it.”
                                                                                                    • He makes some interesting comments about exhaustive unit tests and the push to keep everything working all the time. If you never break anything to see if someone complains, how do you know if it is still being used?
                                                                                                    • ***
                                                                                                      A Raspberry Pi FreeBSD Web Server
                                                                                                      • Looking at a super-low power solution to host some webpages? If so, we have the tutorial for you.
                                                                                                      • Specifically a walkthrough of getting FreeBSD up on a Pi, and setting up nginx, OpenNTPD, LibreSSL and friends.
                                                                                                      • The walkthrough starts with grabbing a FreeBSD 11 snapshot for arm64 and doing the initial setup process to get to a bootable FreeBSD system.
                                                                                                      • If you are an extreme noob, not to fear. The tutorial walks you through setting up usernames, timezones, even a larger /tmp directory on your new MiniBSD setup.
                                                                                                      • The tedious part comes to play during the setup of packages. The author walks us through setting up LibreSSL and various other packages via ports (Since LibreSSL isn’t the default in FreeBSD). This will take some time to compile on your humble RPi device. (Go make a sandwich, walk the dog, fix the gutters, etc)
                                                                                                      • When it’s all said and done, you’ll end up with a secure little web-server that you’ve configured all by yourself! (Wondering what the word-press performance would be like on that box)
                                                                                                      • ***
                                                                                                        Uber switches from PostgreSQL back to MySQL
                                                                                                        • We often hear success stories of people switching to PostgreSQL and getting huge performance gains, but this stories is the reverse
                                                                                                        • Uber’s engineering team has switched back to MySQL, because for their specific workload and design, MySQL’s innodb has better performance
                                                                                                        • Of course, it is not just vanilla MySQL, but “Schemaless”, a sharding system that sits on top of MySQL
                                                                                                        • The article goes into detail about the on-disk format used by Postgres, and the specific shortcomings that Uber encountered
                                                                                                        • Uber admits that all of its testing was against the older PostgreSQL 9.2, but one of their complaints is about having difficulty upgrading
                                                                                                        • “We started out with Postgres 9.1 and successfully completed the upgrade process to move to Postgres 9.2. However, the process took so many hours that we couldn’t afford to do the process again. By the time Postgres 9.3 came out, Uber’s growth increased our dataset substantially, so the upgrade would have been even lengthier. For this reason, our legacy Postgres instances run Postgres 9.2 to this day, even though the current Postgres GA release is 9.5.”
                                                                                                        • There is a followup, from the Postgres side
                                                                                                        • “Why we lost Uber as a user”
                                                                                                        • This thread goes into detail about the specific types of problematic queries that Uber was using
                                                                                                        • “The Uber guy is right that InnoDB handles this better as long as you don't touch the primary key (primary key updates in InnoDB are really bad)”
                                                                                                        • “This is a common problem case we don't have an answer for yet.”
                                                                                                        • The thread then goes on to discuss possibly supporting a “pluggable heap storage layer”, to allow different workloads to use different on-disk formats for best performance
                                                                                                        • ***
                                                                                                          Getting started with GhostBSD and FreeBSD
                                                                                                          • Part 1
                                                                                                          • Part 2
                                                                                                          • Part 3
                                                                                                          • Part 4
                                                                                                          • In what may be our first GhostBSD tutorial, we have a nice walkthrough on the initial getting started with it.
                                                                                                          • For those who don’t know, GhostBSD provides a nice XFCE or Mate desktop out of box, and still supports 32bit installs for those who want to keep that older hardware running.
                                                                                                          • The walkthough takes us through the process of grabbing GhostBSD images and getting the installer up and running via bootable USB stick.
                                                                                                          • Once booted, the graphical installer is straight-forward and short, allowing you to get the bits on disk as quickly as possible. (The actual installation took around 45 Minutes on an old Toshiba NB520)
                                                                                                          • The author then takes us on a tour of some of GhostBSD’s out-of-box bundled applications (Along with XFCE) and how it compares to similar Linux setups.
                                                                                                          • Lastly covered is the setup of Wireless (The manual way with WPA supplicant, since the GUI tool appeared to not work in this particular case)
                                                                                                          • All in all a good walkthrough, especially if you’ve not seen GhostBSD in action before, the screenshots are very informative!
                                                                                                          • ***
                                                                                                            News Roundup
                                                                                                            Steam on FreeBSD 11-CURRENT
                                                                                                            • Steam on FreeBSD. Yes, we’ve heard of setups using WINE, but what about running the Linux binaries natively?
                                                                                                            • Well you are in luck. We have a github project that details getting the Linux native client up and running on a FreeBSD 11-CURRENT system.
                                                                                                            • This github project is rather mysterious, with only the instructions to download a pre-packaged steam.txz file, extract and run the provided install.sh script.
                                                                                                            • Curious I inspected some of the scripts, the installer.sh is fairly straight-forward, but does some ‘non-standard’ freebsd things, like fetching packages and extracting specific files/libaries into a new /compat/ubuntu directory.
                                                                                                            • After that, it goes through a huge list of debian/ubuntu packages, also throwing them into the aforementioned ubuntu directory.
                                                                                                            • At runtime, the wrapper script ensures that various linux compat file-systems are mounted in the correct location, then proceeds to run steam with some LD_LIBRARY_FLAGS set from the users .local/share/steam directory.
                                                                                                            • A tad scary if honest, however it is a neat PoC to see Steam working on FreeBSD. Hopefully somebody can turn this into a more traditional package which can be easily removed / cleaned up afterwards.
                                                                                                            • ***
                                                                                                              How to run Enlightenment on OpenBSD
                                                                                                              • Are you an enlightenment fan? Be honest, we know there are quite a few of you out there!
                                                                                                              • If so, we have a tutorial for you today, which talks about how to run E on OpenBSD.
                                                                                                              • The process is pretty easy, but some steps might be overlooked if you are new to OpenBSD or don’t know how to tune / compile things on your own.
                                                                                                              • It starts out with adjusting some sysctl’s for better tuning that works on an E based desktop.
                                                                                                              • Next is installing from package some pre-reqs that will enable us to build E from source.
                                                                                                              • After that, we need to download and install EFL from github, and the autogen / gmake commands are helpfully provided for you.
                                                                                                              • Lastly the same is done for E itself, and TADA, E is installed and ready to go on your OpenBSD system. If you do this right, should only take 5-10 minutes to be up and running.
                                                                                                              • ***
                                                                                                                Myths about FreeBSD
                                                                                                                • Over on the FreeBSD wiki, we have a new “Myths” page which we’ve never highlighted on the show before.
                                                                                                                • First up, and one I’ve very familiar with, is the usual “FreeBSD is only for Servers and not Desktops”, along with a good rebuttal about what it does offer and mention of projects such as PC-BSD which do it also.
                                                                                                                • Another prevalent one is the “FreeBSD has a closed development model”, which is easily refuted:
                                                                                                                • FreeBSD has over 400 developers around the world who have commit access to the repository. Many of these are willing to commit patches from third parties. If you want to get an idea of the number of patches that have been committed on behalf of other developers, then search for 'Submitted by' in the commit logs. At the time of writing, this is just under twenty thousand, or about ten percent of all commits. After having a few patches accepted, regular contributors are usually encouraged to apply for commit access.

                                                                                                                  • Another one that we are still hearing (Although it is less and less now) was the common “FreeBSD makes me compile everything from source”. Listeners of this show will know that pkg has pretty much made this irrelevant in recent years. However the option to compile yourself from source still exists, but most users won’t find this ever necessary.

                                                                                                                  • A good list, with many more items on it than we’ve mentioned here. Take a look, you might find something there you’ve heard in the wild, or maybe even thought yourself at one point!

                                                                                                                  • FreeBSD Area51 testing repo, KDE 5
                                                                                                                    • This github GIST from Steve Wills provides the instructions to enable the FreeBSD xorg teams unofficial ‘Area51’ testing repo on your machine
                                                                                                                    • This gives you access to the new KDE 5
                                                                                                                    • Users should obviously be careful testing early-access software, but bug reports are very welcome, and important to getting KDE 5 working well under FreeBSD
                                                                                                                    • ***
                                                                                                                      Beastie Bits
                                                                                                                      • NetBSD Machines at Open Source Conference 2016 Kyoto

                                                                                                                      • How to install htop on pfSense

                                                                                                                      • The first ever patch for #Chromium on #NetBSD has been committed!

                                                                                                                      • CharmBug - Adventures in Hardened BSD - August 24th 2016

                                                                                                                      • Feedback/Questions
                                                                                                                        • Emanual - GoTTY
                                                                                                                        • Joe - Disable Device
                                                                                                                        • Allen - ZFS Send/Recv
                                                                                                                        • Mica - Adobe Replacements
                                                                                                                        • Robroy - RAID
                                                                                                                        • ***
                                                                                                                          50 min
                                                                                                                        • 153: Big int trouble

                                                                                                                          This week on BSDNow, we have a variety of news to discuss, covering quite the spectrum of BSD. (Including a new DragonFly release!).

                                                                                                                          This episode was brought to you by

                                                                                                                          />

                                                                                                                          Headlines
                                                                                                                          my int is too big
                                                                                                                          • “The NCC Group report describes the bugs, but not the history of the code.”
                                                                                                                          • “Several of them, as reported by NCC, involved similar integer truncation issues. Actually, they involved very similar modern 64 bit code meeting classic 32 bit code”
                                                                                                                          • “The thrsleep system call is a part of the kernel code that supports threads. As the name implies, it gives userland a measure of control over scheduling and lets a thread sleep until something happens. As such, it takes a timeout in the form of a timespec. The kernel, however, internally implements time keeping using ticks (there are HZ, 100, ticks per second). The tsleep function (t is for timed) takes an int number of ticks and performs basic validation by checking that it’s not negative. A negative timeout would indicate that the caller has miscalculated. The kernel panics so you can fix the bug, instead of stalling forever.”
                                                                                                                          • “The trouble therefore is when userland is allowed to specify a timeout that could be negative. The existing code made an attempt to handle various tricks by converting the timespec to a ticks value stored as a 64 bit long long which was checked against INT_MAX before passing to sleep. Any value over INT_MAX would be truncated, so we can’t allow that. Instead, we saturate the value to INT_MAX. Unfortunately, this check didn’t account for the possibility that the tick conversion from the timespec could also overflow and result in a negative value.”
                                                                                                                          • Then there is the description of the kqueue flaw:
                                                                                                                          • “Every kqueue keeps a list of all the attached events it’s watching for. A simple array is used to store file events, indexed by fd.”
                                                                                                                          • “This array is scaled to accommodate the largest fd that needs to be stored. This would obviously cause trouble, consuming too much memory, if the identifier were not validated first. Which is exactly what kqueue tries to do. The fd_getfile function checks that the identifier is a file that the process has open. One wrinkle. fd_getfile takes an int argument but ident is a uintptr_t, possibly 64 bits. An ident of 232 + 2 will look like a valid file descriptor, but then cause the array to be resized to gargantuan proportions.”
                                                                                                                          • “Again, the fix is pretty simple. We must check that the ident is bounded by INT_MAX before calling fd_getfile. This bug likely would have been exploitable beyond a panic, but the array allocation was changed to use mallocarray instead of multiplying arguments by hand, thus preventing another overflow.”
                                                                                                                          • Then there is a description of the anonymous mmap flaw, and the “secret magic” __MAP_NOFAULT flag
                                                                                                                          • ***
                                                                                                                            FreeBSD Quarterly Status Report Q2 2016
                                                                                                                            • It’s time for another round of FreeBSD Quarterly Status Reports!
                                                                                                                            • In this edition, we have status updates from the various teams, including IRC/Bugs/RE/Ports/Core and Foundation
                                                                                                                            • We also have updates on some specific projects, including from Konstantin on the on-going work for his implementation of ASLR, including the new ‘proccontrol’ command which provides the following:
                                                                                                                            • > “The proccontrol(1) utility was written to manage and query ASLR enforcement on a per-process basis. It is required for analyzing ASLR failures in specific programs. This utility leverages the procctl(2) interface which was added to the previous version of the patch, with some bug fixes.”
                                                                                                                            • Next are updates on porting CEPH to FreeBSD, the ongoing work to improve EFI+GELI (touched on last week) and more robust Mutexes.
                                                                                                                            • Additionally we have an update from Matt Macy and the Xorg team discussing the current work to update FreeBSD’s graphic stack:
                                                                                                                            • > “All Intel GPUs up to and including the unreleased Kaby Lake are supported. The xf86-video-intel driver will be updated soon. Updating this driver requires updating Xorg, which in turn is blocked on Nvidia updates.”
                                                                                                                            • The kernel also got some feature status updates, including on the new Allwinner SoC support, an update on FreeBSD in Hyper-V and VIMAGE
                                                                                                                            • In addition to a quick update on the arm64 architecture (It’s getting there, RPi3 is almost a thing), we also have a slew of port updates, including support for GitLab in ports, updates on GNOME / KDE and some additional Intel-specific networking tools.
                                                                                                                            • ***
                                                                                                                              Vulnerabilities discovered in freebsd-update and portsnap
                                                                                                                              • There are two vulnerabilities discovered in freebsd-update and portsnap, where an attacker could place files in the portsnap directory and they would be used without being subject to having their checksum verified (but this requires root access), and the second where a man-in-the-middle attacker could guess the name of a file you will fetch by exploiting the time-gap between when you download the initial snapshot, and when you fetch the updated files.
                                                                                                                              • There are a number of vulnerabilities that were discovered in libarchive/tar as well
                                                                                                                              • There is also an issue with bspatch. A security advisory for bspatch has already been released, as this vulnerabilities was also discovered by the Chromium team, which uses this same code. The patch discussed in this mailing list thread is larger, but secteam@ believes at least one of the additional checks introduced is incorrect and may prevent a valid patch from being applied. The smaller patch was pushed out first, to solve the main attack vector, while the larger patch is investigated. Automated fuzz testing is underway. Great care is being taken fixing bspatch, as if it is broken installing future updates becomes much more difficult
                                                                                                                              • secteam@ and core@ would like to emphasize that the FreeBSD project takes these issue very seriously and are working on it
                                                                                                                              • > “As a general rule, secteam@ does not announce vulnerabilities for which we don't have patches, but we concede that we should have considered making an exception in this case”
                                                                                                                              • Work is underway to re-architect freebsd-update and portsnap to do signature verification on all files before they are passed to libarchive/tar, to help protect users from any future vulnerabilities in libarchive.
                                                                                                                              • However, this requires changes to the metadata format to provide these additional signatures, and backwards compatibilities must be preserved, so people can update to the newer versions to get these additional security features
                                                                                                                              • There is also discussion of using HTTPS for delivery of the files, but certificate verification and trust are always an issue. FreeBSD does not distribute a certificate trust store by default.
                                                                                                                              • There will be more on this in the coming days.
                                                                                                                              • ***
                                                                                                                                OpenSSH 7.3 Released
                                                                                                                                • OpenSSH 7.3 has landed!
                                                                                                                                • Primarily a bug-fix release, the release notes do mention the pending deprecation of some more legacy Crypto in the future, including denying all RSA keys < 1024bit, and removal of SSHv1 support. (Already disabled via compile option)
                                                                                                                                • On the bug side, there was a security issue addressed in sshd:

                                                                                                                                • “sshd(8): Mitigate a potential denial-of-service attack against the system's crypt(3) function via sshd(8). An attacker could send very long passwords that would cause excessive CPU use in crypt(3). sshd(8) now refuses to accept password authentication requests of length greater than 1024 characters”

                                                                                                                                • Also a timing issue was resolved in regard to password auth, which could possibly allow an attacker to discern between valid/invalid account names.

                                                                                                                                • On the feature side, we have the new ProxyJump option (-J flag) which allows you to do simplified indirection through various SSH jump hosts.

                                                                                                                                • Various bugs were fixed, and some compile failures resolved in the portable version to auto-disable some ciphers not supported by OpenSSL.

                                                                                                                                • News Roundup
                                                                                                                                  OpenBSD Ports - Integrating Third Party Applications [pdf]
                                                                                                                                  • A talk from Josh Grosse, presented at SEMIBUG (South-East Michigan BSD Users Group), about OpenBSD Ports
                                                                                                                                  • It opens by explaining the separation of the ‘base system’ from ‘packages’, as is common in most all BSDs
                                                                                                                                  • It explains the contents of OpenBSD package tar file, which contain some metadata files (+CONTENTS and +DESC) and then the actual package files
                                                                                                                                  • The talk goes on to explain the different branches (-release, -stable, and -current), and warn users that there are no official -stable packages from the project
                                                                                                                                  • Then it goes on into the development model, including what new contributors should expect
                                                                                                                                  • Then it walks through the entire process of creating a port and getting it contributed
                                                                                                                                  • ***
                                                                                                                                    NetBSD removes last RWX page in amd64 kernel
                                                                                                                                    • NetBSD has purged the last holdout RWX page on the amd64 platform
                                                                                                                                    • > “Use UVM_PROT_ALL only if UVM_KMF_EXEC is given as argument. Otherwise, if UVM_KMF_PAGEABLE is also given as argument, only the VA is allocated and UVM waits for the page to fault before kentering it. When kentering it, it will use the UVM_PROT_ flag that was passed to uvm_map; which means that it will kenter it as RWX. With this change, the number of RWX pages in the amd64 kernel reaches strictly zero.”
                                                                                                                                    • Break out the party favors! Hopefully any last stragglers in any of the other BSD’s gets retired soon as well.
                                                                                                                                    • ***
                                                                                                                                      DragonFly BSD 4.6 launches with home-grown support for NVMe Controllers
                                                                                                                                      • Softpedia picked up on the release of DragonFlyBSD 4.6, specifically about their new home-grown NVMe driver.
                                                                                                                                      • > “We now have a NVMe driver (PCIe SSDs). It currently must be kldloaded with nvme_load="YES" in /boot/loader.conf. The driver uses all concurrency features offered by the chip and will distribute queues and interrupts across multiple CPUs to maximize performance. It has been tested up to around 1.05M IOPS @4K, and roughly 6.5 GBytes/sec @32K (random read from urandom-filled partition, physio, many threads), with the 2xE5-2620v4 (xeon) test server 78% idle in the IOPS test and 72% idle on the bandwidth test. In other words, we maxed out the three NVMe devices we had plugged in and the system still had plenty of suds left over. Please note that a machine's ability to boot from an NVMe device depends on the BIOS, and not DragonFly. Most BIOSes cannot boot from NVMe devices and those that can probably only do it through UEFI. Info on device state is available with the new utility nvmectl.“
                                                                                                                                      • In addition to this improved support, 4.6 also brings in the improved graphics support, matching what is in Linux 4.4 and support for Broadwell/Skylake.
                                                                                                                                      • SMP also got some love:
                                                                                                                                      • > “SMP performance was already very good. As part of the NVMe driver work we revamped the buffer cache subsystem and a number of other I/O related paths, further reducing lock contention and IPI signalling overheads. We also put topology-aware cpu cache localization into the kernel memory allocator (primarily helps multi-socket systems and systems with high core counts). The network subsystem also continues to receive significant improvement, with modest machine configurations now capable of handling upwards of 580K conns/sec.“
                                                                                                                                        +Full Release Notes
                                                                                                                                        ***
                                                                                                                                        The powerd++ daemon monitors the system load and adjusts the CPU clock accordingly and is a drop-in replacement for FreeBSD's native powerd(8).
                                                                                                                                        • As mentioned in our EuroBSDCon 2016 rundown, Dominic Fandrey will be giving a presentation about his powerd replacement, powerd++
                                                                                                                                        • The source code is already available on github, and is in ports
                                                                                                                                        • The major difference is the newer design handle many-core systems much better. The original powerd was written at a time when most laptops only had a single core, and maybe a hyperthread.
                                                                                                                                        • The new design decides which CPU frequency to use by looking at the busiest core, rather than the average across the cores, resulting in a more meaningful result. It also supports averaging over a longer period of time, to avoid jumping to a higher frequency to quickly
                                                                                                                                        • powerd++ also avoids ‘slewing’ the cpu frequency, ratching it up and down one step at a time, and instead jumps directly to the target frequency.
                                                                                                                                        • Often times, you will use less battery by jumping to maximum frequency, finishing the work, and going back to a low power state, than trying to do that work over a longer period of time in low power mode
                                                                                                                                        • ***
                                                                                                                                          Beastie Bits

                                                                                                                                          Hyper-V: Unmapped I/O improves userland direct disk performance by 35% ~ 135%

                                                                                                                                          One does not simply remove FreeBSD

                                                                                                                                          A new BSD Podcast "BSD Synergy" has started

                                                                                                                                          KnoxBug - Next Meeting - Aug 30th

                                                                                                                                          Feedback/Questions
                                                                                                                                          • Daniel - Root/Wheel
                                                                                                                                          • Joe - IPV6 Frag
                                                                                                                                          • Paul - ChicagoBug
                                                                                                                                          • Chris - SSH BruteBlock
                                                                                                                                          • Todd - Jails
                                                                                                                                          • ***
                                                                                                                                            1 hr 18 min
                                                                                                                                          • 152: The Laporte has landed!

                                                                                                                                            This week on BSDNow, we have some big breaking news about another major switcher to FreeBSD, plus early information about the pending

                                                                                                                                            This episode was brought to you by

                                                                                                                                            />

                                                                                                                                            Headlines
                                                                                                                                            Leo Laporte tries FreeBSD
                                                                                                                                            • Leo Laporte, formerly of TechTV, and now of TWiT.tv, is switching to FreeBSD
                                                                                                                                            • “The latest debacle over the "forced" upgrade to Windows 10 and Apple's increasingly locked-in ecosystem has got me thinking. Do I really need to use a proprietary operating system to get work done? And while I'm at it, do I need to use commercial cloud services to store my data?”
                                                                                                                                            • A sometimes Linux user since the mid 90s, Leo talks about his motivations:
                                                                                                                                            • “But as time went by, even Ubuntu began to seem too commercial to me”
                                                                                                                                            • “So now for the grand experiment. Is it possible, I wonder, to do everything I need to do on an even more venerable, more robust system: a true UNIX OS, FreeBSD? Here are my requirements”
                                                                                                                                            • Browsing
                                                                                                                                            • Email with PGP signing and encryption
                                                                                                                                            • Coding - I'm a hobbyist programmer requiring support for lisp/scheme/racket, rust, and python (and maybe forth and clojure and meteor and whatever else is cool and new)
                                                                                                                                            • Writing
                                                                                                                                            • A password vault. I currently use Lastpass because it syncs with mobile but eventually I'll need to find a FOSS replacement for that, too
                                                                                                                                            • Photo editing - this is the toughest to replace. I love Photoshop and Lightroom. Can I get by with, say, GIMP and Darktable?
                                                                                                                                            • I do all of those things on my PCBSD machine all the time
                                                                                                                                            • “I love Linux and will continue to use it on my laptops, but for my main workhorse desktop I think FreeBSD will be a better choice. I also look forward to learning and administering a true UNIX system.”
                                                                                                                                            • He got a nice SuperMicro based workstation, with an Intel Xeon E3-1275v5 and an NVIDIA GeForce GTX 960 GPU
                                                                                                                                            • I have a server with one of those Skylake E3s, it is very nice
                                                                                                                                            • “450Mbps Wireless N Dual Band PCI-e Adapter w/ 3x 2dBi Antennas (Yes, sad to say, unless I rewire my house I'll have to use Wi-Fi with this beast. I'll probably rewire my house.)”
                                                                                                                                            • He plans to have a 4x 1TB ZFS pool, plus a second pool backed by a 512 GB NVMe m.2 for the OS
                                                                                                                                            • “And I'll continue to chronicle my journey into the land of FOSS here when The Beast arrives. But in the meantime, please excuse me, I've got some reading to do.”
                                                                                                                                            • Leo went so far as to slap a “Power By FreeBSD” sticker on the back of his new Tesla
                                                                                                                                            • ***
                                                                                                                                              OpenBSD 6.0 to be released on Sept 1st, 2016
                                                                                                                                              • OpenBSD 6.0 Tenative Released Notes
                                                                                                                                              • OpenBSD 6.0 is just around the corner, currently slated for Sept 1st and brings with it a whole slew of exciting new features
                                                                                                                                              • First up, and let’s get this right out of the way.. VAX support has been dropped!! Oh no!
                                                                                                                                              • However to make up for this devastating loss, armv7 has been added to this release.
                                                                                                                                              • The tentative release notes are very complete and marks 6.0 as quite an exciting release
                                                                                                                                              • OpenBSD 6.0 Pre-orders up
                                                                                                                                              • OpenBSD 6.0 tightens security by losing Linux compatibility
                                                                                                                                                • In related news, infoworld picked up on the pending removal of Linux compat from OpenBSD 6.0.
                                                                                                                                                • Touted as a security feature, you will soon be unable to run legacy linux binaries on OpenBSD. This has both positives and negatives depending upon your use case. Ironically we’re excitedly awaiting improved Linux Compat support in FreeBSD, to allow running some various closed-source applications. (Netflix DRM, Steam, Skype to name a few)
                                                                                                                                                • ***
                                                                                                                                                  EuroBSDCon 2016 Schedule released
                                                                                                                                                  • EuroBSDCon 2016 Tutorial Schedule released
                                                                                                                                                  • EuroBSDCon has announced the list of talks and tutorials for September 22nd-25th’s conference!
                                                                                                                                                  • George Neville Neil (Who we’ve interviewed in the past) is giving the keynote about “The Coming Decades of BSD”
                                                                                                                                                  • ***
                                                                                                                                                    News Roundup
                                                                                                                                                    Blast from the past
                                                                                                                                                    • No interview again this week, we’re working on getting some people lined up.
                                                                                                                                                    • The Leo Laporte story brought these old gem from TechTV into my youtube playlist:
                                                                                                                                                    • Matt Olander and Murrey Stokey explain FreeBSD on TechTV
                                                                                                                                                    • Matt Olander and Brooks Davis explain building a cluster with FreeBSD on TechTV
                                                                                                                                                    • FreeBSD vs Linux Part 1
                                                                                                                                                    • FreeBSD vs Linux Part 2
                                                                                                                                                    • ***
                                                                                                                                                      Running FreeBSD on the LibreM
                                                                                                                                                      • Eric McCorkle (Who has worked on the EFI loader for a while now) has written an update on his efforts to get FreeBSD working properly on the LibreM 13 laptop.
                                                                                                                                                      • Since April the work seems to be progressing nicely

                                                                                                                                                        • Matt Macy’s i915 graphics patch works well on the Librem 13, and I personally made sure that the suspend/resume support works. The patch is very stable on the Librem, and I’ve only had one kernel panic the entire time testing it.
                                                                                                                                                        • The HDMI output Just Works™ with the i915 driver. Even better, it works for both X11 and console modes.
                                                                                                                                                        • Full support for the Atheros 9462 card has been merged in. I’ve had some occasional issues, but it works for the most part.
                                                                                                                                                        • The vesa weirdness is obviated by i915 support, but it was resolved by using the scfb driver.
                                                                                                                                                        • Some of the outstanding issues still being worked on are support for Synaptics on this particular touchpad, as well as hotkey support for the keyboard, and brightness controls.

                                                                                                                                                        • In addition Eric is still working on the EFI + Geli support, with the eventual goal of getting EFI secure-boot working out of box as well.

                                                                                                                                                        • More OpenBSD syscall fuzzing
                                                                                                                                                          • NCC Group’s Project Triforce continues its work of fuzzing OpenBSD
                                                                                                                                                          • This time they have found a flaw that allows any user to panic the kernel
                                                                                                                                                          • Attempting to read from the tmpfs_vfsops sysctl tree will panic the system: “attempt to execute user address 0x0 in supervisor mode”
                                                                                                                                                          • This is actually a “good” thing…
                                                                                                                                                          • “Impact: Any user can panic the kernel by using the sysctl call. If a user can manage to map a page at address zero, they may be able to gain kernel code execution and escalate privileges”
                                                                                                                                                          • OpenBSD’s default configuration prevents mapping a page at address zero, so the code execution is prevented
                                                                                                                                                          • So while a panic is a bad outcome, it is a lot better than it could have been
                                                                                                                                                          • ***
                                                                                                                                                            Root privilege escalation on NetBSD
                                                                                                                                                            • This post described a root privilege escalation in NetBSD
                                                                                                                                                            • mail.local is a utility included in the base system for delivering mail to other users on the same system, rather than invoking a mail client and going through the mail server.
                                                                                                                                                            • The mail.local utility contains a ‘time of check / time of use’ vulnerability. This means that it checks if a file or permission is valid, and then later accesses that file. If an attacker can change that file between the time when it is checked, and the time when it is used, they may be able to exploit the system by evading the check
                                                                                                                                                            • This is exactly what happens in this case
                                                                                                                                                            • mail.local appends a message to the indicated user’s mailbox
                                                                                                                                                            • It first checks if the target user already has an existing mailbox file. If the file exists, but is a link, mail.local exits with an error (to prevent exploits)
                                                                                                                                                            • If the file does not exist, it is created
                                                                                                                                                            • The message is then appended to the file
                                                                                                                                                            • If the file needed to be created, it is chown’d to the owner of the mailbox
                                                                                                                                                            • This is where the problem lies, if mail.local checks and does not find the mailbox, but an attacker then creates a link from the target mailbox to some other file
                                                                                                                                                            • mail.local then appends to that file instead, thinking it is creating the new mailbox
                                                                                                                                                            • Then, mail.local chown’s the target file to the user the attacker was trying to send mail to
                                                                                                                                                            • The article explains how this could be used to replace /etc/master.passwd etc, but opts for an easier proof of concept, replacing /usr/bin/atrun, which is run as root every 5 minutes from crontab with a script that will copy the shell to /tmp and mark it setuid
                                                                                                                                                            • The attacker can then run that shell out of /tmp, and be root
                                                                                                                                                            • NetBSD fixed the vulnerability by changing the code flow, separating the cases for opening an existing file from creating a new file.
                                                                                                                                                            • In the case where an existing file is opened, the code then verifies that the file that was opened has the same inode number and is on the same device, as the file that was checked earlier, to ensure it was not a link
                                                                                                                                                            • ***
                                                                                                                                                              FreeBSD Heap vulnerability in bspatch
                                                                                                                                                              • An important vuln has been found and fixed in FreeBSD this past week, specifically relating to the ‘bspatch’ utility.
                                                                                                                                                              • “Upstream's bspatch.c implementation doesn't check for negative values on the number of bytes to read from the "diff" and "extra" streams, allowing an attacker controlling the patch file to write at arbitrary locations in the heap.”
                                                                                                                                                              • This could result in a crash, or running arbitrary code as the user running bspatch. (Often root)
                                                                                                                                                              • “bspatch's main loop reads three numbers from the "control" stream in the patch: X, Y and Z. The first two are the number of bytes to read from "diff" and "extra" (and thus only non-negative), while the third one could be positive or negative and moves the oldpos pointer on the source image. These 3 values are 64bits signed ints (encoded somehow on the file) that are later passed the function that reads from the streams, but those values are not verified to be non-negative.”
                                                                                                                                                              • “Chrome[OS] has four different implementations of this program, all derived from the same original code by Colin Percival.”
                                                                                                                                                              • Chromium Issue Tracker
                                                                                                                                                              • Patch your systems now!
                                                                                                                                                              • ***
                                                                                                                                                                Beastie Bits:
                                                                                                                                                                • If you're a BUG member or Organizer, please contact BSD Now

                                                                                                                                                                • TedU writes about some interesting localizations to gcc in openbsd, and why they are there

                                                                                                                                                                • List of Products based on FreeBSD -- Help complete the list

                                                                                                                                                                • Virtualbox v5 hits the FreeBSD Ports tree

                                                                                                                                                                • Skull Canyon NUC booting FreeBSD 11.0-BETA2

                                                                                                                                                                • 2016 BSDCan Trip Report : Trent Thompson

                                                                                                                                                                • August London BSD Meetup

                                                                                                                                                                • Feedback/Questions
                                                                                                                                                                  • Michael Open-Source Alts
                                                                                                                                                                  • Herminio - AP Troubles
                                                                                                                                                                  • Jake - Plasma
                                                                                                                                                                  • Morgan - Clean DO Droplets
                                                                                                                                                                  • Chris - Auditd
                                                                                                                                                                  • ***
                                                                                                                                                                    1 hr 12 min
                                                                                                                                                                  • 151: Fuzzy Auditing

                                                                                                                                                                    This week on BSDNow, we have all sorts of interesting news, including a Kernel Fuzzing audit done for OpenBSD, a much improved

                                                                                                                                                                    This episode was brought to you by

                                                                                                                                                                    />

                                                                                                                                                                    Headlines
                                                                                                                                                                    Multiple Bugs in OpenBSD Kernel
                                                                                                                                                                    • Its patch Wednesday! (OR last Thursday if you were watching the mailing lists)
                                                                                                                                                                    • Jesse Hertz and Tim Newsham (part of the NCC Group calling themselves project Triforce) have been working with the OpenBSD team to fix some newly discovered bugs in the kernel using fuzzing.
                                                                                                                                                                    • Specifically they were able to track down several potential methods to corrupt memory or panic the kernel:
                                                                                                                                                                      • mmap_panic: Malicious calls to mmap() can trigger an allocation panic or trigger memory corruption.
                                                                                                                                                                      • kevent_panic: Any user can panic the kernel with the kevent system call.
                                                                                                                                                                      • thrsleep_panic: Any user can panic the kernel with the __thrsleep system Call.
                                                                                                                                                                      • thrsigdivert_panic: Any user can panic the kernel with the __thrsigdivert system call.
                                                                                                                                                                      • ufs_getdents_panic: Any user can panic the kernel with the getdents system call.
                                                                                                                                                                      • mount_panic: Root users, or users on systems with kern.usermount set to true, can trigger a kernel panic when mounting a tmpfs filesystem.
                                                                                                                                                                      • unmount_panic: Root users, or users on systems with kern.usermount set to true, can trigger a kernel panic when unmounting a filesystem.
                                                                                                                                                                      • tmpfs_mknod_panic: Root can panic kernel with mknod on a tmpfs filesystem.
                                                                                                                                                                      • This was a great find, and we have a link to more of the results, if you would like to explore them in more detail.
                                                                                                                                                                      • NCC Group OpenBSD Kernel fuzzing results
                                                                                                                                                                      • Would like to see more work like this done in all of the BSDs
                                                                                                                                                                      • ***
                                                                                                                                                                        Running CockroachDB in a FreeBSD Jail
                                                                                                                                                                        • The developers behind CockroachDB have written up a nice walkthrough of getting their software to run inside FreeBSD jails.
                                                                                                                                                                        • “Manually encapsulating CockroachDB using Linux cgroups is no easy task, which is why tools like Docker exist in the first place. By comparison, running server processes natively in FreeBSD jails is straightforward and robust.”

                                                                                                                                                                          • The walkthrough begins with compiling CockroachDB straight from source (A port is pending), which is pretty easy relying upon bash / git / gmake and GO.
                                                                                                                                                                          • With the compile finished, the next step will be mounting linprocfs, although that may be going away in the future:
                                                                                                                                                                          • “(Note: Linux compatibility files / packages / libraries are not needed further. CockroachDB uses Linux’s procfs to inspect system properties via gosigar. If/when gosigar evolves to read FreeBSD properties natively, CockroachDB will not need linprocfs any more.)”

                                                                                                                                                                            • With the initial setup complete, the walkthrough then takes us through the process of creating the rc.d script (Which should be included with the port) and ultimately setting up ezjail and deploying CockroachDB within.
                                                                                                                                                                            • With the word getting out about jails and their functionality, we hope to see more projects also provide walkthroughs and FreeBSD support natively. Kudos to the CockroachDB team!
                                                                                                                                                                            • ***
                                                                                                                                                                              Usermount bugs
                                                                                                                                                                              • kern.usermount, (vfs.usermount on FreeBSD) is a sysctl that can be enabled to allow an unprivileged user to mount filesystems. It is very useful for allowing non-root users to mount a USB stick or other external media.
                                                                                                                                                                              • It is not without its dangers though:
                                                                                                                                                                              • > “kern.usermount=1 is unsafe for everyone, since it allows any non-pledged program to call the mount/umount system calls. There is no way any user can be expected to keep their system safe / reliable with this feature. Ignore setting to =1, and after release we'll delete the sysctl entirely.”
                                                                                                                                                                              • In OpenBSD 6.0 and forward, the setting will no longer work, and root privileges will be required to mount a filesystem
                                                                                                                                                                              • If there is a bug in the filesystem driver, the user could potentially exploit that and root the system
                                                                                                                                                                              • > “In addition to the patched bugs, several panics were discovered by NCC that can be triggered by root or users with the usermount option set. These bugs are not getting patched because we believe they are only the tip of the iceberg. The mount system call exposes too much code to userland to be considered secure”
                                                                                                                                                                              • This is a very pragmatic way of dealing with these issues, as it is not really possible to be sure that EVERY bug has been fixed, and that this feature is no longer an exploit vector
                                                                                                                                                                              • usermount being removed from OpenBSD
                                                                                                                                                                              • I use this facility in FreeBSD extensively, combined with ZFS permission delegation, to allow non-root users to create and mount new ZFS datasets, and to do replication without requiring any root access
                                                                                                                                                                              • There are some safety belts, for instance: the user must own the directory that the new filesystem will be mounted to, so they can’t mount to /etc and replace the password file with their own
                                                                                                                                                                              • ***
                                                                                                                                                                                Let's Encrypt client from BSD in C
                                                                                                                                                                                • File this one under the category of “It’s about time!”, but Kristaps (Who we’ve interviewed in the past) has released some new software for interacting with letsencrypt.
                                                                                                                                                                                • The header for the project site sums it up nicely:
                                                                                                                                                                                • “Be up-front about security: OpenSSL is known to have issues, you can't trust what comes down the pipe, and your private key's integrity is a hard requirement. Not a situation where you can be careless. letskencrypt is a client for Let's Encrypt users, but one designed for security. No Python. No Ruby. No Bash.A straightforward, open source implementation in C that isolates each step of the sequence.”

                                                                                                                                                                                  • What specifically does it isolate you ask? Right now it is broken down into 6 steps:
                                                                                                                                                                                  • read and parse an account and domain private key

                                                                                                                                                                                    authenticate with the Let's Encrypt server
                                                                                                                                                                                    authorise each domain listed for the certificate
                                                                                                                                                                                    submit the X509 request
                                                                                                                                                                                    receive and serialise the signed X509 certificate
                                                                                                                                                                                    request, receive, and serialise the certificate chain from the issuer

                                                                                                                                                                                    • I don’t know about all of you, but I’m going to be switching over one of my systems this weekend.
                                                                                                                                                                                    • ***
                                                                                                                                                                                      News Roundup
                                                                                                                                                                                      Videos from the FOSDEM BSD Dev room are now online
                                                                                                                                                                                      • The videos from the BSD Dev room at FOSDEM have been stealthily posted online at some point since last I checked
                                                                                                                                                                                      • The videos are individually linked from the talks on the Schedule
                                                                                                                                                                                      • The talk pages also include the slides, which can help you to follow along
                                                                                                                                                                                      • ***
                                                                                                                                                                                        FreeBSD on Jetson TK1
                                                                                                                                                                                        • The nVidia Jetson TK1 is a medium sized ARM device that is a big more than your standard Raspberry Pi
                                                                                                                                                                                        • The device has:
                                                                                                                                                                                          • NVIDIA 4-Plus-1™ Quad-Core ARM® Cortex™-A15 CPU (2.3 GHz)
                                                                                                                                                                                          • NVIDIA Kepler GPU with 192 CUDA Cores
                                                                                                                                                                                          • 2 GB DDR3L x16 Memory with 64-bit Width
                                                                                                                                                                                          • 16 GB 4.51 eMMC Memory
                                                                                                                                                                                          • 1 Half Mini-PCIE Slot
                                                                                                                                                                                          • 1 Full-Size SD/MMC Connector
                                                                                                                                                                                          • 1 Full-Size HDMI Port
                                                                                                                                                                                          • 1 USB 2.0 Port, Micro AB
                                                                                                                                                                                          • 1 USB 3.0 Port, A
                                                                                                                                                                                          • 1 RS232 Serial Port
                                                                                                                                                                                          • 1 ALC5639 Realtek Audio Codec with Mic In and Line Out
                                                                                                                                                                                          • 1 RTL8111GS Realtek GigE LAN
                                                                                                                                                                                          • 1 SATA Data Port
                                                                                                                                                                                          • SPI 4 MByte Boot Flash
                                                                                                                                                                                          • The following signals are available through an expansion port:
                                                                                                                                                                                            • DP/LVDS
                                                                                                                                                                                            • Touch SPI 1x4 + 1x1 CSI-2
                                                                                                                                                                                            • GPIOs
                                                                                                                                                                                            • UART
                                                                                                                                                                                            • HSIC
                                                                                                                                                                                            • i2c
                                                                                                                                                                                            • The device costs $192 USD from nVidia or Amazon
                                                                                                                                                                                            • Oleksandr Tymoshenko ([email protected]) has a post describing what it takes to get FreeBSD running on the Jetson TK1
                                                                                                                                                                                            • > “First of all – my TK1 didn’t have U-Boot. Type of bootloader depends on the version of Linux4Tegra TK1 comes with. Mine had L4T R19, with some kind of “not u-boot” bootloader.”
                                                                                                                                                                                            • They tried using the provided tool, compiled on FreeBSD since it uses libusb, but it gave an error. Falling back to trying from Ubuntu, they got the same error.
                                                                                                                                                                                            • They then flashed the TK1 with newer firmware, and suddenly, uboot is available.
                                                                                                                                                                                            • The post then walks through pxe booting FreeBSD on the TK1
                                                                                                                                                                                            • The guide then walks through replacing the UBoot with a version compatible with UBLDR, for more features
                                                                                                                                                                                            • We’ll have to wait for another post to get FreeBSD burned onto the device, but at this point, you can reliably boot it without any user interaction
                                                                                                                                                                                            • I have one of these devices, so I am very interested in this work
                                                                                                                                                                                            • ***
                                                                                                                                                                                              Why we use OpenBSD at VidiGaurd
                                                                                                                                                                                              • VidiGuard (Which makes autonomous drone solutions for security monitoring) has posted an interesting write-up on why they use OpenBSD.
                                                                                                                                                                                              • Specifically they start by mentioning while they are in business to provide physical security, they just as equally value their data security, especially their customer data.
                                                                                                                                                                                              • They name 4 specific features that matter to them, starting with Uncompromising Quality and Security:
                                                                                                                                                                                              • “Over the past 20 years, OpenBSD’s focus on uncompromising quality and code correctness has yielded an operating system second-to-none. Code auditing and review is core to the project’s development process. The team’s focus on security includes integrated cryptography, new security mitigation techniques, and an optional-security-is-no-security stance, making it arguably the most secure operating system available today. This approach pays off in the form of only a few security updates for a given release, compared to other operating systems that might release a handful of updates every week.”

                                                                                                                                                                                                • High praise indeed! They also mention the sane-defaults, documentation and last but not least, the license as also winning factors in making OpenBSD their operating system of choice.
                                                                                                                                                                                                • Thanks to VidiGuard for publically detailing the use of BSD, and we hope to see other business follow suit!
                                                                                                                                                                                                • ***
                                                                                                                                                                                                  "You can (and should) slow down and learn how things work" – Interview with Dru Lavigne
                                                                                                                                                                                                  • If you’ve been around the BSD community for any length of time, you no doubt have heard of Dru Lavigne (Or perhaps own one of her books!)
                                                                                                                                                                                                  • She was recently interviewed by Luca Ferrari for BSD Magazine and you may find it a fascinating read.
                                                                                                                                                                                                  • The 2nd question asked sounded a lot like our opener to an interview (How did you get into BSD)
                                                                                                                                                                                                  • “ In the mid 90s, I went back to school to learn network and system administration. As graduation grew near and I started looking for a work, I noticed that all the interesting jobs wanted Unix skills. Wanting to increase my skills, and not having any money, I did an Internet search for “Free Unix”. The first hit was freebsd.org. I went to the website and started reading the Handbook and thought “I can do this”. Since I only had access to one computer and wanted to ramp up my skills quickly, I printed out the installation and networking chapters of the Handbook. I replaced the current operating system with FreeBSD and forced myself to learn how to do everything I needed to do on that computer in FreeBSD. It was a painful (and scary) few weeks as I figured out how to transition the family’s workflow to FreeBSD, but it was also exhilarating to learn that “yes, I can do this!. Since then, I’ve had the opportunity to try out or administer the other BSDs, several Linux distros, SCO, and Solaris. I found that the layout, logic, and release engineering process of the BSDs makes the most sense to me and I’m happiest when on a BSD system.”

                                                                                                                                                                                                    • When asked, Dru also had a good response to what challenges potential new UNIX or BSD users may face:
                                                                                                                                                                                                    • “Students who haven’t been exposed to open source before are used to thinking of technology in terms of a purchasable brand consisting of “black boxes” that are supposed to “just work”, without having to think about how they work. You can (and should) slow down and learn how things work. It can be a mind shift to learn that the freedom to use and change how something works does exist, and isn’t considered stealing. And that learning how something works, while hard, can be fun. BSD culture, in particular, is well suited for those who have the time and temperament to dive into how things work. With over 40 years of freely available source and commit messages, you can dive as deep as you want into learning how things came to be, how they evolved over the years, how they work now, and how they can be improved. There is a diverse range of stuff to choose from: from user tools to networking to memory management to hardware drivers to security mechanisms and so on. There is also a culture of sharing and learning and encouragement for users who demonstrate that they have done their homework and have their own ideas to contribute.”

                                                                                                                                                                                                      • The interview is quite long, and Dru provides fantastic insights into more aspects of BSD in general. Well worth your time to read!
                                                                                                                                                                                                      • ***
                                                                                                                                                                                                        Beastie Bits:
                                                                                                                                                                                                        • Ed Maste is seeking testing 'without_gpl_dtc'

                                                                                                                                                                                                        • “PAM Mastery” tech reviewers wanted

                                                                                                                                                                                                        • OPNsense 16.7 RC2

                                                                                                                                                                                                        • Jupyter Notebook for bootstrapping Arduino on FreeBSD

                                                                                                                                                                                                        • The Design and Implementation of the Anykernel and Rump Kernels (second edition)

                                                                                                                                                                                                        • Complete desktop synchronisation with Unison and FreeBSD jails (xjails)

                                                                                                                                                                                                        • Feedback/Questions
                                                                                                                                                                                                          • Eric - List most popular files
                                                                                                                                                                                                          • Robroy - ZFS Write Cache
                                                                                                                                                                                                          • Luis - FreeNAS HW Setup
                                                                                                                                                                                                          • Emett - Python Followup
                                                                                                                                                                                                          • Peter - Multicast + Jails
                                                                                                                                                                                                          • ***
                                                                                                                                                                                                            1 hr 10 min
                                                                                                                                                                                                          • 150: Sprinkle a little BSD into your life.

                                                                                                                                                                                                            Today on the show, we are going to be talking to Jim Brown (of BSD Cert Fame) about his home-brew sprinkler system… Wait for it…

                                                                                                                                                                                                            This episode was brought to you by

                                                                                                                                                                                                            Headlines
                                                                                                                                                                                                            Distrowatch reviews OpenBSD and PCBSD's live upgrade method
                                                                                                                                                                                                            • Upgrading… The bane of any sysadmin! Distrowatch has recently done a write-up on the in-place upgrading of various distros / BSDs including PC-BSD and OpenBSD.
                                                                                                                                                                                                            • Lets look first at the PC-BSD attempt, which was done going from 9.2 -> 10.
                                                                                                                                                                                                            • “I soon found trying to upgrade either the base system or pkg would fail. The update manager did not provide details as to what had gone wrong and so I decided to attempt a manual upgrade by following the FreeBSD Handbook as I had when performing a live upgrade of FreeBSD back in May. At first the manual process seemed to work, downloading the necessary patches for FreeBSD 10 and getting me to resolve conflicts between my existing configuration files and the new versions. Part way through, we are asked to reboot and then continue the upgrade process using the freebsd-update command utility. PC-BSD failed to reboot and, in fact, the boot loader no longer found any operating systems to run.”

                                                                                                                                                                                                              • Ouch! I’m not sure on the particular commands used, but to lose the boot-loader indicates something went horribly wrong. There is good news in this though. After the pain experienced in the 9.X upgrade process, 11.0 has been vastly improved to help fix this going forward. The updater is also self-updating, which means future changes to tools such as package can be accounted for in previously released versions.
                                                                                                                                                                                                              • Moving on to OpenBSD, Jesse had much better luck:
                                                                                                                                                                                                              • > “The documentation provided explains how to upgrade OpenBSD 5.8 to version 5.9 step-by-step and the instructions worked exactly as laid out. Upgrading requires two reboots, one to initiate the upgrade process and one to boot into the new version of OpenBSD. Upgrading the base operating system took approximately ten minutes, including the two reboots. Upgrading the third-party packages took another minute or two. The only quirk I ran into was that I had to manually update my repository mirror information to gain access to the new packages available for OpenBSD 5.9. If this step is not done, then the pkg_add package manager will continue to pull in packages from the old repository we set up for OpenBSD 5.8. “
                                                                                                                                                                                                              • A good read, and they covered some Linux distros such as Mint and OpenMandriva as well, if you want to find out how they fared.
                                                                                                                                                                                                              • ***
                                                                                                                                                                                                                A curated list of awesome DTrace books, articles, videos, tools and resources
                                                                                                                                                                                                                • The website awesome-dtrace.com compiles a list of resources, including books, articles, videos, tools, and other resources, to help you get the most out of DTrace
                                                                                                                                                                                                                • The list of books includes 2 open source books that are available on the web, and of course Brendan Gregg’s official DTrace book
                                                                                                                                                                                                                • There are also cheat sheets, one-liner collections, and a set of DTrace war stories
                                                                                                                                                                                                                • A breakdown of different PID providers and the userspace statically defined tracepoints
                                                                                                                                                                                                                • The videos from DTrace.conf 2008, 2012, and soon 2016
                                                                                                                                                                                                                • And links to the tools to start using DTrace with your favourite programming language, including Erlang, Node.JS, Perl, PHP, Python, or Ruby
                                                                                                                                                                                                                • There are also DTrace setups for MySQL/MariaDB, and PostreSQL
                                                                                                                                                                                                                • Joyent has even written a mod_usdt DTrace module for the Apache web server
                                                                                                                                                                                                                • This seems like a really good resource, and with the efforts of the new OpenDTrace project, to modernize the dtracetoolkit and make it more useful across the different supported operating systems, there has never been a better time to start learning DTrace
                                                                                                                                                                                                                • ***
                                                                                                                                                                                                                  Installing OpenBSD using a serial console with no external monitor
                                                                                                                                                                                                                  • Have you found yourself needing to install OpenBSD from USB, but with a twist, as in no external monitor? Well somebody has and asked the question on stackexchange.
                                                                                                                                                                                                                  • The answer provided is quite well explained, but in a nut-shell the process involves downloading the USB image and making some tweaks before copying it to the physical media.
                                                                                                                                                                                                                  • Specifically with a couple of well-placed echo’s into boot.conf, the serial-port can be enabled and ready for use:
                                                                                                                                                                                                                  • echo "stty com0 115200" > /mnt/etc/boot.conf

                                                                                                                                                                                                                    echo "set tty com0" >> /mnt/etc/boot.conf

                                                                                                                                                                                                                    • After that, simply boot the box and you are ready to access the serial console and drive the installation as normal! #bsdhacks
                                                                                                                                                                                                                    • ***
                                                                                                                                                                                                                      GSoC 2016 Reports: Split debug symbols for pkgsrc builds
                                                                                                                                                                                                                      • The NetBSD blog provides a status report on one of the GSoC projects that is nearing its midterm evaluation
                                                                                                                                                                                                                      • The project to split debugging data into separate pkgsrc packages, so that users can install the debugging symbols if they need them to debug a failing application
                                                                                                                                                                                                                      • The report is very detailed, and includes “A quick introduction to ELF and how debug information are stored/stripped off”
                                                                                                                                                                                                                      • It walks through the process of writing a simple example application, compiling it, and dealing with the debug data
                                                                                                                                                                                                                      • It includes a number of very useful diagrams, and a summary of what changes needed to be make to the pkgsrc makefile infrastructure
                                                                                                                                                                                                                      • With this as a recipe, someone should be able to do something quite similar for FreeBSD’s ports tree
                                                                                                                                                                                                                      • ***
                                                                                                                                                                                                                        iXsystems
                                                                                                                                                                                                                        • iXsystems’ TrueNAS Firmware Update Delivers Compelling Performance, Replication, and Graphing Improvements
                                                                                                                                                                                                                        • ***
                                                                                                                                                                                                                          Interview - Jim Brown - [email protected]

                                                                                                                                                                                                                          FreeBSD+BBB Sprinkler System

                                                                                                                                                                                                                          News Roundup
                                                                                                                                                                                                                          From the past : A Research Unix Reader
                                                                                                                                                                                                                          • A paper by by Douglas McIlroy
                                                                                                                                                                                                                          • “Selected pages from the nine research editions of the UNIX® Programmer’s Manual illustrate the development of the system”
                                                                                                                                                                                                                          • “Accompanying commentary recounts some of the needs, events, and individual contributions that shaped this evolution.”
                                                                                                                                                                                                                          • Interesting insight into the evolution of the origin UNIX operating system
                                                                                                                                                                                                                          • ***
                                                                                                                                                                                                                            Evolution of C programming practices – Unix 1973–2015
                                                                                                                                                                                                                            • From the author of the recent post we covered, “20 years of NetBSD code bloat”, comes a new post
                                                                                                                                                                                                                            • “I found a recent paper that also looks at how the BSD code base has evolved, but from a very different perspective compared to my code-size investigation.”
                                                                                                                                                                                                                            • The paper "The Evolution of C Programming Practices: A Study of the Unix Operating System 1973–2015" investigates coding style, and tests seven hypotheses by looking at metrics (line length, number of volatile in the source code, etc.) in 66 releases of Unix from 1973 to 2014. The hypotheses are:
                                                                                                                                                                                                                            • > + Programming practices reflect technology affordances (e.g. developers may be more liberal with screen space when using high resolution displays)
                                                                                                                                                                                                                              > + Modularity increases with code size
                                                                                                                                                                                                                              > + New language features are increasingly used to saturation point
                                                                                                                                                                                                                              > + Programmers trust the compiler for register allocation
                                                                                                                                                                                                                              > + Code formatting practices converge to a common standard
                                                                                                                                                                                                                              > + Software complexity evolution follows self correction feedback mechanisms
                                                                                                                                                                                                                              > + Code readability increases
                                                                                                                                                                                                                            • and the result is that they seem to be true, as interpreted through the metrics.
                                                                                                                                                                                                                            • > “The data points for the releases have somewhat random dates. One issue is that the paper use each release's mean file date (the average of the files' last modification time) instead of the release date (that is why the graphs stop at November 2010, even though FreeBSD 10 was released in 2014). The idea is that this better reflects the age of the code base, but this has the effect of compressing some of the data points (especially the clustering around 1993-1994), and it makes the spline fitting even more suspect.”
                                                                                                                                                                                                                              > “One other problem is that the original data used by the researchers seems to have incorrect timestamps. For example, 4.3BSD Net/1 was released in 1989, but is listed as 1993-12-25 in the paper. The same is true for at least the Net/2 release too, which was released in 1991, but the paper list it as 1993-07-02.”
                                                                                                                                                                                                                              ***
                                                                                                                                                                                                                              [old release pictures]
                                                                                                                                                                                                                              • openbsd 2.1 - 5.9, straight from theo's bookshelf.
                                                                                                                                                                                                                              • Speaking of old releases, our Producer JT picked up this gem at Southeast Linuxfest this year
                                                                                                                                                                                                                              • Noah Axon shares a scan of his NetBSD 1.4 disc
                                                                                                                                                                                                                              • Jan van den broek shares a pic of his FreeBSD 2.2.5 set
                                                                                                                                                                                                                              • ***
                                                                                                                                                                                                                                FreeBSD: Just in Time
                                                                                                                                                                                                                                • Another BSDMag goodie this week, we have a small article written by Jonathan Garrido which details their experience switching to FreeBSD for a NTP server.
                                                                                                                                                                                                                                • The article is short, but a good read:
                                                                                                                                                                                                                                • > “A Few years ago we had a time problem. Suddenly our linux NTP server, for a reason that I still do not know, started to fail giving us a lot of issues within all the equipment and services within our network. After a quick and brief meeting with management, I found out that there was not sufficient budget left for a fancy and well-suited appliance. So, with no time (literally) and no money to spend, I decided to give it a try and utilized a homemade open source solution, and the operating system of choice was FreeBSD 10.0.”

                                                                                                                                                                                                                                  “Now, let’s pause for a second. You may be thinking, why in the world is this guy doing this, when he has never installed a BSD machine in his life? The answer is very simple; here, in the Dominican Republic, in the heart of the Caribbean, FreeBSD has a very good reputation when it comes to reliability and security. In fact, there is some collective thought within the sysadmin community that says something like: “If you want to deal only once with a service, install it over FreeBSD.””

                                                                                                                                                                                                                                  • Jonathan then goes through some of the steps taken to initial deploy NTP services, but with that out of the way, he has a great summary:
                                                                                                                                                                                                                                  • > “Fascinated with the whole experience, we migrate one of our internal dns servers to a second FreeBSD machine and at the moment of this writing we are testing haproxy, an open source load-balancing proxy into a another server with the same OS.
                                                                                                                                                                                                                                    > After all this, no time issues have been reported in the past 2 years, so at least for my environment, FreeBSD came just in time.“
                                                                                                                                                                                                                                    ***
                                                                                                                                                                                                                                    Beastie Bits
                                                                                                                                                                                                                                    • MiniBSD laptop computer

                                                                                                                                                                                                                                    • The state of LibreSSL in FreeBSD

                                                                                                                                                                                                                                    • Justin Sherrill is looking for someone willing to run a Go builder with DragonflyBSD

                                                                                                                                                                                                                                    • Tiny Unix tools for Windows

                                                                                                                                                                                                                                    • OpenBSD's doas added to the FreeBSD Ports Tree

                                                                                                                                                                                                                                    • ubuntuBSD 16.04 to feature a combo of BusyBox and OpenRC, no systemd

                                                                                                                                                                                                                                    • Syncast Podcast 4 : Curl, libcurl and the future of the web, with Daniel Stenberg

                                                                                                                                                                                                                                    • Feedback/Questions
                                                                                                                                                                                                                                      • Harri - Using beadm / zfssnap
                                                                                                                                                                                                                                      • Jonathan - bhyve vs Proxmox
                                                                                                                                                                                                                                      • Mohammad - Bhyve gfx passthrough
                                                                                                                                                                                                                                      • Jeremy - Shapshots and more Snapshots
                                                                                                                                                                                                                                      • Ron - Microphone
                                                                                                                                                                                                                                      • ***
                                                                                                                                                                                                                                        1 hr 22 min
                                                                                                                                                                                                                                      • 149: The bhyve has been disturbed, and a wild Dexter appears!

                                                                                                                                                                                                                                        Today on the show, we are going to be chatting with Michael Dexter about a variety of topics, but of course including bhyve! That plus

                                                                                                                                                                                                                                        This episode was brought to you by

                                                                                                                                                                                                                                        Headlines
                                                                                                                                                                                                                                        NetBSD Introduction
                                                                                                                                                                                                                                        • We start off today’s episode with a great new NetBSD article!
                                                                                                                                                                                                                                        • Siju Oommen George has written an article for BSDMag, which provides a great overview of NetBSD’s beginnings and what it is today.
                                                                                                                                                                                                                                        • Of course you can’t start an article about NetBSD without mentioning where the name came from:
                                                                                                                                                                                                                                        • “The four founders of the NetBSD project, Chris Demetriou, Theo de Raadt, Adam Glass, and Charles Hannum, felt that a more open development model would benefit the project: one centered on portable, clean and correct code. They aimed to produce a unified, multi-platform, production-quality, BSD-based operating system. The name “NetBSD” was suggested by de Raadt, based on the importance and growth of networks, such as the Internet at that time, the distributed and collaborative nature of its development.”

                                                                                                                                                                                                                                          • From there NetBSD has expanded, and keeping in line with its motto “Of course it runs NetBSD” it has grown to over 57 hardware platforms, including “IA-32, Alpha, PowerPC,SPARC, Raspberry pi 2, SPARC64 and Zaurus”
                                                                                                                                                                                                                                          • From there topics such as pkgsrc, SMP, embedded and of course virtualization are all covered, which gives the reader a good overview of what to expect in the modern NetBSD today.
                                                                                                                                                                                                                                          • Lastly, in addition to mentioning some of the vendors using NetBSD in a variety of ways, including Point-Of-Sale systems, routers and thin-clients, you may not have known about the research teams which deploy NetBSD:
                                                                                                                                                                                                                                          • NASA Lewis Research Center – Satellite Networks and Architectures Branch use NetBSD almost exclusively in their investigation of TCP for use in satellite networks.

                                                                                                                                                                                                                                            KAME project – A research group for implementing IPv6, IPsec and other recent TCP/IP related technologies into BSD UNIX kernels, under BSD license.
                                                                                                                                                                                                                                            NEC Europe Ltd. established the Network Laboratories in Heidelberg, Germany in 1997, as NEC’s third research facility in Europe. The Heidelberg labs focus on software-oriented research and development for the next generation Internet.
                                                                                                                                                                                                                                            SAMS-II Project – Space Acceleration Measurement System II. NASA will be measuring the microgravity environment on the International Space Station using a distributed system, consisting of NetBSD.“

                                                                                                                                                                                                                                            My condolences, you’re now the maintainer of a popular open source project
                                                                                                                                                                                                                                            • A presentation from a Wordpress conference, about what it is like to be the maintainer of a popular open source project
                                                                                                                                                                                                                                            • The presentation covers the basics:
                                                                                                                                                                                                                                            • Open Source is more than just the license, it is about community and involvement
                                                                                                                                                                                                                                            • The difference between Maintainers and Contributors
                                                                                                                                                                                                                                            • It covers some of the reasons people do not open up their code, and other common problems people run into:
                                                                                                                                                                                                                                              • “I'm embarrassed by my code” (Hint: so is everyone else, post it anyway, it is the best way to learn)
                                                                                                                                                                                                                                              • “I'm discouraged that I can't finish releases on time”
                                                                                                                                                                                                                                              • “I'm overwhelmed by the PR backlog”
                                                                                                                                                                                                                                              • “I'm frustrated when issues turn into flamewars”
                                                                                                                                                                                                                                              • “I'm overcommitted on my open source involvement”
                                                                                                                                                                                                                                              • “I feel all alone”
                                                                                                                                                                                                                                              • Each of those points is met with advice and possible solutions
                                                                                                                                                                                                                                              • So, there you have it. Open up your code, or join an existing project and help maintain it
                                                                                                                                                                                                                                              • ***
                                                                                                                                                                                                                                                FreeBSD Committer Allan Jude Discusses the Advantages of FreeBSD and His Role in Keeping Millions of Servers Running
                                                                                                                                                                                                                                                • An interesting twist on our normal news-stories today, we have an article featuring our very own Allan Jude, talking about why FreeBSD and the advantages of working on an open-source project.
                                                                                                                                                                                                                                                • “When Allan started his own company hosting websites for video streaming, FreeBSD was the only operating system he had previously used with other hosts. Based on his experience and comfort with it, he trusted the system with the future of his budding business.A decade later, the former-SysAdmin went to a conference focused on the open-source operating system, where he ran into some of the folks on its documentation team. “They inspired me,” he told our team in a recent chat. He began writing documentation but soon wanted to contribute improvements beyond the docs.Today, Allan sits as a FreeBSD Project Committer. It’s rare that you get to chat with someone involved with a massive-scale open-source project like this — rare and awesome.”

                                                                                                                                                                                                                                                  • From there Allan goes into some of the reasons “Why” FreeBSD, starting with Code Organization being well-maintained and documented:
                                                                                                                                                                                                                                                  • “The FreeBSD Project functions like an extremely well-organized world all its own. Allan explained the environment: “There’s a documentation page that explains how the file system’s laid out and everything has a place and it always goes in that place.””

                                                                                                                                                                                                                                                    • In addition, Allan gives us some insight into his work to bring Boot-Environments to the loader, and other reasons why FreeBSD “just makes sense”
                                                                                                                                                                                                                                                    • In summary Allan wraps it up quite nicely:
                                                                                                                                                                                                                                                    • “An important take-away is that you don’t have to be a major developer with tons of experience to make a difference in the project,” Allan said — and the difference that devs like Allan are making is incredible. If you too want to submit the commit that contributes to the project relied on by millions of web servers, there are plenty of ways to get involved!

                                                                                                                                                                                                                                                      We’re especially talking to SysAdmins here, as Allan noted that they are the main users of FreeBSD. “Having more SysAdmins involved in the actual build of the system means we can offer the tools they’re looking for — designed the way a SysAdmin would want them designed, not necessarily the way a developer would think makes the most sense”

                                                                                                                                                                                                                                                      A guide to saving electricity and time with poudriere and bhyve
                                                                                                                                                                                                                                                      • “This article goes over running poudriere to built packages for a Raspberry Pi with the interesting twist of running it both as a bhyve guest and then switching to running on bare metal via Fiber Channel via ctld by sharing the same ZFS volume.”
                                                                                                                                                                                                                                                      • “Firstly, poudriere can build packages for different architectures such as ARM. This can save hours of build time compared to building ports from said ARM device.”
                                                                                                                                                                                                                                                      • “Secondly, let’s say a person has an always-on device (NAS) running FreeBSD. To save power, this device has a CPU with a low clock-rate and low core count. This low clock-rate and core count is great for saving power but terrible for processor intensive application such as poudriere. Let’s say a person also has another physical server with fast processors and a high CPU count but draws nearly twice the power and a fan noise to match.”
                                                                                                                                                                                                                                                      • “To get the best of both worlds, the goal is to build the packages on the fast physical server, power it down, and then start the same ZFS volume in a bhyve environment to serve packages from the always-on device.”
                                                                                                                                                                                                                                                      • The tutorial walks through setting up ‘ahost’, the always on machine, ‘fhost’ the fast but noisy build machine, and a raspberry pi
                                                                                                                                                                                                                                                      • It also includes creating a zvol, configuring iSCSI over fibre channel and exporting the zvol, booting an iSCSI volume in bhyve, plus installing and setting up poudriere
                                                                                                                                                                                                                                                      • This it configures booting over fibre channel, and cross-building armv6 (raspberry pi) packages on the fast build machine
                                                                                                                                                                                                                                                      • Then the fast machine is shut down, and the zvol is booted in bhyve on the NAS
                                                                                                                                                                                                                                                      • Everything you need to know to make a hybrid physical/virtual machine
                                                                                                                                                                                                                                                      • The same setup could also work to run the same bhyve VM from either ahost or fhost
                                                                                                                                                                                                                                                      • bhyve does not yet support live migration, but when it does, having common network storage like the zvol will be an important part of that
                                                                                                                                                                                                                                                      • ***
                                                                                                                                                                                                                                                        Interview - Michael Dexter - [email protected] / @michaeldexter
                                                                                                                                                                                                                                                        • The RoloDexter
                                                                                                                                                                                                                                                        • ***
                                                                                                                                                                                                                                                          iXSystems
                                                                                                                                                                                                                                                          • Children's Minnesota Star Studio Chooses iXsystems' TrueNAS Storage
                                                                                                                                                                                                                                                          • ***
                                                                                                                                                                                                                                                            News Roundup
                                                                                                                                                                                                                                                            FreeBSD Foundation June 2016 Update
                                                                                                                                                                                                                                                            • The FreeBSD Foundation’s June newsletter is out
                                                                                                                                                                                                                                                            • Make sure you submit the FreeBSD Community Survey by July 7th:
                                                                                                                                                                                                                                                            • In addition to the opening message from the executive director of the foundation, the update includes details to sponsored work on the FreeBSD VM system, reports from a number of conferences the Foundation attended, including BSDCan
                                                                                                                                                                                                                                                            • The results of the foundation's yearly board meeting
                                                                                                                                                                                                                                                            • People the foundation recognized for their contributions to FreeBSD at BSDCan
                                                                                                                                                                                                                                                            • And an introduction to their new “Getting Started with FreeBSD” project
                                                                                                                                                                                                                                                            • ***
                                                                                                                                                                                                                                                              [How-To] Building the FreeBSD OS from scratch
                                                                                                                                                                                                                                                              • A tutorial over at the All-NetTools.com forums that walks through building FreeBSD from scratch
                                                                                                                                                                                                                                                              • I am not sure why anyone would want to build Xorg from source, but you can
                                                                                                                                                                                                                                                              • It covers everything in quite a bit of detail, from the installation process through adding Xorg and a window manager from source
                                                                                                                                                                                                                                                              • It also includes tweaking some device node permissions for easier operation as a non-root user, and configuring the firewall
                                                                                                                                                                                                                                                              • ***
                                                                                                                                                                                                                                                                Window Systems Should Be Transparent + Rob Pike of AT&T Labs writes about why Window Systems should be transparent
                                                                                                                                                                                                                                                                • This is an old paper (undated, but I think from the late 80s), but may contain some timeless insights
                                                                                                                                                                                                                                                                • “UNIX window systems are unsatisfactory. Because they are cumbersome and complicated, they are unsuitable companions for an operating system that is appreciated for its technical elegance”
                                                                                                                                                                                                                                                                • “A good interface should clarify the view, not obscure it”
                                                                                                                                                                                                                                                                • “Mux is one window system that is popular and therefore worth studying as an example of good design. (It is not commercially important because it runs only on obsolete hardware.) This paper uses mux as a case study to illustrate some principles that can help keep a user interface simple, comfortable, and unobtrusive. When designing their products, the purveyors of commercial window systems should keep these principles in mind.”
                                                                                                                                                                                                                                                                • There are not many commercial window systems anymore, but “open source” was not really a big thing when this paper was written
                                                                                                                                                                                                                                                                • ***
                                                                                                                                                                                                                                                                  Roger Faulkner, of Solaris fame passed away
                                                                                                                                                                                                                                                                  • “RIP Roger Faulkner: creator of the One and True /proc, slayer of the M-to-N threading model -- and the godfather of post-AT&T Unix”
                                                                                                                                                                                                                                                                  • @bcantrill: Another great Roger Faulkner story
                                                                                                                                                                                                                                                                  • The story of how pgrep -w saved a monitor -- if not a life
                                                                                                                                                                                                                                                                  • @bcantrill: With Roger Faulkner, Tim led an engineering coup inside Sun that saved Solaris circa 2.5
                                                                                                                                                                                                                                                                  • ***
                                                                                                                                                                                                                                                                    Beastie Bits:
                                                                                                                                                                                                                                                                    • Developer Ed Maste is requesting information from those who are users of libvgl.

                                                                                                                                                                                                                                                                    • HEADS UP: DragonFly 4.5 world reneeds rebuilding

                                                                                                                                                                                                                                                                    • Chris Buechler is leaving the pfSense project, the entire community thanks you for your many years of service

                                                                                                                                                                                                                                                                    • GhostBSD 10.3-BETA1 now available

                                                                                                                                                                                                                                                                    • DragonFlyBSD adds nvmectl

                                                                                                                                                                                                                                                                    • OPNsense 16.1.18 released

                                                                                                                                                                                                                                                                    • bhyve_graphics hit CURRENT

                                                                                                                                                                                                                                                                    • BUG Update
                                                                                                                                                                                                                                                                      • FreeBSD Central Twitter account looking for a new owner

                                                                                                                                                                                                                                                                      • NYCBUG meeting : Meet the Smallest BSDs: RetroBSD and LiteBSD, Brian Callahan

                                                                                                                                                                                                                                                                      • NYCBUG install fest @ HOPE

                                                                                                                                                                                                                                                                      • SemiBUG is looking for presentations for September and beyond

                                                                                                                                                                                                                                                                      • Caleb Cooper is giving a talk on Crytpo at KnoxBUG on July 26th

                                                                                                                                                                                                                                                                      • Feedback/Questions
                                                                                                                                                                                                                                                                        • Leif - ZFS xfer
                                                                                                                                                                                                                                                                        • Zach - Python3
                                                                                                                                                                                                                                                                        • Dave - Versioning
                                                                                                                                                                                                                                                                        • David - Encrypted Disk Images
                                                                                                                                                                                                                                                                        • Eli - TLF in all the wrong places
                                                                                                                                                                                                                                                                        • ***
                                                                                                                                                                                                                                                                          2 hr 21 min
                                                                                                                                                                                                                                                                        • The place to B... A Robot! | BSD Now 148
                                                                                                                                                                                                                                                                          This week on the show, Allan & I are going to be showing you a very interesting interview we did talking about using FreeBSD to drive a Robot! You won’t want to miss this one. That plus all the latest news, heading your way right now!
                                                                                                                                                                                                                                                                          1 hr 45 min

                                                                                                                                                                                                                                                                        About BSD Now

                                                                                                                                                                                                                                                                        From the publisher's feed

                                                                                                                                                                                                                                                                        Created by three guys who love BSD, we cover the latest news and have an extensive series of tutorials, as well as interviews with various people from all areas of the BSD community. It also serves as…

                                                                                                                                                                                                                                                                        More shows like BSD Now

                                                                                                                                                                                                                                                                        The Changelog: Software Development, Open Source by Changelog Media

                                                                                                                                                                                                                                                                        The Changelog: Software Development, Open Source

                                                                                                                                                                                                                                                                        286 Listeners

                                                                                                                                                                                                                                                                        Security Now (Audio) by TWiT

                                                                                                                                                                                                                                                                        Security Now (Audio)

                                                                                                                                                                                                                                                                        2,011 Listeners

                                                                                                                                                                                                                                                                        MacBreak Weekly (Audio) by TWiT

                                                                                                                                                                                                                                                                        MacBreak Weekly (Audio)

                                                                                                                                                                                                                                                                        2,018 Listeners

                                                                                                                                                                                                                                                                        Accidental Tech Podcast by Marco Arment, Casey Liss, John Siracusa

                                                                                                                                                                                                                                                                        Accidental Tech Podcast

                                                                                                                                                                                                                                                                        2,144 Listeners

                                                                                                                                                                                                                                                                        LINUX Unplugged by Jupiter Broadcasting

                                                                                                                                                                                                                                                                        LINUX Unplugged

                                                                                                                                                                                                                                                                        272 Listeners

                                                                                                                                                                                                                                                                        Risky Business by Risky Business Media

                                                                                                                                                                                                                                                                        Risky Business

                                                                                                                                                                                                                                                                        374 Listeners

                                                                                                                                                                                                                                                                        Late Night Linux by The Late Night Linux Family

                                                                                                                                                                                                                                                                        Late Night Linux

                                                                                                                                                                                                                                                                        169 Listeners

                                                                                                                                                                                                                                                                        Darknet Diaries by Jack Rhysider

                                                                                                                                                                                                                                                                        Darknet Diaries

                                                                                                                                                                                                                                                                        8,063 Listeners

                                                                                                                                                                                                                                                                        Behind the Bastards by Cool Zone Media and iHeartPodcasts

                                                                                                                                                                                                                                                                        Behind the Bastards

                                                                                                                                                                                                                                                                        15,564 Listeners

                                                                                                                                                                                                                                                                        Linux Dev Time by The Late Night Linux Family

                                                                                                                                                                                                                                                                        Linux Dev Time

                                                                                                                                                                                                                                                                        22 Listeners

                                                                                                                                                                                                                                                                        2.5 Admins by The Late Night Linux Family

                                                                                                                                                                                                                                                                        2.5 Admins

                                                                                                                                                                                                                                                                        98 Listeners

                                                                                                                                                                                                                                                                        Linux After Dark by The Late Night Linux Family

                                                                                                                                                                                                                                                                        Linux After Dark

                                                                                                                                                                                                                                                                        29 Listeners

                                                                                                                                                                                                                                                                        This Day in AI Podcast by Michael Sharkey, Chris Sharkey

                                                                                                                                                                                                                                                                        This Day in AI Podcast

                                                                                                                                                                                                                                                                        221 Listeners

                                                                                                                                                                                                                                                                        Linux Matters by Linux Matters

                                                                                                                                                                                                                                                                        Linux Matters

                                                                                                                                                                                                                                                                        22 Listeners

                                                                                                                                                                                                                                                                        Better Offline by Cool Zone Media and iHeartPodcasts

                                                                                                                                                                                                                                                                        Better Offline

                                                                                                                                                                                                                                                                        608 Listeners