Tips for being a good BSD system administrator

The biggest thing is having some sort of centralized place to store documentation about what you're doing and how you're doing it. I personally, am using Obsidian for it, but there are a bunch of other tools.

I'd also strongly recommend learning a bit about grep, sed, awk, xargs and a some basic shell scripting. Even without spending large amounts of time on it, just learning the bits that relate to what you're doing is a significant help in terms of efficiently managing the system.

I also think that it's worth setting up a virtualized system where you can easily back out screw ups you make and don't have to worry about messing things up.

And lastly, it's worth spending some time learning a revision control system so that you can back out any mistakes you make with configuration files as you go.
 
Make written plans for your changes, and, where possible submit them for peer review.

For something complex, I would suggest ordering the steps, documenting the logic behind each step, and writing down the exact set of commands required to complete each step.

Document the steps or tests and approvals required to assert success.

Your plan should always include the steps required for reversion.

Where the changes present significant risk, test your plans before executing them on production systems.

Review your plans after the action has been completed, and store the (amended) plan for future use, making it available to those who may follow (which includes yourself).
 
no matter which way you do it, try to document everything (every install, every change to a system, every failed experiment). And make sure these notes are available to you.

I keep mine in a static blog (they are just notes, there are no secrets in there, so I don't mind if other people look at them), but other ways have already been suggested in this thread.
 
There are whole books written about this. There are no few "tips"
There are, but I personally find in practice having a more organized approach to what you're taking on makes a huge difference. Most of that comes from all the things that you can do, but don't necessarily need to do. I just found out that you can put bhyve in a jail. I hadn't even considered doing that.
 
what are your tips for becoming a better BSD system administrator?
justdoit.jpg


All jokes aside though, the only way to get experience (and therefor get better at it) it by actually doing it.
 
Learn to make backups, backups, and—once more—backups! And then do whatever you want!
Tip from the trenches, also test your restore procedures from time to time. You won't be the first that's been diligently backing everything up only to find out, at the worst possible moment, you've been basically backing up to /dev/null.
 
If you maintain production systems, ensure that you have a staging / development / personal system(s) where you test the features that you depend on in the production environment. Yesterday I discovered a regression bug in FreeBSD 15 and PF where the first matching nat rule doesn't fire. The alternate environments provide one with a quick place to test such findings.
 
If you maintain production systems, ensure that you have a staging / development / personal system(s) where you test the features that you depend on in the production environment. Yesterday I discovered a regression bug in FreeBSD 15 and PF where the first matching nat rule doesn't fire. The alternate environments provide one with a quick place to test such findings.
I have a production server in my work and a personal server in my home, but I also detected some regressions on PF, the one related to securelevel, it was fixed on stable/15 but it hasn't been applied to release/15.1, so I'm waiting for 15.2-RELEASE with that fix, but I don't know about that issue related to NAT rules. Have you reported it to Bugzilla already?
 
Back
Top