[Testing] Minstall Version 2.0 Testing, Suggestions & Bug Reporting
Hey guys,
Many of you may know that I've been working on a major update (sponsored by the kind folks at KnightSwarm, Hb) to my widely used Minstall Server Setup & Management Script and I'm here today to offer a beta version and ask for some assistance in testing, finding bugs and maybe getting some good feature suggestions.
Anyway, without further ado, here are some of the major changes in the newest version:
- Unattended Installation Mode - This is by far the biggest change in the script as it adds a completely new mode of usage, allowing users to create a config file that will enable Minstall to completely install a server for them.
- Removal of the subdomain requirement in virtual host management sections - No longer will you need to have www.example.com to add your website, you can now simply use example.com or straight domains.
- Defining a virtual host as the default is now possible through the config file or interactive mode - This will redirect users who visit your servers IP to the default site.
- vserver support - Thanks to a test box loaned to me by @Chief I performed a simple fix to enable support for the vserver virtualisation platform.
- Ability to set default server mirror via the config.
- Many many bug fixes!
Documentation is still a work in progress at this point but the major changes are:
- Unattended mode can be run with the -u flag (the default config file will be used unless a config file is specified after the flag).
- Unattended config options are outlined in the config file, be sure to take a look through it!
Download link: http://dl.dropbox.com/u/50041888/Minstall 2.0 Beta 1.tar
To try it out install a fresh Debian 6 server, log in as root and run these commands:
mkdir minstall cd minstall wget -O minstall.tar "http://dl.dropbox.com/u/50041888/Minstall 2.0 Beta 1.tar" tar xfv minstall.tar rm minstall.tar
I'm looking forward to feedback and queries, thanks, Max.
Just a note, I'm very thankful to KnightSwarm, Hb for funding my development and providing me with test services and because of that I'll be inserting a nice logo below :P
Comments
Will we ever see any love for Cent/SL?
If someone offers some patches I'll be happy to take them!
feature to tell minstall how much memory i have and then get the best config for me. for nginx, php, and mysql.
edit:
i also like to put my choices in variables, maybe on top of script. so then its autopilot. no need to answer from prompt.
Thank you for sharing
Currently I'm using Minstall for configuring my server
@jcaleb: or an options.conf file just like tuxlite
Take a look at the config.ini file :-)
you should consider putting this up on github for more exposure & easier pull requests & issue tracking.
Thanks Max and KnightSwarm :P
@kbar, I'll update the version there when bugs have been ironed out :-)
I think adding a quick Wordpress install option would be cool.
Always handy. This does it so you can probably grab inspiration from there if needed:
https://github.com/Mins/TuxLite/blob/master/wordpress.sh
@maxexcloo: thanks for the config.ini hint, I was kinda asleep when I viewed your script.
Feature request: quick install for pptp and openvpn.
And please, remove .ini from the filename
Thank you for this wonderful script!
There's already scripts out there for OpenVPN for CentOS and Debian (although they are a bit dated). You'll have to update the file names but besides for that everything should work.
I know some of them but there are LAMP script also. So why don't gather all useful and more common features in one great and really optimized package?
@RoboCot true. :P
It's been in the pipeline for a while, hopefully I can get it going at some point...
Any reason why?
Might be because .ini might seem to refer to windows OS and people like Open Source OSes here :P
Yes. There is no ini file in unix
Tell that to the php folks
Lol you're right, forgot php.ini :P
The ini format was chosen as it is a fairly standard format that can be easily written to and read from in a variety of languages.
Release Candidate 1 is out after much testing and the following additions:
+ SSL Support (Enabled By Default)
+ Many Attended Mode Fixes
+ Ability To re enable BASH history.
+ Attended mode support for specifying multiple modules (bash minstall.sh module1,module2,etc)
+ phpMyAdmin installation script.
+ PHP Suhosin Bug Fixes (Thanks Zsolt Ero!)
+ Benchmark Script setup script :P
+ Docs folder for additional information.
+ Check Functions in manage modules to prevent duplicate hosts/users.
+ Clean common module to keep nginx and php configs up to date.
+ New method of writing config files, all templates are in manage-common-http
+ Cron cleaning functions.
+ Default host protection courtesy of telephone on Github.
+ Clean base config.
+ Fixed upgrade system typo, thanks Zsolt Ero!
+ Fixed typos
Thanks to any testers, the latest version is here, PLEASE report bugs, I'm almost ready for release!
Can a simplistic upgrade be done for existing installation of Minstall? @Maxexcloo?
It should work for existing servers if you re run the http-install modules, I have yet to test it and such
@maxexcloo i wonder what you fixed from suhosin?
Zsolt Ero did some talking to the Tuxlite maintainer and he recommended adding some fixes that they had added
@maxexcloo Ah okay! Matt (tuxlite's author) is a great guy. I did some debugging of issues from tuxlite with him in the past.
Good to hear, if you have him on Skype would you mind PM'ing his information over?
@maxexcloo I'm zsero here :-)
@djvdorp The suhosin code is all commented with references , basically the default is used + the required tweaks from the official phpMyAdmin manual, + a bug for Wordpress menu editing. Everything else is default.
suhosin.post.max_vars = 4096
suhosin.request.max_vars = 4096
; PHPMyAdmin Fixes (http://www.phpmyadmin.net/documentation/#faq1_38)
suhosin.get.max_value_length = 1024
suhosin.post.max_array_index_length = 256
suhosin.post.max_totalname_length = 8192
suhosin.request.max_array_index_length = 256
suhosin.request.max_totalname_length = 8192
I'm testing it soon!
@maxexcloo, do you want to integrate phpMyAdmin?
Here is a bash script what works on minstall:
pma_latest='http://sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/3.5.1/phpMyAdmin-3.5.1-english.tar.gz'
rm -rf /tmp/phpmyadmin
mkdir /tmp/phpmyadmin
wget -qO pma.tgz $pma_latest
tar zxf pma.tgz -C /tmp/phpmyadmin
rm pma.tgz
rm -rf $pmadir/*
cp -Rpf /tmp/phpmyadmin// $pmadir
rm -rf /tmp/phpmyadmin
cp config.inc.php $pmadir/
And the config.inc.php:
Ideally you should generate the secret on install (credits to tuxlite):
MATRIX="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
while [ "${n:=1}" -le "$LENGTH" ]; do
BLOWFISH="$BLOWFISH${MATRIX:$(($RANDOM%${#MATRIX})):1}"
let n+=1
done