Your thoughts on monolithic filesystems

Associate
Joined
18 Oct 2002
Posts
2,325
Location
#!/usr/bin/perl
And for those who dont know what I mean, using a monolithic filesystem means you have everything on a single file systems rather than broken up into / /var and so on.

Anyway, it occurs to me that in a lot of ways the idea of using seperate filesystems for things is in a lot of cases obsolete, a lot of the reasons for doing it where down to olde disk technologies and as such arent such an issue, most disks now are most than large enough and fast enough to use a monolithic layout and i tend to deply most of our webservers this way, certainly there are still good reasons to use this division (databases and the likes for performance).

So... thoughts on this :)
 
I have my filing system split into 4 partitions (5 including swap) over 2 hard-drives.

I conscientiously decided to give /home and /opt thier own partitions:

/home is on it's own hard-drive which is very useful as I can use this partition in multiple installs (or re-installs) of Linux with less worry about accidently erasing data during re-formats.

/opt gets its own partition because I prefer to use ext3 instead of reiserfs here - this is where my games tend to reside, and after an issue with NWN running extremely slowly on reiserfs a few months ago (maybe fixed now?) I decided for this format and haven't noticed any speed increase or decrease with my other games.

I also have /boot on it's own partition (ext2 formatted) and this is not mounted after boot up time, a bit more secure too I guess :)

But generally, for my uses, having too many different partitions makes me feel sorta like I might lose control (strange, eh?), like once I gave /var/www it's own partition cos it contains a load of web stuff that I didn't want to accidentally erase during a reinstall or whatever but I ended up allocating 1GB of space when I needed much less - plus, if it became full, I would have to consider resizing the partition or linking to another partition - a bit messy for me. So I guess having an emphasis towards a more monolithic filesystem does allow for more flexibility when it comes to different areas getting full at different rates.
 
Last edited:
whitecrook said:
use lvm2 then you can adjust add delete your disks with ease.

This is what I do and still have seperate filesystems.

I only use Linux for servers really and having seperate partitions is a must most of the time. It helps stop a run-away log file/mail spools/various caches taking down the servers.

Then there's the flexability of being able to mount filesystems in different ways (noexec on /tmp for instance) and how much easier life is when you need to re-install.

I also keep a permanent "/snapshot" that stays umounted most of the time unless backups are running.

All in all, no, I don't think monolothic filesystems are any good for servers.

Having said that, when I do desktop installs, I usually just dump everything in / as I don't care so much. If I need to change something later then I can as I always use LVM
 
R4z0r said:
This is what I do and still have seperate filesystems.

I only use Linux for servers really and having seperate partitions is a must most of the time. It helps stop a run-away log file/mail spools/various caches taking down the servers.

I long ago re-did the logging on most of our mail/generic servers, the default logging config for most *nix systems is ancient and terribly inefficient, these days I use syslog ng religiously, it lets me configure daily rotation and I've written a perl script that goes through every day and bzip2's the heck out of any log over a day old so my logging footprint is actualy rather small, although I still tend to move logs off of /var, even if the box in question is using a monolthic filesystem (I prefer them elsewhere :))

Our webservers however have all their logs stored on an nfs server with the website data itself, so there's very little in the way of logging actualy going onto the box itself.

Spool files are a pain however, but on most of the mail systems I build these day's they're only used during mail processing, since we've moved to imap based systems storing mail in /var simply isnt practical so mail effectivley only sits in var while it's being processed before being moved to long term storage.

The big problem I find with /var and /tmp is down to things not cleanng up after themselves, this has in the past resulted in them filling up and a whole bunch of things stopping working (this being on our webservers), so all of our new build webservers have monolithic filesystems (and the disk usage is monitored via nagios, just in case).

Then there's the flexability of being able to mount filesystems in different ways (noexec on /tmp for instance) and how much easier life is when you need to re-install.

This is a valid point, although since we use centralised storage we don't have any problems with ireplacable data on server x since the servers hold little more than the software needed to do the job as a result re-installs are normaly done from the ground up (one day I *will* find time to develop an imaging stratedgy)

I also keep a permanent "/snapshot" that stays umounted most of the time unless backups are running.

Since most of our data lives on a nice big nfs server with a dedicated raid array individual boxes are "nukeable" (we can tolerate the time to rebuild a box) so we can happily forego backups on our webservers and sites can be moved from server to server in the event of a failure so funcationality like that is less of a concern for us overall (good idea mind you).

Mind you, I do want to build an imaging stratedgy one day, to make this all easier, but that needs time, something I have precious little of these days :)

All in all, no, I don't think monolothic filesystems are any good for servers.

Id say it's more a task specific thing, for certian types of server id use monolithic filesystems, others I wouldnt, I think it does overall depend on the potential problems you may or may not have with certian types of server and setups.
 
cb_linus said:
I have my filing system split into 4 partitions (5 including swap) over 2 hard-drives.

I conscientiously decided to give /home and /opt thier own partitions:

/home is on it's own hard-drive which is very useful as I can use this partition in multiple installs (or re-installs) of Linux with less worry about accidently erasing data during re-formats.

Which is a perfectly good reason if you lack centralised storage.

/opt gets its own partition because I prefer to use ext3 instead of reiserfs here - this is where my games tend to reside, and after an issue with NWN running extremely slowly on reiserfs a few months ago (maybe fixed now?) I decided for this format and haven't noticed any speed increase or decrease with my other games.

I remember hearing about that, iirc it was something to do with a change in the i/o code that effected a few things that way.

I also have /boot on it's own partition (ext2 formatted) and this is not mounted after boot up time, a bit more secure too I guess :)

That's one place where I still always use a seperate partiton, accidents do happen and id rather not have them happen there :D

But generally, for my uses, having too many different partitions makes me feel sorta like I might lose control (strange, eh?), like once I gave /var/www it's own partition cos it contains a load of web stuff that I didn't want to accidentally erase during a reinstall or whatever but I ended up allocating 1GB of space when I needed much less - plus, if it became full, I would have to consider resizing the partition or linking to another partition - a bit messy for me. So I guess having an emphasis towards a more monolithic filesystem does allow for more flexibility when it comes to different areas getting full at different rates.
[/QUOTE]

This is the main reason I use monolithic filesyetsm when I do, for a lot of things it just isnt nesecary to have that many divisions these days (and for some it is :p).
 
Back
Top Bottom