source: sandbox/2.3-MailArchiver/doc-expressolivre/suse/expressoInstallSuse10.0-es.sh @ 6779

Revision 6779, 10.0 KB checked in by rafaelraymundo, 12 years ago (diff)

Ticket #2946 - Liberado Expresso(branch 2.3) integrado ao MailArchiver?.

Line 
1#!/bin/bash
2############################################################
3### Ultima modificacion: 16/08/06
4###
5### recordando que los paquetes abajo
6### indicados son para una maquina
7### si va a utilizar un servidor de e-mails y de ladp, por ejemplo,
8### de otra máquina, algunos paquetes no eran necesarios.
9### depende de cada implementación.
10### Lea todo este script y ajustelo a sus necesidades.
11############################################################
12
13
14### Instala todos los paquetes y dependencias necesarias al Expresso.
15### Ese proceso es un poco demorado y exige que los repositorios online
16### estén configurados.
17### Descomente esta linea para resolver todas las dependencias de Expresso.
18yast -i apache2 apache2-prefork apache2-mod_php4 apache2-mod_perl openssl openssl-devel php4 php4-devel php4-session php4-gd php4-imap php4-ldap php4-pgsql php4-fastcgi php4-mbstring postgresql postgresql-server openldap2 openldap2-client openldap2-devel openldap2-back-meta openldap2-back-perl db42 cyrus-imapd cyrus-sasl-devel cyrus-sasl cyrus-sasl-saslauthd postfix vim perl-Cyrus-IMAP imap-lib perl-Parse-RecDescent perl-TermReadKey perl-TermReadLine-Gnu perl-MLDBM perl-MLDBM-Sync perl-ldap perl-Apache-AuthNetLDAP perl-libwww-perl perl-HTML-Parser perl-Tie-IxHash perl-HTML-Tagset perl-Convert-ASN1 readline-devel readline zip uzip
19
20echo -e "\n\n\n\n\n\n##########################################################\n"
21echo -e "BIENVENIDO A LA INSTALACION DE EXPRESSO LIVRE\n"
22echo -e "Este script fue echo para correr en sistema Linux Suse 10.0.\n"
23echo -e "Cualquier otro sistema puede exigir modificaciones en este script."
24echo -e "\n##########################################################\n"
25echo -e "Escriba la misma  contraseña de LDAP."
26echo -ne "Esta  contraseña sera utilizada para el usuario expresso-admin.\n"
27echo " contraseña: "
28read LDAP_PWD
29echo -e "\nEscriba su organización, ejemplo: soporte: "
30read ORG
31echo -e "\nEscriba su dominio, ejemplo: netcom.inf.br: "
32read DOMAIN
33echo -e "\nEscriba su  dc para el LDAP, ejemplo: dc=netcom,dc=inf,dc=br: "
34read DC_LDAP
35
36echo "##############################################"
37echo "###  DEFINIENDO LAS VARIABLES ..."
38echo "##############################################"
39
40LDAP_DN="$DC_LDAP"
41NOME=`echo $DOMAIN | awk -F . '{print $1}'`
42LDAP_PWD_MD5=`slappasswd -v -s $LDAP_PWD -h {MD5}`
43LDAP_PWD_MD5=`php ./arqs-conf-suse/regexp.php $LDAP_PWD_MD5`
44HEADER_PWD=`php ./arqs-conf-suse/pass.php $LDAP_PWD`
45
46
47echo "##############################################"
48echo "###  PREPARANDO  POSTGRESQL ..."
49echo "##############################################"
50
51### Prepara la base de datos de Expresso basada en informaciones actuales.
52### No necesita ser ejecutado si requiere hacerlo manualmente la primera vez que entre a expresso.
53#sed -e "s/LDAP_DN/$LDAP_DN/g" -e "s/LDAP_PWD/$LDAP_PWD/g" -e "s/DOMAIN/$DOMAIN/g" -e "s/ORG/$ORG/g" ./arqs-conf-suse/expresso.dump > /tmp/expresso.dump
54
55### Esto borrara cualquier informacion que tenga en postgresql.
56### Comente estas lineas en caso de que tnga  base que no puede ser borrada
57### Caso descomente esas lineas, pode comentar el dropdb abajo.
58#rcpostgresql stop
59#rm -Rf /var/lib/pgsql/data/
60#rcpostgresql start
61
62### Copia los archivos de configuracion de  postgresql  para  Expresso.
63cp /var/lib/pgsql/data/pg_hba.conf /var/lib/data/pgsql/pg_hba.conf.bkpexpresso
64cp ./arqs-conf-suse/var/lib/pgsql/data/pg_hba.conf /var/lib/pgsql/data/
65cp /var/lib/pgsql/data/postgresql.conf /var/lib/data/pgsql/postgresql.conf.bkpexpresso
66cp ./arqs-conf-suse/var/lib/pgsql/data/postgresql.conf /var/lib/pgsql/data/
67
68### Confirma si postgresql está corriendo.
69rcpostgresql stop
70sleep 3
71rcpostgresql start
72
73###Borra la base de datos "expresso" para no dar problema en caso de que ya exista.
74dropdb -U postgres expresso
75
76### Crea la base de datos  "expresso" en formato latin1.
77createdb -U postgres -E latin1 expresso
78
79### Importa las tablas generadas para la base "expresso".
80### Esto puede ser realizada por expresso cuando ingrese por primera vez.
81#psql -U postgres expresso < /tmp/expresso.dump
82#rcpostgresql restart
83#rm /tmp/expresso.dump
84
85
86echo "##############################################"
87echo "###  PREPARANDO  APACHE ..."
88echo "##############################################"
89
90### A linea abajo es solamente para  Debian. No es correspondiente en Suse.
91#apache2-ssl-certificate;
92a2enmod rewrite;
93
94### Se ya existe una instalacion de expresso en apache,  será removida.
95rm -Rf /srv/www/htdocs/expresso/
96
97### Copia los archivos de expresso para o apache. Coloca los permisos correctos.
98cp -R -p ../../../expresso/ /srv/www/htdocs/
99chown -R wwwrun:www /srv/www/htdocs/expresso/
100
101### Intercambia los archivos de configuracion de apache por los de  Expresso.
102cp /etc/apache2/httpd.conf /etc/apache2/httpd.conf.bkpexpresso
103cp ./arqs-conf-suse/etc/apache2/httpd.conf /etc/apache2/
104
105cp /etc/apache2/server-tuning.conf /etc/apache2/server-tuning.conf.bkpexpresso
106cp ./arqs-conf-suse/etc/apache2/server-tuning.conf /etc/apache2/
107
108cp ./arqs-conf-suse/etc/apache2/vhosts.d/expresso.conf /etc/apache2/vhosts.d/
109
110cp /etc/apache2/sysconfig.d/global.conf /etc/apache2/sysconfig.d/global.conf.bkpexpresso
111cp ./arqs-conf-suse/etc/apache2/sysconfig.d/global.conf /etc/apache2/sysconfig.d/
112
113### Cambia el archivo de configuracion de PHP con las exigencias de Expresso.
114cp /etc/php.ini /etc/php.ini.bkpexpresso
115cp ./arqs-conf-suse/etc/php4/apache2/php.ini /etc/
116
117### Borra la carpeta  php_sessions para evitar problemas, caso de que ya  exista. Crea nuevamente con los permisos.
118rm -Rf /php_sessions/
119mkdir /php_sessions/
120chmod -R 777 /php_sessions/
121
122### Reinicia o apache.
123rcapache2 restart
124
125
126echo "##############################################"
127echo "### PREPARANDO OOPENLDAP ..."
128echo "##############################################"
129
130### Genera el archivo de configuracion  de Servidor LDAP personalizado y lo sustituye.
131sed -e "s/LDAP_DN/$LDAP_DN/g" -e "s/LDAP_PWD/$LDAP_PWD/g" ./arqs-conf-suse/etc/openldap/slapd.conf > /etc/openldap/slapd.conf
132
133### Copia los schemas usados por Expresso.
134cp ./arqs-conf-suse/etc/openldap/schema/* /etc/openldap/schema/
135rcldap stop
136
137### Genera a base por defecto de LDAP para  expresso.
138sed -e "s/LDAP_DN/$LDAP_DN/g" -e "s/NOME/$NOME/g" -e "s/ORG/$ORG/g" -e "s/DOMAIN/$DOMAIN/g" ./arqs-conf-suse/expresso.ldif > /tmp/expresso.ldif
139
140### Remove todas las entradas viejas de LDAP.
141rm -Rf /var/lib/ldap/*
142rcldap start
143
144### Importa a base LDAP.
145rcldap stop
146slapadd -v -f /etc/openldap/slapd.conf -l /tmp/expresso.ldif
147rcldap start
148#rm /tmp/expresso.ldif
149
150
151echo "##############################################"
152echo "### PREPARANDO O SASL ..."
153echo "##############################################"
154
155### Adapta  SASL para  Expresso.
156sed -e "s/LDAP_DN/$LDAP_DN/g" ./arqs-conf-suse/etc/saslauthd.conf > /etc/saslauthd.conf
157cp ./arqs-conf-suse/etc/default/saslauthd /etc/default/
158
159### Reinicia  SASL.
160rcsaslauthd restart
161
162echo "##############################################"
163echo "### PREPARANDO O CYRUS ..."
164echo "##############################################"
165
166### Copia archivo de configuracion  de IMAP. Cuotas estan deshabilitadas!!!
167cp ./arqs-conf-suse/etc/imapd.conf /etc/
168
169### Copia el ejecutable de cyrus adaptado a usuario expresso-admin. Solamente para login.
170cp -p ./arqs-conf-suse/usr/bin/cyradm_expresso /usr/bin/
171
172### Reinicia los servicios.
173rccyrus restart
174sleep 4
175
176### Genera las carpetas  de IMAP para  el expresso-admin.
177./arqs-conf-suse/cyrus.pl $LDAP_PWD
178
179
180echo "##############################################"
181echo "### PREPARANDO POSTFIX ..."
182echo "##############################################"
183
184### Genera el archivo expresso-dominios basado en el dominio informado.
185sed -e "s/DOMAIN/$DOMAIN/g" ./arqs-conf-suse/etc/postfix/expresso-dominios > /etc/postfix/expresso-dominios
186postmap /etc/postfix/expresso-dominios
187
188### Substituye  main.cf original por otro con  as información personalizada.
189sed -e "s/LDAP_DN/$LDAP_DN/g" -e "s/DOMAIN/$DOMAIN/g" ./arqs-conf-suse/etc/postfix/main.cf > /etc/postfix/main.cf
190cp ./arqs-conf-suse/etc/postfix/master.cf /etc/postfix/
191rcpostfix restart
192
193### Adiciona los usuarios "postfix" e "mail" al grupo "postdrop".
194groupadd postdrop
195useradd postfix
196useradd mail
197
198
199echo "##############################################"
200echo "### PREPARANDO LA CARPETA HOME DE EXPRESSO ..."
201echo "##############################################"
202
203# imapsync & mkpasswd
204
205### Crea, copia de los archivos necesarios para el y coloca los permisos adecuados.
206mkdir /home/expressolivre
207cp ./arqs-conf-suse/home/expressolivre/* /home/expressolivre/
208chown -R wwwrun:www /home/expressolivre/
209
210echo "##############################################"
211echo "### PREPARANDO  HEADER_INC_PHP ..."
212echo "##############################################"
213
214##################
215### ATENCION EN  Suse 10.0 + php4 existe un "else" en la linea 89 que da erroe. En Caso de pase por algo parecido,
216### consulte o header.inc.php de lA carpets arqs-conf-suse para comparar la solucion.
217##################
218#sed -e "s/HEADER_PWD/$HEADER_PWD/g" ./arqs-conf-suse/header.inc.php > /srv/www/htdocs/expresso/header.inc.php
219#chown wwwrun:www /srv/www/htdocs/expresso/header.inc.php
220
221### Para garantizar la configuracion  manual do header_inc_php, este sera removido.
222rm -f /srv/www/htdocs/expresso/header.inc.php
223
224insserv apache2 ; insserv postgresql ; insserv saslauthd ; insserv cyrus ; insserv ldap ; insserv -r nscd
225
226echo "##############################################"
227echo "### TERMINADAS AS ROTINAS DE INSTALACAO DO EXPRESSO!"
228echo "###"
229echo "### Confiirme en las salidas do script si todo ocorrio bien."
230echo "###"
231echo "### Instalador realizada en versión Debian por"
232echo "### Joao Alfredo Knopik Junior "
233echo "### jakjr@celepar.pr.gov.br"
234echo "###"
235echo "### Reeditado, adaptado ao Suse e comentado por"
236echo "### Marcus Augustus Pereira Burghardt"
237echo "### marcus@netcom.inf.br"
238echo "###"
239echo "##############################################"
240
Note: See TracBrowser for help on using the repository browser.