Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 28 Aug 2020 22:19:52 -0700
From:      Doug Hardie <bc979@lafn.org>
To:        Aryeh Friedman <aryeh.friedman@gmail.com>
Cc:        FreeBSD Mailing List <freebsd-questions@freebsd.org>
Subject:   Re: (very OT) Ideal partition schemes (history of partitioning)
Message-ID:  <AD3B3E73-73AA-4C4E-AD9A-B22EEB47FFD5@mail.sermon-archive.info>
In-Reply-To: <CAGBxaXkf53K4EHtq9cDaRm3MOZZixyBq-aQfZ7upHo-wUwrmCg@mail.gmail.com>
References:  <CAGBxaXkf53K4EHtq9cDaRm3MOZZixyBq-aQfZ7upHo-wUwrmCg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> On 28 August 2020, at 20:08, Aryeh Friedman <aryeh.friedman@gmail.com> =
wrote:
>=20
> When installing another OS then FreeBSD (won't state which one to =
avoid
> flame wars) I noticed it's default partitioning scheme breaks the main =
(and
> only) drive on the system down into 50 GB chunks (in my case / and =
/home)
> by default (I over road to FreeBSD's default of one big partition for =
the
> whole drive [minus swap]).
>=20
> I was wondering what people think of different generalized =
partitioning
> schemes? (there is no right answer here but I might question your =
comments)
>=20
> Also why are partitioned need at all? (both currently and =
historically)

I may not be the best to address this, but I have been running systems =
since the late 60's.  In the (not so good old days) the disk drives were =
unreliable, the drivers were unreliable, and software was unreliable.  =
Disks had no partitions.  So if any of the disk control tables got =
corrupted, generally you had a worthless drive.  It had to be completely =
restored.  I went so far as to dump a good disk setup to punched cards =
(lots of them) so that when corruption occurred, I could easily, but not =
quickly, restore the disk to a working state.

As disks got bigger, someone came up with the partition concept.  You =
would put the stuff that the system needs to run in one "read only" =
partition.  In theory, it would not get corrupted by problems with other =
partitions.  Unix used the / partition to hold most of that.  /var was =
generally a separate partition because its contents were always =
changing.  Likewise with /tmp.  User partitions were often setup so that =
a rogue user would not corrupt other users.  Often, if you had the =
money, some of those partitions would be put on different drives.

The problem with this approach showed up as system software increased in =
size.  For example, the first FBSD systems I use were setup for 3.5 and =
3.7.  The / partition was doubled what the best practice said was =
needed.  Var and tmp were in separate partitions as was user data.  =
Somewhere around FBSD 5 or 6, I was no longer able to upgrade the =
kernel.  The kernel was larger than the / partition.  These were =
production system with no acceptable down time.  I had to purchase four =
new systems and repartition the drives with much larger partitions for =
/, var, and tmp.  Then everything had to be rebuilt, and the systems =
swapped.  There was still a lot of down time.

Then OSX arrived and it used only one partition for everything.  At =
first I thought that was going to be a disaster, but it was not.  UFS =
was by that time quite stable.  I have never encountered an issue with =
it, although others have.  Not long after that, I encountered the same =
issue with FBSD.  The / partition was now smaller than the most recent =
kernel.  I had to delete all the symbol files from the kernel to be able =
to update a system.  As a result, I bought more drives, and partitioned =
them as a single partition which is now what I run on all my systems.  =
Often I will put archival information on a second drive, or a second =
system.  Interestingly enough, OSX has recently gone to multiple =
partitions.  In this situation Apple is trying to prevent anyone from =
modifying their code.

I do recall one situation, probably in the FBSD 4 era where syslog went =
berserk and completely wrote over the entire var partition.

As a side note, a friend of mine in college worked at IBM in San Jose on =
OS360.  His job was to take all of the example code in the assembler =
reference manual, punch them up and run them to ensure that they =
actually worked.  There was only one 360 working so everything ran on =
it.  His jobs were the lowest priority, so he had to wait days sometimes =
to get them run.  Once, he was in the computer room watching them run =
and every disk was actively writing at max speed.  Since none of code =
wrote anything anywhere, he was a bit concerned.  So was the operator =
and he quickly terminated the jobs.  But the damage was done.  All of =
the single copy of the OS 360 source had been overwritten.  As I recall, =
both he and the rest of the OS team were terminated.  OS 360 was already =
years late at that point.  I don't recall OS 360 supporting disk =
partitioning.

-- Doug




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AD3B3E73-73AA-4C4E-AD9A-B22EEB47FFD5>