3 # This script should be run after the webmin archive is unpacked, in order
4 # to setup the various config files
6 # Find install directory
10 if [ -x /bin/pwd ]; then
16 ver=`cat "$wadir/version"`
19 if [ "$tempdir" = "" ]; then
23 if [ $? != "0" ]; then
24 echo "ERROR: Cannot find the Webmin install directory";
29 echo "***********************************************************************"
30 echo "* Welcome to the Webmin setup script, version $ver *"
31 echo "***********************************************************************"
32 echo "Webmin is a web-based interface that allows Unix-like operating"
33 echo "systems and common Unix services to be easily administered."
36 # Only root can run this
37 id | grep "uid=0(" >/dev/null
38 if [ $? != "0" ]; then
39 uname -a | grep -i CYGWIN >/dev/null
40 if [ $? != "0" ]; then
41 echo "ERROR: The Webmin install script must be run as root";
47 # Use the supplied destination directory, if any
48 if [ "$1" != "" ]; then
50 echo "Installing Webmin from $srcdir to $wadir ..."
51 if [ ! -d "$wadir" ]; then
53 if [ "$?" != "0" ]; then
54 echo "ERROR: Failed to create $wadir"
59 # Make sure dest dir is not in use
60 ls "$wadir" | grep -v rpmsave >/dev/null 2>&1
61 if [ "$?" = "0" -a ! -r "$wadir/setup.sh" ]; then
62 echo "ERROR: Installation directory $wadir contains other files"
68 echo "Installing Webmin in $wadir ..."
72 # Work out perl library path
74 if [ "$perllib" != "" ]; then
75 PERLLIB="$PERLLIB:$perllib"
78 # Validate source directory
79 allmods=`cd "$srcdir"; echo */module.info | sed -e 's/\/module.info//g'`
80 defaultallmods=`cd "$srcdir"; echo */module.info | xargs grep -L nondefault=1 2>/dev/null | sed -e 's/\/module.info//g'`
81 if [ "$defaultallmods" = "" ]; then
82 defaultallmods="$allmods"
84 if [ "$allmods" = "" ]; then
85 echo "ERROR: Failed to get module list"
91 # Load package-defined variable overrides
92 if [ -r "$srcdir/setup-pre.sh" ]; then
93 . "$srcdir/setup-pre.sh"
96 # Ask for webmin config directory
97 echo "***********************************************************************"
98 echo "Webmin uses separate directories for configuration files and log files."
99 echo "Unless you want to run multiple versions of Webmin at the same time"
100 echo "you can just accept the defaults."
102 printf "Config file directory [/etc/webmin]: "
103 if [ "$config_dir" = "" ]; then
106 if [ "$config_dir" = "" ]; then
107 config_dir=/etc/webmin
109 abspath=`echo $config_dir | grep "^/"`
110 if [ "$abspath" = "" ]; then
111 echo "Config directory must be an absolute path"
115 if [ ! -d $config_dir ]; then
118 echo "ERROR: Failed to create directory $config_dir"
123 if [ -r "$config_dir/config" ]; then
124 echo "Found existing Webmin configuration in $config_dir"
129 # Check if upgrading from an old version
130 if [ "$upgrading" = 1 ]; then
133 # Get current var path
134 var_dir=`cat $config_dir/var-path`
136 # Force creation if non-existant
137 mkdir -p $var_dir >/dev/null 2>&1
139 # Get current perl path
140 perl=`cat $config_dir/perl-path`
142 # Create temp files directory
143 $perl "$srcdir/maketemp.pl"
144 if [ "$?" != "0" ]; then
145 echo "ERROR: Failed to create or check temp files directory $tempdir"
150 # Get old os name and version
151 os_type=`grep "^os_type=" $config_dir/config | sed -e 's/os_type=//g'`
152 os_version=`grep "^os_version=" $config_dir/config | sed -e 's/os_version=//g'`
153 real_os_type=`grep "^real_os_type=" $config_dir/config | sed -e 's/real_os_type=//g'`
154 real_os_version=`grep "^real_os_version=" $config_dir/config | sed -e 's/real_os_version=//g'`
156 # Get old root, host, port, ssl and boot flag
157 oldwadir=`grep "^root=" $config_dir/miniserv.conf | sed -e 's/root=//g'`
158 port=`grep "^port=" $config_dir/miniserv.conf | sed -e 's/port=//g'`
159 ssl=`grep "^ssl=" $config_dir/miniserv.conf | sed -e 's/ssl=//g'`
160 atboot=`grep "^atboot=" $config_dir/miniserv.conf | sed -e 's/atboot=//g'`
161 inetd=`grep "^inetd=" $config_dir/miniserv.conf | sed -e 's/inetd=//g'`
163 if [ "$inetd" != "1" ]; then
165 $config_dir/stop >/dev/null 2>&1
168 # Copy files to target directory
169 if [ "$wadir" != "$srcdir" ]; then
170 echo "Copying files to $wadir .."
171 (cd "$srcdir" ; tar cf - . | (cd "$wadir" ; tar xf -))
177 $perl "$wadir/newmods.pl" $config_dir $allmods
179 # Update miniserv.conf with new root directory and mime types file
180 grep -v "^root=" $config_dir/miniserv.conf | grep -v "^mimetypes=" >$tempdir/$$.miniserv.conf
181 if [ $? != "0" ]; then exit 1; fi
182 mv $tempdir/$$.miniserv.conf $config_dir/miniserv.conf
183 echo "root=$wadir" >> $config_dir/miniserv.conf
184 echo "mimetypes=$wadir/mime.types" >> $config_dir/miniserv.conf
185 grep logout= $config_dir/miniserv.conf >/dev/null
186 if [ $? != "0" ]; then
187 echo "logout=$config_dir/logout-flag" >> $config_dir/miniserv.conf
190 # Check for third-party modules in old version
191 if [ "$wadir" != "$oldwadir" ]; then
192 echo "Checking for third-party modules .."
193 if [ "$webmin_upgrade" != "" ]; then
196 $perl "$wadir/thirdparty.pl" "$wadir" "$oldwadir" $autothird
201 # Remove old cache of module infos
202 rm -f $config_dir/module.infos.cache
204 # Config directory exists .. make sure it is not in use
205 ls $config_dir | grep -v rpmsave >/dev/null 2>&1
206 if [ "$?" = "0" -a "$config_dir" != "/etc/webmin" ]; then
207 echo "ERROR: Config directory $config_dir is not empty"
212 # Ask for log directory
213 printf "Log file directory [/var/webmin]: "
214 if [ "$var_dir" = "" ]; then
217 if [ "$var_dir" = "" ]; then
220 abspath=`echo $var_dir | grep "^/"`
221 if [ "$abspath" = "" ]; then
222 echo "Log file directory must be an absolute path"
226 if [ "$var_dir" = "/" ]; then
227 echo "Log directory cannot be /"
231 if [ ! -d $var_dir ]; then
234 echo "ERROR: Failed to create directory $var_dir"
241 # Ask where perl is installed
242 echo "***********************************************************************"
243 echo "Webmin is written entirely in Perl. Please enter the full path to the"
244 echo "Perl 5 interpreter on your system."
246 if [ -x /usr/bin/perl ]; then
247 perldef=/usr/bin/perl
248 elif [ -x /usr/local/bin/perl ]; then
249 perldef=/usr/local/bin/perl
253 if [ "$perl" = "" ]; then
254 if [ "$perldef" = "" ]; then
255 printf "Full path to perl: "
257 if [ "$perl" = "" ]; then
258 echo "ERROR: No path entered!"
263 printf "Full path to perl (default $perldef): "
265 if [ "$perl" = "" ]; then
273 echo "Testing Perl ..."
274 if [ ! -x $perl ]; then
275 echo "ERROR: Failed to find perl at $perl"
279 $perl -e 'print "foobar\n"' 2>/dev/null | grep foobar >/dev/null
280 if [ $? != "0" ]; then
281 echo "ERROR: Failed to run test perl script. Maybe $perl is"
282 echo "not the perl interpreter, or is not installed properly"
286 $perl -e 'exit ($] < 5.002 ? 1 : 0)'
287 if [ $? = "1" ]; then
288 echo "ERROR: Detected old perl version. Webmin requires"
289 echo "perl 5.002 or better to run"
293 $perl -e 'use Socket; print "foobar\n"' 2>/dev/null | grep foobar >/dev/null
294 if [ $? != "0" ]; then
295 echo "ERROR: Perl Socket module not installed. Maybe Perl has"
296 echo "not been properly installed on your system"
300 $perl -e '$c = crypt("xx", "yy"); exit($c ? 0 : 1)'
301 if [ $? != "0" ]; then
302 $perl -e 'use Crypt::UnixCrypt' >/dev/null 2>&1
304 if [ $? != "0" ]; then
305 echo "ERROR: Perl crypt function does not work. Maybe Perl has"
306 echo "not been properly installed on your system"
310 echo "Perl seems to be installed ok"
313 # Create temp files directory
314 $perl "$srcdir/maketemp.pl"
315 if [ "$?" != "0" ]; then
316 echo "ERROR: Failed to create or check temp files directory $tempdir"
321 # Ask for operating system type
322 echo "***********************************************************************"
323 if [ "$os_type" = "" ]; then
324 if [ "$autoos" = "" ]; then
327 $perl "$srcdir/oschooser.pl" "$srcdir/os_list.txt" $tempdir/$$.os $autoos
334 echo "Operating system name: $real_os_type"
335 echo "Operating system version: $real_os_version"
338 # Ask for web server port, name and password
339 echo "***********************************************************************"
340 echo "Webmin uses its own password protected web server to provide access"
341 echo "to the administration programs. The setup script needs to know :"
342 echo " - What port to run the web server on. There must not be another"
343 echo " web server already using this port."
344 echo " - The login name required to access the web server."
345 echo " - The password required to access the web server."
346 echo " - If the webserver should use SSL (if your system supports it)."
347 echo " - Whether to start webmin at boot time."
349 printf "Web server port (default 10000): "
350 if [ "$port" = "" ]; then
352 if [ "$port" = "" ]; then
356 if [ $port -lt 1 ]; then
357 echo "ERROR: $port is not a valid port number"
361 if [ $port -gt 65535 ]; then
362 echo "ERROR: $port is not a valid port number. Port numbers cannot be"
363 echo " greater than 65535"
367 $perl -e 'use Socket; socket(FOO, PF_INET, SOCK_STREAM, getprotobyname("tcp")); setsockopt(FOO, SOL_SOCKET, SO_REUSEADDR, pack("l", 1)); bind(FOO, pack_sockaddr_in($ARGV[0], INADDR_ANY)) || exit(1); exit(0);' $port
368 if [ $? != "0" ]; then
369 echo "ERROR: TCP port $port is already in use by another program"
373 printf "Login name (default admin): "
374 if [ "$login" = "" ]; then
376 if [ "$login" = "" ]; then
380 echo "$login" | grep : >/dev/null
381 if [ "$?" = "0" ]; then
382 echo "ERROR: Username contains a : character"
386 echo $login | grep " " >/dev/null
387 if [ "$?" = "0" ]; then
388 echo "ERROR: Username contains a space"
392 if [ "$login" = "webmin" ]; then
393 echo "ERROR: Username 'webmin' is reserved for internal use"
397 printf "Login password: "
398 if [ "$password" = "" -a "$crypt" = "" ]; then
403 printf "Password again: "
408 if [ "$password" != "$password2" ]; then
409 echo "ERROR: Passwords don't match"
413 echo $password | grep : >/dev/null
414 if [ "$?" = "0" ]; then
415 echo "ERROR: Password contains a : character"
421 # Ask the user if SSL should be used
422 if [ "$ssl" = "" ]; then
424 $perl -e 'use Net::SSLeay' >/dev/null 2>/dev/null
425 if [ $? = "0" ]; then
426 printf "Use SSL (y/n): "
428 if [ "$sslyn" = "y" -o "$sslyn" = "Y" ]; then
432 echo "The Perl SSLeay library is not installed. SSL not available."
437 # Don't use SSL if missing Net::SSLeay
438 if [ "$ssl" = "1" ]; then
439 $perl -e 'use Net::SSLeay' >/dev/null 2>/dev/null
440 if [ $? != "0" ]; then
445 # Ask whether to run at boot time
446 if [ "$atboot" = "" ]; then
447 initsupp=`grep "^os_support=" "$srcdir/init/module.info" | sed -e 's/os_support=//g' | grep $os_type`
449 if [ "$initsupp" != "" ]; then
450 printf "Start Webmin at boot time (y/n): "
452 if [ "$atbootyn" = "y" -o "$atbootyn" = "Y" ]; then
456 echo "Webmin does not support being started at boot time on your system."
461 # Copy files to target directory
462 echo "***********************************************************************"
463 if [ "$wadir" != "$srcdir" ]; then
464 echo "Copying files to $wadir .."
465 (cd "$srcdir" ; tar cf - . | (cd "$wadir" ; tar xf -))
470 # Create webserver config file
471 echo $perl > $config_dir/perl-path
472 echo $var_dir > $config_dir/var-path
473 echo "Creating web server config files.."
474 cfile=$config_dir/miniserv.conf
475 echo "port=$port" >> $cfile
476 echo "root=$wadir" >> $cfile
477 echo "mimetypes=$wadir/mime.types" >> $cfile
478 echo "addtype_cgi=internal/cgi" >> $cfile
479 echo "realm=Webmin Server" >> $cfile
480 echo "logfile=$var_dir/miniserv.log" >> $cfile
481 echo "errorlog=$var_dir/miniserv.error" >> $cfile
482 echo "pidfile=$var_dir/miniserv.pid" >> $cfile
483 echo "logtime=168" >> $cfile
484 echo "ppath=$ppath" >> $cfile
485 echo "ssl=$ssl" >> $cfile
486 echo "env_WEBMIN_CONFIG=$config_dir" >> $cfile
487 echo "env_WEBMIN_VAR=$var_dir" >> $cfile
488 echo "atboot=$atboot" >> $cfile
489 echo "logout=$config_dir/logout-flag" >> $cfile
490 if [ "$listen" != "" ]; then
491 echo "listen=$listen" >> $cfile
493 echo "listen=10000" >> $cfile
495 echo "denyfile=\\.pl\$" >> $cfile
496 echo "log=1" >> $cfile
497 echo "blockhost_failures=5" >> $cfile
498 echo "blockhost_time=60" >> $cfile
499 echo "syslog=1" >> $cfile
500 if [ "$allow" != "" ]; then
501 echo "allow=$allow" >> $cfile
503 if [ "$session" != "" ]; then
504 echo "session=$session" >> $cfile
506 echo "session=1" >> $cfile
508 if [ "$pam" != "" ]; then
509 echo "pam=$pam" >> $cfile
512 # Append package-specific info to config file
513 if [ -r "$wadir/miniserv-conf" ]; then
514 cat "$wadir/miniserv-conf" >>$cfile
517 md5pass=`$perl -e 'print crypt("test", "\\$1\\$A9wB3O18\\$zaZgqrEmb9VNltWTL454R/") eq "\\$1\\$A9wB3O18\\$zaZgqrEmb9VNltWTL454R/" ? "1\n" : "0\n"'`
519 ufile=$config_dir/miniserv.users
520 if [ "$crypt" != "" ]; then
521 echo "$login:$crypt:0" > $ufile
523 if [ "$md5pass" = "1" ]; then
524 $perl -e 'print "$ARGV[0]:",crypt($ARGV[1], "\$1\$XXXXXXXX"),":0\n"' "$login" "$password" > $ufile
526 $perl -e 'print "$ARGV[0]:",crypt($ARGV[1], "XX"),":0\n"' "$login" "$password" > $ufile
530 echo "userfile=$ufile" >> $cfile
532 kfile=$config_dir/miniserv.pem
533 openssl version >/dev/null 2>&1
534 if [ "$?" = "0" ]; then
535 # We can generate a new SSL key for this host
537 openssl req -newkey rsa:512 -x509 -nodes -out $tempdir/cert -keyout $tempdir/key -days 1825 >/dev/null 2>&1 <<EOF
541 Webmin Webserver on $host
546 if [ "$?" = "0" ]; then
547 cat $tempdir/cert $tempdir/key >$kfile
549 rm -f $tempdir/cert $tempdir/key
551 if [ ! -r $kfile ]; then
552 # Fall back to the built-in key
553 cp "$wadir/miniserv.pem" $kfile
556 echo "keyfile=$config_dir/miniserv.pem" >> $cfile
562 echo "Creating access control file.."
563 afile=$config_dir/webmin.acl
565 if [ "$defaultmods" = "" ]; then
566 echo $login: $defaultallmods >> $afile
568 echo $login: $defaultmods >> $afile
574 if [ "$login" != "root" -a "$login" != "admin" ]; then
575 # Allow use of RPC by this user
576 echo rpc=1 >>$config_dir/$login.acl
580 if [ "$noperlpath" = "" ]; then
581 echo "Inserting path to perl into scripts.."
582 (find "$wadir" -name '*.cgi' -print ; find "$wadir" -name '*.pl' -print) | $perl "$wadir/perlpath.pl" $perl -
587 echo "Creating start and stop scripts.."
588 rm -f $config_dir/stop $config_dir/start $config_dir/restart $config_dir/reload
589 echo "#!/bin/sh" >>$config_dir/start
590 echo "echo Starting Webmin server in $wadir" >>$config_dir/start
591 echo "trap '' 1" >>$config_dir/start
592 echo "LANG=" >>$config_dir/start
593 echo "export LANG" >>$config_dir/start
594 echo "#PERLIO=:raw" >>$config_dir/start
595 echo "unset PERLIO" >>$config_dir/start
596 echo "export PERLIO" >>$config_dir/start
597 echo "PERLLIB=$PERLLIB" >>$config_dir/start
598 echo "export PERLLIB" >>$config_dir/start
599 uname -a | grep -i 'HP/*UX' >/dev/null
600 if [ $? = "0" ]; then
601 echo "exec '$wadir/miniserv.pl' $config_dir/miniserv.conf &" >>$config_dir/start
603 echo "exec '$wadir/miniserv.pl' $config_dir/miniserv.conf" >>$config_dir/start
606 echo "#!/bin/sh" >>$config_dir/stop
607 echo "echo Stopping Webmin server in $wadir" >>$config_dir/stop
608 echo "pidfile=\`grep \"^pidfile=\" $config_dir/miniserv.conf | sed -e 's/pidfile=//g'\`" >>$config_dir/stop
609 echo "kill \`cat \$pidfile\`" >>$config_dir/stop
611 echo "#!/bin/sh" >>$config_dir/restart
612 echo "$config_dir/stop && $config_dir/start" >>$config_dir/restart
614 echo "#!/bin/sh" >>$config_dir/reload
615 echo "echo Reloading Webmin server in $wadir" >>$config_dir/reload
616 echo "pidfile=\`grep \"^pidfile=\" $config_dir/miniserv.conf | sed -e 's/pidfile=//g'\`" >>$config_dir/reload
617 echo "kill -USR1 \`cat \$pidfile\`" >>$config_dir/reload
619 chmod 755 $config_dir/start $config_dir/stop $config_dir/restart $config_dir/reload
623 if [ "$upgrading" = 1 ]; then
624 echo "Updating config files.."
626 echo "Copying config files.."
628 newmods=`$perl "$wadir/copyconfig.pl" "$os_type/$real_os_type" "$os_version/$real_os_version" "$wadir" $config_dir "" $allmods`
629 if [ "$upgrading" != 1 ]; then
630 # Store the OS and version
631 echo "os_type=$os_type" >> $config_dir/config
632 echo "os_version=$os_version" >> $config_dir/config
633 echo "real_os_type=$real_os_type" >> $config_dir/config
634 echo "real_os_version=$real_os_version" >> $config_dir/config
635 if [ -r /etc/system.cnf ]; then
636 # Found a caldera system config file .. get the language
637 source /etc/system.cnf
638 if [ "$CONF_LST_LANG" = "us" ]; then
640 elif [ "$CONF_LST_LANG" = "uk" ]; then
643 grep "lang=$CONF_LST_LANG," "$wadir/lang_list.txt" >/dev/null 2>&1
644 if [ "$?" = 0 ]; then
645 echo "lang=$CONF_LST_LANG" >> $config_dir/config
649 # Turn on logging by default
650 echo "log=1" >> $config_dir/config
652 # Use licence module specified by environment variable
653 if [ "$licence_module" != "" ]; then
654 echo licence_module=$licence_module >>$cfile
657 # one-off hack to set log variable in config from miniserv.conf
658 grep log= $config_dir/config >/dev/null
659 if [ "$?" = "1" ]; then
660 grep log= $config_dir/miniserv.conf >> $config_dir/config
661 grep logtime= $config_dir/miniserv.conf >> $config_dir/config
662 grep logclear= $config_dir/miniserv.conf >> $config_dir/config
665 echo $ver > $config_dir/version
669 # Set passwd_ fields in miniserv.conf from global config
670 for field in passwd_file passwd_uindex passwd_pindex passwd_cindex passwd_mindex; do
671 grep $field= $config_dir/miniserv.conf >/dev/null
672 if [ "$?" != "0" ]; then
673 grep $field= $config_dir/config >> $config_dir/miniserv.conf
676 grep passwd_mode= $config_dir/miniserv.conf >/dev/null
677 if [ "$?" != "0" ]; then
678 echo passwd_mode=0 >> $config_dir/miniserv.conf
681 # If Perl crypt supports MD5, then make it the default
682 if [ "$md5pass" = "1" ]; then
683 echo md5pass=1 >> $config_dir/config
686 # Set a special theme if none was set before
687 if [ "$theme" = "" ]; then
688 theme=`cat "$wadir/defaulttheme" 2>/dev/null`
690 oldthemeline=`grep "^theme=" $config_dir/config`
691 oldtheme=`echo $oldthemeline | sed -e 's/theme=//g'`
692 if [ "$theme" != "" ] && [ "$oldthemeline" = "" ] && [ -d "$wadir/$theme" ]; then
693 echo "theme=$theme" >> $config_dir/config
694 echo "preroot=$theme" >> $config_dir/miniserv.conf
697 # Set the product field in the global config
698 grep product= $config_dir/config >/dev/null
699 if [ "$?" != "0" ]; then
700 echo product=webmin >> $config_dir/config
703 if [ "$makeboot" = "1" ]; then
704 echo "Configuring Webmin to start at boot time.."
705 (cd "$wadir/init" ; WEBMIN_CONFIG=$config_dir WEBMIN_VAR=$var_dir "$wadir/init/atboot.pl" $bootscript)
710 # If password delays are not specifically disabled, enable them
711 grep passdelay= $config_dir/miniserv.conf >/dev/null
712 if [ "$?" != "0" ]; then
713 echo passdelay=1 >> $config_dir/miniserv.conf
716 if [ "$nouninstall" = "" ]; then
717 echo "Creating uninstall script $config_dir/uninstall.sh .."
718 cat >$config_dir/uninstall.sh <<EOF
720 printf "Are you sure you want to uninstall Webmin? (y/n) : "
723 if [ "\$answer" = "y" ]; then
725 echo "Running uninstall scripts .."
726 (cd "$wadir" ; WEBMIN_CONFIG=$config_dir WEBMIN_VAR=$var_dir LANG= "$wadir/run-uninstalls.pl")
727 echo "Deleting $wadir .."
729 echo "Deleting $config_dir .."
734 chmod +x $config_dir/uninstall.sh
739 echo "Changing ownership and permissions .."
740 for m in $newmods; do
741 chown -R root $config_dir/$m
742 chgrp -R bin $config_dir/$m
743 chmod -R og-rw $config_dir/$m
745 for f in miniserv.conf miniserv.pem miniserv.users; do
746 chown -R root $config_dir/$f
747 chgrp -R bin $config_dir/$f
748 chmod -R og-rw $config_dir/$f
750 chmod +r $config_dir/version
751 if [ "$nochown" = "" ]; then
752 chown -R root "$wadir"
753 chgrp -R bin "$wadir"
754 chmod -R og-w "$wadir"
755 chmod -R a+rx "$wadir"
757 if [ $var_dir != "/var" ]; then
758 chown -R root $var_dir
759 chgrp -R bin $var_dir
760 chmod -R og-rwx $var_dir
765 # Save target directory if one was specified
766 if [ "$wadir" != "$srcdir" ]; then
767 echo $wadir >$config_dir/install-dir
769 rm -f $config_dir/install-dir
772 if [ "$nopostinstall" = "" ]; then
773 echo "Running postinstall scripts .."
774 (cd "$wadir" ; WEBMIN_CONFIG=$config_dir WEBMIN_VAR=$var_dir "$wadir/run-postinstalls.pl")
779 # Run package-defined post-install script
780 if [ -r "$srcdir/setup-post.sh" ]; then
781 . "$srcdir/setup-post.sh"
784 if [ "$nostart" = "" ]; then
785 if [ "$inetd" != "1" ]; then
786 echo "Attempting to start Webmin mini web server.."
788 if [ $? != "0" ]; then
789 echo "ERROR: Failed to start web server!"
797 echo "***********************************************************************"
798 echo "Webmin has been installed and started successfully. Use your web"
799 echo "browser to go to"
802 if [ "$ssl" = "1" ]; then
803 echo " https://$host:$port/"
805 echo " http://$host:$port/"
808 echo "and login with the name and password you entered previously."
810 if [ "$ssl" = "1" ]; then
811 echo "Because Webmin uses SSL for encryption only, the certificate"
812 echo "it uses is not signed by one of the recognized CAs such as"
813 echo "Verisign. When you first connect to the Webmin server, your"
814 echo "browser will ask you if you want to accept the certificate"
815 echo "presented, as it does not recognize the CA. Say yes."
820 if [ "$oldwadir" != "$wadir" -a "$upgrading" = 1 -a "$deletedold" != 1 ]; then
821 echo "The directory from the previous version of Webmin"
823 echo "Can now be safely deleted to free up disk space, assuming"
824 echo "that all third-party modules have been copied to the new"