Douglas Winslow's internet home page updates | tech | games | art | community | parodies | e-mail | index

World's second-fastest and therefore not slowest workaround to needing the FreeBSD installer

November 16, 2023 at 12:00 P.M. Eastern Time

Berkeley System Design. Let's get one thing straight, first of all.

from the /department of
douglas winslow's
"not betting on baseball and winning"
the book that makes world

release date estimate: 2024 or later

FreeBSD is a really well-designed operating system hidden behind a historically silly-looking logo. Starting in 1993, FreeBSD represented the new and newer generations of legacy BSD Unix design patterns and philosophies reaching back to early 1978. In this long-lasting example, (at least in theory) we'll keep things in check by bringing up a minimal FreeBSD installation on a Linux-originated EXT file system, so you can maintain your FreeBSD disk from inside your Linux installation. You can think of this as a guided tour preparation for a full-experience installation of the system. Sure, EXT-fs isn't UFS, but I hope to eventually get you past the stage of disinterest in file systems by showing how interoperability helps and diversity counts when managing a Unix-based workload. Yes: both of these file system choices are valid, usable, and well-respected.

Developer note: While FreeBSD installer doesn't support installing onto EXT, this is an example that shows how to install FreeBSD onto an EXT file system, specifically EXT2, most commonly found earliest in Linux at Torvalds. I have tested this with EXT2, EXT3, and EXT4 via the ext2fs file system driver in FreeBSD. There is a software bug in FreeBSD where the kernel unmounting a root-device-mounted EXT file system at shutdown does not give an error-free completion, so I've added some lines to this example to show how to sync to disk, halt, and then, external to QEMU, do a file system check of the off-line disk using e2fsck in Linux. FreeBSD will start single-user and refuse to mount root with write access if the file system is starting unchecked, which is why this is an unexpected interoperability challenge that exists for you. Linux has the file system check tool that FreeBSD lacks by default, FreeBSD has the UFS mkfs tool that Linux lacks by default, and I now have an EXT-fs superblock reader I wrote in PHP. I'll update this article with new information as necessary. Note, please, also that my example here bypasses the default installer of FreeBSD because of wider system design concerns in interop, as well as disability stimulus concerns as I previously demonstrated in another article using User-Mode Linux. I also consider avoiding the installer to be more honest as to how Unix came packaged for earlier computers.

Unlike Linux's preoccupied penguin mascot, the point of FreeBSD's fire-and-brimstone or poke-and-peek 'daemon' brand is to signal to users, outsiders, and marketers to just let the computer professionals on the administrator team handle things. Whatever is in that computer, the BSD administrator usually has a standard tool to handle it, unlike the varied 'maybe-in-Linux' method of succeeding. Shouldn't that make you curious, then, as to what BSD people have been up to with all that college funding since that very well-respected initial effort at the University of California Berkeley? With such a track record of success past the logo set-up, would any politician be seen supporting BSD? (At Apple Computers, FreeBSD drives parts of Mac OS X and the iPhone; your politican was Mr. Steven Paul Jobs: someone who was a learned Unix administrator.) FreeBSD is a 'Unix-alike' with way too much evolution past BSD, yet way too honest standards-adherence to ignore. In competition with the funny drawing of a gnu from Dr. Richard Stallman's GNU free software firm, a cartoon apple from Apple Inc., and a hidden granularity challenge from Microsoft, and everything else that made it onto the internet, the BSD mascot is a concerning signal that the artists and funnymen that raised themselves during the most well-regarded years of MAD Magazine somehow tagged the front of this college-boy software effort to make sure it stayed outside the AT&T telephone company problem-and-solution factory from where the Unix operating system once arrived.

With college as a success-based debt holder itself (much like most things in computing) some might say the implication that you need an operating system to complement real life is rather oppressive. Understand that these systems exist as heavy-stack typist-productive solutions. They intend to teach you how to be productive in-place using the Latin alphabet — a standard, in QWERTY, is how this was usually taught, as the electronic keyboard was taking shape and standardizing off of the previous typewriter and teleprinter — all so you could have greater successes outside whatever hardware the phone industry accidently sold you this time. That said, a famous photograph Linus Torvalds provided of himself drinking beer in college simply told me what to avoid and manage around if I was going to take up using a Unix-alike operating system at home, at a time when Microsoft was tossing DOS users into a somehow complicated and uncertain graphical Windows future.

Many say you're more likely to find FreeBSD in usage within a datacenter than anywhere else, and that observation is a really good set-up for an understanding of where virtualization is taking computing outside of the electronics economy. The everyday telephone user of today is more likely to be datacenter-productive from day one. Why? Computer science succeeded in breaking the nerds out of the datacenter in college so they could have more options, and nerds have mingled. It's brought nerd down a bit, but it's definitely made the computer a necessity to save industries' money, and thus via the evolving telephone terminal's challenges, almost everyone became a pre-nerd in training. Uh oh. This is not easy to note: the telephone company set you up with a lot of really good management tools off-line of their systems so you can fit in with all the interop-based professionalism economies that usually outrank product and science in any line. It may not be welcome to understand you're somehow running their operating system concept inside-out in a virtual container externalised as yourself in a virtual (digital) society, perhaps, because you've been letting it show you graphics instead of what I'd surprisingly call 'business'. Simply, most operating systems are still, today, fashioned to be familiar to other real-life systems. But only if you fit in..

As I'm busy with some interviews for my employment this month, to hopefully get the United States government benefits system less representative of my total earnings — still maintaining my goals of progressing into education and affordable housing — I hope you can understand my long-time interest in demystifying some of the great computer mysteries that are usually based around naming and brand theory that do feed back into many data processing systems that support productivity.

