I'm sorry, but 99% of the time, it doesn't work to depend on your brother-in-law to come in on weekends to do all of your tech support.
I don't care how nice he is, or how good he is at it. People with really good tech skills and responsible jobs usually have a lot of demands on their time. Waiting until your volunteer has a free moment is no way to run mission-critical systems.
And it's hard to hold someone's feet to the fire, when your only claim on him is that he's a nice guy who cares about your mission. Most of the time, you can't demand that a volunteer re-arrange his schedule around your emergency, and it's hard to tell a volunteer that he did a lousy job and has to re-do it immediately. (It's even harder if your volunteer also happens to be a member of your board, because he is in fact your boss.)
There's nothing wrong with including volunteer help in your overall tech support plan, but if you can't hold your volunteers to professional standards, then you're undercutting your agency's effectiveness and reputation.
Think about it. Let's say that you go to a big university-affiliated hospital for a surgical procedure. They can't find your medical records because there's something wrong with the database, and the department's office manager tells you that his brother-in-law will be in on Saturday to fix it, if it isn't his turn to drive the kids to soccer practice. He'll definitely fix it, maybe this weekend, or maybe next weekend. But you'll have to wait until he has a free moment to debug the database, and then they'll be happy to retrieve your medical records and reschedule the surgery.
No. That's unacceptable.
And yet that hospital is just a big nonprofit organization. Can't you cut them a little slack?
No. It's unprofessional.
Maybe your nonprofit agency is small, and maybe it's low on cash, but you still have an obligation to meet professional standards.