# runit - a UNIX init scheme with service supervision



## nickednamed (Sep 17, 2012)

Just wondering if anyone has given it a try?

I don't know much about these things, but thought it would be interesting to get some more expert thoughts on it.

http://smarden.org/runit/


----------



## UNIXgod (Sep 18, 2012)

I've used djb daemontools: http://cr.yp.to/daemontools.html

That may be what you want. It's also been around forever. Secure and proven. Also djb qmail and tinydns are also pretty well tried and true services. 

http://cr.yp.to/djbdns.html
http://cr.yp.to/qmail.html


----------



## nickednamed (Sep 18, 2012)

I'll be honest with you UNIXgod, that is all a bit over my head right now. But it is an interesting read and hopefully I'll learn something from it.

As I'm running FreeBSD as a desktop [at the moment, at least] I would be more interested in things such as boot time, and ease of configuration, plus idiot-proof design


----------



## ManaHime (Sep 18, 2012)

nickednamed said:
			
		

> [...]plus idiot-proof design



Does that even exist?


----------



## nickednamed (Sep 18, 2012)

D4rkSilver said:
			
		

> Does that even exist?



I'm not sure, but that won't stop me looking [being an idiot and all]! 

Actually my main reason for looking at things like these, and using FreeBSD in general, is to learn something. I may try this out in a VM and see how it goes.


----------



## UNIXgod (Sep 18, 2012)

nickednamed said:
			
		

> I'll be honest with you UNIXgod, that is all a bit over my head right now. But it is an interesting read and hopefully I'll learn something from it.
> 
> As I'm running FreeBSD as a desktop [at the moment, at least] I would be more interested in things such as boot time, and ease of configuration, plus idiot-proof design



It's good to know about Dan Bernstein: https://en.wikipedia.org/wiki/Daniel_J._Bernstein

Many people used qmail years ago: http://www.lifewithqmail.org/lwq.html

Including google, hotmail and yahoo. Many use postfix (including the FreeBSD site your on now). Both sendmail and bind are the defaults for the OS but considered "long in the tooth" security wise.

Many of the so called "pragmatic" users just pipe into gmails API. which is always an option if you get sick of the configuration of setting up email services as the stack is very large.



			
				nickednamed said:
			
		

> I'm not sure, but that won't stop me looking [being an idiot and all]!
> 
> Actually my main reason for looking at things like these, and using FreeBSD in general, is to learn something. I may try this out in a VM and see how it goes.



Your not an idiot. We all start somewhere. There are many xenophobic and biased users online which get off on trolling what they don't know and worse attacking the new users. This isn't good for anyone.

Many, if not all, *BSD community participants are extremely altruistic in nature. If we've been there we want to share our experiences. Though many will give you specific areas to look into (i.e. man pages and handbook entries) vs just dumping code recipes. Look at the posts and quality of information passed from both wblock and SirDice. These members help users from their free time because they enjoy teaching and helping new users get up to speed with the OS, as well as to point out to old users like myself the simplicity of the OS which I sometimes forget. They are the gold standard we should all live up to in a community. wblock has some of the best off site info I've seen in years: http://www.wonkity.com/~wblock/docs/

My best advice I can give you as you start to work through each piece of tech in the OS and once you get something to work and understand the "hows" and "whys" is to AUTOMATE EVERYTHING as well as understand the concept of BUILD IN ONE STEP.

To do this you will need to learn a bit about shell scripting. Some people enjoy reading Raymond's stuff when they are just starting: http://www.catb.org/esr/

I like what Paul Graham has to say as well: http://paulgraham.com/articles.html

Here is a classic from "Hackers and Painters": http://paulgraham.com/avg.html

Stallman on LISP: https://www.gnu.org/gnu/rms-lisp.html

Of course reading pretty much anything by Brian Kernighan. In fact if you want to know shell his UNIX Programming Environment books is awesome. There are free documents on FreeBSD's site on learning ed() which as it may seem odd will help you get a grasp of vi() and provides a good foundation for regular expressions.

Good luck and happy hacking ~


----------



## nickednamed (Oct 17, 2012)

Thanks man.

I've been slowly making my way through some of the things you've suggested, including learning ed and some regular expression stuff [also sed].

And I've written a pretty dull, basic HOWTO in the spirit of giving back to the community which provides so much help and assistance.

Although I'm a little puzzled as to what you mean by "automate everything". I've been looking to replace some tedious, draw-out tasks with shell scripts, but to be honest, I don't seem to be performing very many tedious tasks during my day to day use of FreeBSD.

I plan on familiarizing myself with backup applications and procedures, and no doubt I will try to automate the process. What other kind of things do you automate?

And as regards the original post, I'm going to try out runit in a virtual machine and see what happens.


----------



## UNIXgod (Oct 17, 2012)

nickednamed said:
			
		

> And I've written a pretty dull, basic HOWTO in the spirit of giving back to the community which provides so much help and assistance.
> 
> Although I'm a little puzzled as to what you mean by "automate everything". I've been looking to replace some tedious, draw-out tasks with shell scripts, but to be honest, I don't seem to be performing very many tedious tasks during my day to day use of FreeBSD.
> 
> I plan on familiarizing myself with backup applications and procedures, and no doubt I will try to automate the process. What other kind of things do you automate?



Please link you HOWTO. I have one also =). I used it in a talk at a local user vim group to teach ex mode.

You can automate the creation of jails and their routing( and or the reverse). You can automate security. Scrape your logs and block ip addresses of anyone trying to log into ssh with user names not on the system (or non ssh login types root, postgres).

I have several scripts which email reports (along with periodic) on system health and audits. One checks once a day on what ports are need updating in my jails.

If you run more than one physical machine you can send command via ssh. This way you can do the same things as mentioned above about jails.

For day to day tasks I sometimes create simple and small wrappers for saving some typing. Usually when an alias won't work or be effective.

Hope this info inspires you.


----------



## break19 (Oct 18, 2012)

The moment you create an idiot proof system, the world will produce better idiots.


----------

