本文轉載http://litaotao.blog.51cto.com/6224470/1299117博文
lamp&lnmp自動化安裝腳本
===================================
一、腳本的環境介紹
二、腳本的介紹
三、腳本的功能介紹
此腳本運作在rhel 6.4版本上
運作此腳本需注意:
1)、主機需要能夠上網,因為部落客是搭建的搜狐的外網yum源,此yum源由兩部分組成,一個是CD光牒裡面的所有軟體包,一個是epel源。
2)、需了解軟體之間的互相依賴性。
腳本是由函數組成,每一個函數實作一個功能
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<code>function</code><code>create_yum </code><code>#此函數是搭建sohu的yum倉庫</code>
<code>function</code><code>download </code><code>#此函數是下載下傳全部所需的軟體包</code>
<code>function</code><code>install_apache </code><code>#此函數是安裝apache軟體包</code>
<code>function</code><code>config_apache </code><code>#此函數是修改apache的服務腳本和開啟</code>
<code></code><code>apache服務 </code>
<code>function</code><code>install_nginx </code><code>#此函數是安裝nginx軟體包</code>
<code>function</code><code>install_mysql </code><code>#此函數是安裝mysql軟體包</code>
<code>function</code><code>config_mysql </code><code>#此函數是初始化mysql和開啟mysql的服務</code>
<code>function</code><code>install_php </code><code>#此函數是安裝php軟體包</code>
<code>function</code><code>config_php </code><code>#此函數提供php的配置檔案</code>
<code>function</code><code>install_php_fpm </code><code>#此函數是安裝php-fpm軟體包提供fastcgi服務</code>
<code>function</code><code>config_php_fpm </code><code>#此函數是修改php-fpm的配置檔案盒開啟</code>
<code></code><code>php-fpm的服務</code>
<code>function</code><code>install_xcache </code><code>#此函數是安裝為php代碼加速的軟體包</code>
<code>function</code><code>install_memcache </code><code>#此函數是安裝連接配接memcached的軟體包</code>
<code>function</code><code>install_memcached </code><code>#此函數是安裝memcached軟體包</code>
<code>function</code><code>install_lamp </code><code>#此函數裡面隻包含了apache,mysql,php的函數</code>
<code>function</code><code>config_lamp</code>
<code>function</code><code>install_lammp </code><code>#此函數裡面隻包含了apache,mysql,</code>
<code></code><code>memcached,php的函數</code>
<code>function</code><code>config_lammp</code>
<code>function</code><code>install_lnmp </code><code>#此函數裡面隻包含了nginx,mysql,php的函數</code>
<code>function</code><code>config_lnmp</code>
<code>function</code><code>install_lnmmp </code><code>#此函數裡面隻包含了nginx,mysql,</code>
<code>function</code><code>config_lnmmp</code>
如果各位博友覺得配置檔案的路徑存放資料的路徑與各位博友所要求的結果不一樣,那請各位博友隻需小小的自行修改一下
1)、支援某台機器單獨安裝某一個軟體,如apache、nginx、mysql、php-fpm,memcached
2)、支援某台機器直接安裝lamp、lnmp、lammp、lnmmp架構
3)、如果想一個一個的安裝lamp(lnmp)架構,請注意安裝順序:apache(nginx)-->
mysql-->php
4)、php與php-fpm其實都是安裝php源碼軟體包,但是提供的功能不一樣
如果你的apache與php安裝在不同的機器上,那麼php的那台主機安裝的是
php-fpm;
如果你的php與mysql安裝在不同的機器上,那麼php的那台主機也是安裝
php-fpm與memcached安裝在不同的機器上,那麼php-fpm的那台主機必須安裝memcache,用于連接配接memcached。
5)、安裝完每個腳本後,會把源碼包生成的檔案與系統能識别的頭檔案、庫檔案、二進制中
6)、會為服務提供system v 腳本檔案
7)、會自行的把服務開啟,并加入到開機自動啟動的服務清單中
整個腳本
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
<code>#!/bin/bash</code>
<code>#discripte:frist,you linux server must be surf internet because we use http://mirrors.sohu.com/ yum source and epel source</code>
<code>function</code><code>create_yum {</code>
<code>dir</code><code>=</code><code>/etc/yum</code><code>.repos.d/</code>
<code>mv</code><code>$</code><code>dir</code><code>/*.repo</code><code>/tmp</code>
<code>cat</code><code>>> $</code><code>dir</code><code>/sohu</code><code>.repo <<eof</code>
<code>[centos]</code>
<code>name=sohu-centos</code>
<code>baseurl=http:</code><code>//mirrors</code><code>.sohu.com</code><code>/centos/</code><code>\$releasever</code><code>/os/</code><code>\$basearch</code>
<code>gpgcheck=1</code>
<code>enable</code><code>=0</code>
<code>gpgkey=http:</code><code>//mirrors</code><code>.sohu.com</code><code>/centos/rpm-gpg-key-centos-6</code>
<code>[epel]</code>
<code>name=sohu-epel</code>
<code>baseurl=http:</code><code>//mirrors</code><code>.sohu.com</code><code>/fedora-epel/</code><code>\$releasever/\$basearch/</code>
<code>enable</code><code>=1</code>
<code>gpgcheck=0</code>
<code>eof</code>
<code>yum clean all &></code><code>/dev/null</code>
<code>}</code>
<code>function</code><code>download {</code>
<code>yum -y</code><code>install</code><code>wget</code>
<code>cd</code><code>/root</code>
<code>echo</code><code>-e</code><code>"\033[32m=========download about web server source package==========\033[0m"</code>
<code>wget http:</code><code>//mirror</code><code>.esocc.com</code><code>/apache/apr/apr-1</code><code>.4.6.</code><code>tar</code><code>.bz2</code>
<code>wget http:</code><code>//mirror</code><code>.esocc.com</code><code>/apache/apr/apr-util-1</code><code>.5.2.</code><code>tar</code><code>.bz2</code>
<code>wget http:</code><code>//mirror</code><code>.esocc.com</code><code>/apache/httpd/httpd-2</code><code>.4.6.</code><code>tar</code><code>.bz2</code>
<code>wget http:</code><code>//nginx</code><code>.org</code><code>/download/nginx-1</code><code>.4.2.</code><code>tar</code><code>.gz</code>
<code>echo</code><code>-e</code><code>"\033[32m=========download about php or php-fpm soure package========\033[0m"</code>
<code>wget http:</code><code>//xcache</code><code>.lighttpd.net</code><code>/pub/releases/3</code><code>.0.3</code><code>/xcache-3</code><code>.0.3.</code><code>tar</code><code>.bz2</code>
<code>wget http:</code><code>//pecl</code><code>.php.net</code><code>/get/memcache-2</code><code>.2.7.tgz</code>
<code>wget http:</code><code>//downloads</code><code>.php.net</code><code>/stas/php-5</code><code>.4.19.</code><code>tar</code><code>.bz2</code>
<code>echo</code><code>-e</code><code>"\033[32m======download about memcached source package========\033[0m"</code>
<code>wget http:</code><code>//nchc</code><code>.dl.sourceforge.net</code><code>/project/levent/libevent/libevent-2</code><code>.0</code><code>/libevent-2</code><code>.0.21-stable.</code><code>tar</code><code>.gz</code>
<code>wget http:</code><code>//memcached</code><code>.googlecode.com</code><code>/files/memcached-1</code><code>.4.15.</code><code>tar</code><code>.gz</code>
<code>echo</code><code>-e</code><code>"\033[32m======download about mysql source package=========\033[0m"</code>
<code>wget http:</code><code>//mysql</code><code>.llarian.net</code><code>/downloads/mysql-5</code><code>.5</code><code>/mysql-5</code><code>.5.33.</code><code>tar</code><code>.gz</code>
<code>function</code><code>install_apache {</code>
<code>yum -y</code><code>install</code><code>pcre-devel</code>
<code>tar</code><code>xf apr-1.4.6.</code><code>tar</code><code>.bz2</code>
<code>tar</code><code>xf apr-util-1.5.2.</code><code>tar</code><code>.bz2</code>
<code>tar</code><code>xf httpd-2.4.6.</code><code>tar</code><code>.bz2</code>
<code>cd</code><code>/root/apr-1</code><code>.4.6</code>
<code>.</code><code>/configure</code><code>--prefix=</code><code>/usr/local/apr</code><code>&&</code><code>make</code><code>&&</code><code>make</code><code>install</code>
<code>echo</code><code>-e</code><code>"\033[32m=========apr is ok========\033[0m"</code>
<code>cd</code><code>/root/apr-util-1</code><code>.5.2</code>
<code>.</code><code>/configure</code><code>--prefix=</code><code>/usr/local/apr-util</code><code>--with-apr=</code><code>/usr/local/apr</code><code>&&</code><code>make</code><code>&&</code><code>make</code><code>install</code>
<code>echo</code><code>-e</code><code>"\033[32m=========apr-util is ok========\033[0m"</code>
<code>cd</code><code>/root/httpd-2</code><code>.4.6</code>
<code>.</code><code>/configure</code><code>--prefix=</code><code>/usr/local/apache</code><code>--</code><code>enable</code><code>-so --</code><code>enable</code><code>-ssl --</code><code>enable</code><code>-cgi --</code><code>enable</code><code>-rewrite --with-zlib \</code>
<code>--with-pcre --with-apr=</code><code>/usr/local/apr</code><code>--with-apr-util=</code><code>/usr/local/apr-util</code><code>--</code><code>enable</code><code>-modules=most \</code>
<code>--</code><code>enable</code><code>-mpms-shared=all --with-mpm=event &&</code><code>make</code><code>&&</code><code>make</code><code>install</code>
<code>echo</code><code>-e</code><code>"\033[32m=========httpd is ok========\033[0m"</code>
<code>function</code><code>config_apache {</code>
<code>echo</code><code>-e</code><code>"\033[32m frist,associated system path \033[0m"</code>
<code>echo</code><code>"path=/usr/local/apache/bin/:$path"</code><code>></code><code>/etc/profile</code><code>.d</code><code>/httpd</code><code>.sh</code>
<code>source</code><code>/etc/profile</code><code>.d</code><code>/httpd</code><code>.sh</code>
<code>ln</code><code>-sv</code><code>/usr/local/apache/include/</code><code>/usr/include/httpd</code>
<code>echo</code><code>-e</code><code>"\033[32m second,modify configuration files and provided systemv scripts \033[0m"</code>
<code>ip=`</code><code>ifconfig</code><code>|</code><code>grep</code><code>"inet addr"</code><code>|</code><code>grep</code><code>-</code><code>v</code><code>"127.0.0.1"</code><code>|</code><code>awk</code><code>-f:</code><code>'{print $2}'</code><code>|</code><code>cut</code><code>-d</code><code>' '</code><code>-f1`</code>
<code>cp</code><code>/root/httpd-2</code><code>.4.6</code><code>/build/rpm/httpd</code><code>.init </code><code>/etc/rc</code><code>.d</code><code>/init</code><code>.d</code><code>/httpd</code>
<code>sed</code><code>-i</code><code>'/httpd/s/usr\/sbin\/httpd/usr\/local\/apache\/bin\/httpd/g'</code><code>/etc/rc</code><code>.d</code><code>/init</code><code>.d</code><code>/httpd</code>
<code>sed</code><code>-i</code><code>'/^httpd/a\prog=httpd'</code><code>/etc/rc</code><code>.d</code><code>/init</code><code>.d</code><code>/httpd</code>
<code>sed</code><code>-i</code><code>'/^pidfile/s/var\/run/usr\/local\/apache\/logs/g'</code><code>/etc/rc</code><code>.d</code><code>/init</code><code>.d</code><code>/httpd</code>
<code>sed</code><code>-i</code><code>'s/etc\/httpd\/conf\/httpd.conf/usr\/local\/apache\/conf\/httpd.conf/g'</code><code>/etc/rc</code><code>.d</code><code>/init</code><code>.d</code><code>/httpd</code>
<code>sed</code><code>-i</code><code>'$a servername '</code><code>$ip</code><code>':80'</code><code>/usr/local/apache/conf/httpd</code><code>.conf</code>
<code>chkconfig --add httpd</code>
<code>chkconfig --level 35 httpd on</code>
<code>service httpd start</code>
<code>function</code><code>install_nginx {</code>
<code>tar</code><code>xf nginx-1.4.2.</code><code>tar</code><code>.gz</code>
<code>groupadd nginx</code>
<code>useradd</code><code>-r -g nginx nginx</code>
<code>cd</code><code>/root/nginx-1</code><code>.4.2</code>
<code>.</code><code>/configure</code><code>\</code>
<code>--prefix=</code><code>/usr</code><code>\</code>
<code>--sbin-path=</code><code>/usr/sbin/nginx</code><code>\</code>
<code>--conf-path=</code><code>/etc/nginx/nginx</code><code>.conf \</code>
<code>--error-log-path=</code><code>/var/log/nginx/error</code><code>.log \</code>
<code>--http-log-path=</code><code>/var/log/nginx/access</code><code>.log \</code>
<code>--pid-path=</code><code>/var/run/nginx/nginx</code><code>.pid \</code>
<code>--lock-path=</code><code>/var/lock/nginx</code><code>.lock \</code>
<code>--user=nginx \</code>
<code>--group=nginx \</code>
<code>--with-http_ssl_module \</code>
<code>--with-http_flv_module \</code>
<code>--with-http_stub_status_module \</code>
<code>--with-http_gzip_static_module \</code>
<code>--http-client-body-temp-path=</code><code>/var/tmp/nginx/client/</code><code>\</code>
<code>--http-proxy-temp-path=</code><code>/var/tmp/nginx/proxy/</code><code>\</code>
<code>--http-fastcgi-temp-path=</code><code>/var/tmp/nginx/fcgi/</code><code>\</code>
<code>--http-uwsgi-temp-path=</code><code>/var/tmp/nginx/uwsgi</code><code>\</code>
<code>--http-scgi-temp-path=</code><code>/var/tmp/nginx/scgi</code><code>\</code>
<code>--with-pcre &&</code><code>make</code><code>&&</code><code>make</code><code>install</code>
<code>echo</code><code>-e</code><code>"\033[32m=========nginx is ok========\033[0m"</code>
<code>function</code><code>install_mysql {</code>
<code>yum -y</code><code>install</code><code>cmake bison</code>
<code>useradd</code><code>-r mysql</code>
<code>tar</code><code>xf mysql-5.5.33.</code><code>tar</code><code>.gz</code>
<code>cd</code><code>/root/mysql-5</code><code>.5.33</code>
<code>cmake . -dcmake_install_prefix=</code><code>/usr/local/mysql</code><code>-dmysql_datadir=</code><code>/mydata/data</code><code>-dsysconfdir=</code><code>/etc</code><code>\</code>
<code>-dwith_innobase_storage_engine=1 -dwith_archive_storage_engine=1 -dwith_blackhole_storage_engine=1 \</code>
<code>-dwith_readline=1 -dwith_ssl=system -dwith_zlib=system -dwith_libwrap=0 -dmysql_unix_addr=</code><code>/tmp/mysql</code><code>.sock \</code>
<code>-ddefault_charset=utf8 -ddefault_collation=utf8_general_ci</code>
<code>make</code><code>&&</code><code>make</code><code>install</code>
<code>echo</code><code>-e</code><code>"\033[32m=========mysqld is ok========\033[0m"</code>
<code>function</code><code>config_mysql {</code>
<code>echo</code><code>-e</code><code>"\033[32m frist,associated system path,and initialization database \033[0m"</code>
<code>cp</code><code>/usr/local/mysql/support-files/my-large</code><code>.cnf</code><code>/etc/my</code><code>.cnf</code>
<code>cp</code><code>/usr/local/mysql/support-files/mysql</code><code>.server </code><code>/etc/rc</code><code>.d</code><code>/init</code><code>.d</code><code>/mysqld</code>
<code>chown</code><code>-r root.mysql</code><code>/usr/local/mysql/</code>
<code>mkdir</code><code>-pv</code><code>/mydata/data</code>
<code>chown</code><code>-r mysql:mysql</code><code>/mydata/data/</code>
<code>sed</code><code>-i</code><code>'/thread_concurrency/a\ datadir = /mydata/data'</code><code>/etc/my</code><code>.cnf</code>
<code>sed</code><code>-i</code><code>'/datadir/a\ innodb_file_per_table = 1'</code><code>/etc/my</code><code>.cnf</code>
<code>/usr/local/mysql/scripts/mysql_install_db</code><code>--user=mysql --datadir=</code><code>/mydata/data/</code><code>--basedir=</code><code>/usr/local/mysql</code>
<code>service mysqld start</code>
<code>echo</code><code>"path=/usr/local/mysql/bin:$path"</code><code>></code><code>/etc/profile</code><code>.d</code><code>/mysqld</code><code>.sh</code>
<code>source</code><code>/etc/profile</code><code>.d</code><code>/mysqld</code><code>.sh</code>
<code>echo</code><code>"/usr/local/mysql/lib"</code><code>></code><code>/etc/ld</code><code>.so.conf.d</code><code>/mysqld</code><code>.conf</code>
<code>ldconfig -</code><code>v</code><code>|</code><code>grep</code><code>mysql</code>
<code>ln</code><code>-sv</code><code>/usr/local/mysql/include/</code><code>/usr/include/mysqld</code>
<code>chkconfig --add mysqld</code>
<code>chkconfig --level 35 mysqld on</code>
<code>function</code><code>install_php {</code>
<code>yum -y</code><code>install</code><code>libxml2-devel</code><code>bzip2</code><code>-devel curl-devel libmcrypt-devel mhash-devel</code>
<code>tar</code><code>xf php-5.4.19.</code><code>tar</code><code>.bz2</code>
<code>cd</code><code>/root/php-5</code><code>.4.19</code>
<code>.</code><code>/configure</code><code>--prefix=</code><code>/usr/local/php</code><code>--with-mysql=</code><code>/usr/local/mysql</code><code>--with-openssl --with-mysqli=</code><code>/usr/local/mysql/bin/mysql_config</code><code>\</code>
<code>--</code><code>enable</code><code>-mbstring --with-freetype-</code><code>dir</code><code>--with-jpeg-</code><code>dir</code><code>--with-png-</code><code>dir</code><code>--with-zlib --with-libxml-</code><code>dir</code><code>=</code><code>/usr</code><code>\</code>
<code>--</code><code>enable</code><code>-xml --</code><code>enable</code><code>-sockets --with-apxs2=</code><code>/usr/local/apache/bin/apxs</code><code>--with-mcrypt --with-curl \</code>
<code>--with-config-</code><code>file</code><code>-path=</code><code>/etc</code><code>--with-config-</code><code>file</code><code>-scan-</code><code>dir</code><code>=</code><code>/etc/php</code><code>.d --with-bz2 --</code><code>enable</code><code>-maintainer-zts</code>
<code>echo</code><code>-e</code><code>"\033[32m=========php is ok========\033[0m"</code>
<code>function</code><code>config_php {</code>
<code>cp</code><code>/root/php-5</code><code>.4.19</code><code>/php</code><code>.ini-production</code><code>/etc/php</code><code>.ini</code>
<code>function</code><code>install_php_fpm {</code>
<code>.</code><code>/configure</code><code>--prefix=</code><code>/usr/local/php</code><code>--with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd \</code>
<code>--with-openssl --</code><code>enable</code><code>-sockets --</code><code>enable</code><code>-sysvshm --</code><code>enable</code><code>-mbstring --with-freetype-</code><code>dir</code><code>--with-jpeg-</code><code>dir</code><code>--with-png-</code><code>dir</code><code>\</code>
<code>--with-zlib-</code><code>dir</code><code>--with-libxml-</code><code>dir</code><code>=</code><code>/usr</code><code>--</code><code>enable</code><code>-xml --with-mhash --with-mcrypt --with-config-</code><code>file</code><code>-path=</code><code>/etc</code><code>\</code>
<code>--with-config-</code><code>file</code><code>-scan-</code><code>dir</code><code>=</code><code>/etc/php</code><code>.d --with-bz2 --with-curl --</code><code>enable</code><code>-maintainer-zts --</code><code>enable</code><code>-fpm &&</code><code>make</code><code>&&</code><code>make</code><code>install</code>
<code>echo</code><code>-e</code><code>"\033[32m=========php-fpm is ok========\033[0m"</code>
<code>function</code><code>config_php_fpm {</code>
<code>ip2=`</code><code>ifconfig</code><code>|</code><code>grep</code><code>"inet addr"</code><code>|</code><code>grep</code><code>-</code><code>v</code><code>"127.0.0.1"</code><code>|</code><code>awk</code><code>-f:</code><code>'{print $2}'</code><code>|</code><code>cut</code><code>-d</code><code>' '</code><code>-f1`</code>
<code>echo</code><code>"path=/usr/local/php/bin:/usr/local/php/sbin:$path"</code><code>></code><code>/etc/profile</code><code>.d</code><code>/php-fpm</code><code>.sh</code>
<code>source</code><code>/etc/profile</code><code>.d</code><code>/php-fpm</code><code>.sh</code>
<code>mv</code><code>/usr/local/php/etc/php-fpm</code><code>.conf.default</code><code>/usr/local/php/etc/php-fpm</code><code>.conf</code>
<code>sed</code><code>-i</code><code>'s/127\.0\.0\.1/'</code><code>$ip2</code><code>'/g'</code><code>/usr/local/php/etc/php-fpm</code><code>.conf</code>
<code>cp</code><code>/root/php-5</code><code>.4.19</code><code>/sapi/fpm/init</code><code>.d.php-fpm</code><code>/etc/rc</code><code>.d</code><code>/init</code><code>.d</code><code>/php-fpm</code>
<code>chmod</code><code>+x</code><code>/etc/rc</code><code>.d</code><code>/init</code><code>.d</code><code>/php-fpm</code>
<code>service php-fpm start</code>
<code>chkconfig --add php-fpm</code>
<code>chkconfig --level 35 php-fpm on</code>
<code>function</code><code>install_xcache {</code>
<code>tar</code><code>xf xcache-3.0.3.</code><code>tar</code><code>.bz2</code>
<code>if</code><code>[ -d</code><code>/usr/local/php</code><code>];</code><code>then</code>
<code></code><code>cd</code><code>/root/xcache-3</code><code>.0.3</code>
<code></code><code>/usr/local/php/bin/phpize</code>
<code></code><code>.</code><code>/configure</code><code>--</code><code>enable</code><code>-xcache --with-php-config=</code><code>/usr/local/php/bin/php-config</code>
<code></code><code>make</code><code>&&</code><code>make</code><code>install</code>
<code>else</code>
<code></code><code>install_php_fpm</code>
<code></code><code>echo</code><code>-e</code><code>"\033[32m=========xcache is ok========\033[0m"</code>
<code>fi</code>
<code>function</code><code>install_memcache {</code>
<code>tar</code><code>xf memcache-2.2.7.tgz</code>
<code></code><code>cd</code><code>/root/memcache-2</code><code>.2.7</code>
<code></code><code>.</code><code>/configure</code><code>--with-php-config=</code><code>/usr/local/php/bin/php-config</code><code>--</code><code>enable</code><code>-memcache &&</code><code>make</code><code>&&</code><code>make</code><code>install</code>
<code></code><code>echo</code><code>-e</code><code>"\033[32m=========memcache is ok========\033[0m"</code>
<code>function</code><code>install_memcached {</code>
<code>tar</code><code>xf libevent-2.0.21-stable.</code><code>tar</code><code>.gz</code>
<code>tar</code><code>xf memcached-1.4.15.</code><code>tar</code><code>.gz</code>
<code>cd</code><code>/root/libevent-2</code><code>.0.21-stable</code>
<code>.</code><code>/configure</code><code>--prefix=</code><code>/usr/local/libevent</code><code>&&</code><code>make</code><code>&&</code><code>make</code><code>install</code>
<code>echo</code><code>-e</code><code>"\033[32m=========libevent is ok========\033[0m"</code>
<code>cd</code><code>/usr/local/libevent/</code>
<code>echo</code><code>"/usr/local/libevent/lib"</code><code>></code><code>/etc/ld</code><code>.so.conf.d</code><code>/libevent</code><code>.conf</code>
<code>ldconfig -</code><code>v</code><code>|</code><code>grep</code><code>libevent</code>
<code>ln</code><code>-sv</code><code>/usr/local/libevent/</code><code>/usr/include/libevent</code>
<code>cd</code><code>/root/memcached-1</code><code>.4.15</code>
<code>.</code><code>/configure</code><code>--prefix=</code><code>/usr/local/memcached</code><code>--with-libevent=</code><code>/usr/local/libevent/</code>
<code>echo</code><code>-e</code><code>"\033[32m=========memcached is ok========\033[0m"</code>
<code>function</code><code>install_lamp {</code>
<code>install_apache</code>
<code>install_mysql</code>
<code>install_php</code>
<code>install_xcache</code>
<code>function</code><code>config_lamp {</code>
<code>config_apache</code>
<code>config_mysql</code>
<code>config_php</code>
<code>function</code><code>install_lnmp {</code>
<code>install_nginx</code>
<code>function</code><code>config_lnmp {</code>
<code>function</code><code>install_lammp {</code>
<code>install_memcache</code>
<code>install_memcached</code>
<code>function</code><code>config_lammp {</code>
<code>config_php_fpm</code>
<code>function</code><code>install_lnmmp {</code>
<code>function</code><code>config_lnmmp {</code>
<code>echo</code><code>-e</code><code>"\033[32m====make sure yum is ok=========\033[0m"</code>
<code>#create_yum</code>
<code>echo</code><code>-e</code><code>"\033[32m====now,download all package====\033[0m"</code>
<code>#download</code>
<code>echo</code><code>-e</code><code>"\033[32m====install development packages====\033[0m"</code>
<code>#yum -y groupinstall "development tools" "server platform development"</code>
<code></code><code>echo</code><code>-e</code><code>"\033[32m=========you can choice you need install package==========\033[0m"</code>
<code>cat</code><code><<eof</code>
<code>apache|a) </code><code>install</code><code>apache</code><code>source</code><code>package.</code>
<code>nginx|n) </code><code>install</code><code>nginx</code><code>source</code><code>package.</code>
<code>mysql|m) </code><code>install</code><code>mysql</code><code>source</code><code>package.</code>
<code>php|p) </code><code>install</code><code>php</code><code>source</code><code>package.</code>
<code>php-fpm|pf) </code><code>install</code><code>php-fpm</code><code>source</code><code>package.</code>
<code>xcache|x) </code><code>install</code><code>xcahe</code><code>source</code><code>package.</code>
<code>memcache|me) </code><code>install</code><code>memcache</code><code>source</code><code>package.</code>
<code>memcached|md) </code><code>install</code><code>memcached</code><code>source</code><code>package.</code>
<code>lamp) </code><code>install</code><code>lamp</code><code>source</code><code>package.</code>
<code>lammp) </code><code>install</code><code>lammp</code><code>source</code><code>package.</code>
<code>lnmp) </code><code>install</code><code>lnmp</code><code>source</code><code>package.</code>
<code>lnmmp) </code><code>install</code><code>lnmmp</code><code>source</code><code>package.</code>
<code>q|q) quit</code>
<code>read</code><code>-p</code><code>"please choose to install: "</code><code>choice</code>
<code>echo</code><code>-e</code><code>"\033[32m=====start install $choice====\033[0m"</code>
<code>until</code><code>[ $choice == q -o $choice == q ];</code><code>do</code>
<code></code><code>case</code><code>$choice</code><code>in</code>
<code>apache|a) </code>
<code></code><code>install_apache</code>
<code></code><code>config_apache ;;</code>
<code>nginx|n)</code>
<code></code><code>install_nginx ;;</code>
<code>mysql|m) </code>
<code></code><code>install_mysql</code>
<code></code><code>config_mysql ;;</code>
<code>php|p)</code>
<code></code><code>install_php</code>
<code></code><code>config_php ;;</code>
<code>php-fpm|pf)</code>
<code></code><code>config_php_fpm ;;</code>
<code>xcache|x) </code>
<code></code><code>install_xcache ;;</code>
<code>memcache|me)</code>
<code></code><code>install_memcache ;;</code>
<code>memcached|md)</code>
<code></code><code>install_memcached ;;</code>
<code>lamp)</code>
<code></code><code>install_lamp</code>
<code></code><code>config_lamp ;;</code>
<code>lammp) </code>
<code></code><code>install_lammp</code>
<code></code><code>config_lammp ;;</code>
<code>lnmp) </code>
<code></code><code>install_lnmp</code>
<code></code><code>config_lnmp ;;</code>
<code>lnmmp) </code>
<code></code><code>install_lnmmp</code>
<code></code><code>config_lnmmp ;;</code>
<code>q|q) </code>
<code></code><code>break</code>
<code>esac</code>
<code></code><code>read</code><code>-p</code><code>"have any choice agin, if you no,q|q is quit: "</code><code>choice</code>
<code></code><code>done</code>
這個腳本和nginx systemv,memcached system v的腳本以附件的形式上傳了
缺陷:
1)、沒能為nginx提供自動化system v腳本,但是nginx的system v腳本我會以附件的方式上傳,各位博友需要 vim /etc/rc.d/init.d/nginx 然後copy我提供的system v腳本然後添權重限,就可以service nginx start了
2)、也沒能為memcached提供自動化system v腳本,但是memcached的system v腳本會以附件方式上傳,各位博友需要 vim /etc/rc.d/init.d/memcached 然後copy我提供的system v腳本然後添權重限,就可以service memcached start了。
附件下載下傳:lamp&lnmp的腳本 http://pan.baidu.com/s/1mzs8v
nginx和memcached的system v腳本 http://pan.baidu.com/s/1gosdv