There needs to be a second source of funding and work ethic in my life other than Social Security and Maryland's EBT food stamp program. On October 14th, the Housing Authority of Baltimore City notified almost 30,000 family representatives, myself included, that they are accepting our applications to public housing in what they describe to be a random queue, so if I encounter another eviction crisis I think I'm guaranteed to have preference to skip the line and be housed at one-third of what I'm paying today as any family vulnerable to homelessness should be able to do immediately — no further shelter stay necessary. This would allow me to educate my way into my career instead of underpaying my current $640 per month rent into a transportation-necessary $100 contingency spending buffer every month as I've been doing since July 4, 2023. As I noted, however, I'd be happy to work my way back into building savings to pay the landlord here instead of sitting around undertasked all day waiting for business to drop the ball. I've never had any problems at working and succeeding in doing so. But games in politics such as the random selection lottery described above are not welcome. It's actively shunting me back into logging more time in Linux instead of having fun and being happier in my own way. I'm 45 years old as of this past weekend, just to let you know. This is how support of people who have autism is happening in 2023. I would have failed key social goals in autism if Unix literacy was not an investment that I made in the era of Microsoft Windows 95, a predecessor system to what's still running in the Baltimore City government. I still have one paid "Intro to College" credit earned from the Community College of Baltimore County, so I wanted to give you a localized look at how freely-available systems for information management are affecting what's inflicted on us, while the people in government responsible for those systems stay mostly silent and preoccupied with failing by educating a dwindling population via difficult news media.

Keep in mind the complication challenge of products versus people, and how we are expected to use and respect products, and how we are expected to respect and enjoy interacting with people. I'm not a product and neither are you. That's important. Linux and BSD in source code and in product are labors of love from people who are expressing their vision of the present by conforming within the constraints of hardware frameworks from the well-overfunded computer arts industry. They are using the computer as a canvas. The lessons of Linux and its interoperability are proper and still modern to understand in the 21st century. (I'd like to formally write or speak on this topic at some point.)

From when I purchased Red Hat Linux and FreeBSD discs from Cheapbytes, and then Red Hat Linux in product from Red Hat Software and FreeBSD 2.2.8 in product from Walnut Creek CD-ROM, a quarter of a century of evolution has brought me back to enjoy dealing with the problems and solutions of FreeBSD 13.2: after lots of years of downtime and replacement of their management toolset, it's still a system of well-earned reputation. As I'm a critic of word systems being thrown around in design, and disposable iconography driving the top line in interop, as well as whatever's running Apple back upwards into the ground the stupid way, I'm holding the line on 'old-school versus to-be-determined' in this demonstration. Intel i386 still works as well for me as it did when I brought one in as a 25 MHz 80386 with too few megabytes of memory to start Linux. In that same lineage, Celeron is still a good investment in processing in 2023 for a good reason: complexity and vanity will never ever again beat up the software user without that problem being on record at the politician.

As for the ever-present trick of hardware being a necessity in the computer field, as inexplicable as the new product designs are in the computer industry, please understand why people ultimately go through these things.

 $ dd if=/dev/zero of=freebsd.fs bs=1 count=0 seek=4G
 $ mke2fs freebsd.fs
 $ tune2fs freebsd.fs -r 0

 $ su root
 # mkdir cdrom
 # mount -o ro FreeBSD-13.2-RELEASE-i386-disc1.iso cdrom
 # mkdir mnt
 # mount freebsd.fs mnt
 # cd mnt
 # tar -xf ../cdrom/usr/freebsd-dist/base.txz
 # tar -xf ../cdrom/usr/freebsd-dist/kernel.txz  (optional)
 # echo "/dev/ada0 / ext2fs rw 0 0" >> ././etc/fstab
 # echo "devmatch_enable=no" >> ././etc/rc.conf
 # echo "hostname=freebsd" >> ././etc/rc.conf
 # cat usr/share/zoneinfo/`date +%Z` > ././etc/localtime
 # cd ..
 # umount mnt
 # umount cdrom
 # exit

 $ e2fsck freebsd.fs

 $ qemu-system-i386 \
        -drive "file=freebsd.fs,format=raw,media=disk" \
        -drive "file=FreeBSD-13.2-RELEASE-i386-disc1.iso,media=cdrom" \
        -boot d
(3)
OK load boot/kernel/kernel
OK load boot/kernel/ext2fs.ko
OK boot -a
mountroot> ext2fs:/dev/ada0

login: root
# bsdconfig
# clear
# cd /
# ls

# df -h
# dmesg | grep memory

# sync
# init 1  (if kernel installed to disk)
# sync
# halt -p
 $ e2fsck freebsd.fs
 $ sync

Note: The seek= option given to dd allows your Linux workstation to defer on allocation of a large file. If you're wondering why you aren't seeing disk space depletion in df, the file will deplete disk space downwards as you use, in this case, the contained file system. If you unlink or delete any file that's mounted on a loop device (CONFIG_BLK_DEV_LOOP) in Linux while it's still represented in losetup, then it will deallocate from your disk when the system unattaches the loop device, as I recommended to do in the above example before starting the virtual machine. I have a shell script I wrote to calculate fdisk offset boundaries for losetup to take in as MBR partitions along with /dev/loopXpX symlinks (not BSD labels), but I removed it from this example while I test some edge cases on boundaries, including simplicity and relatability of this presentation – so maybe look for that update to this example later. Thank you for reading.

  • Update (11/19/2023): FreeBSD bug #275147 - ext2fs mounted at the root of the system does not unmount
  • Update (11/20/2023): NetBSD shows that it has a fsck tool available. This should allow you to understand binary and source code interoperability between BSD releases and compatibility with GNU/Linux.


  • Copyright © 1996-2024 Douglas Rice Winslow III. All Rights Reserved. E-mail Address: <winslowdoug@gmail.com>