天天看點

LAMP&LNMP自動化安裝腳本

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)--&gt;

mysql--&gt;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>&gt;&gt; $</code><code>dir</code><code>/sohu</code><code>.repo &lt;&lt;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 &amp;&gt;</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>&amp;&amp;</code><code>make</code><code>&amp;&amp;</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>&amp;&amp;</code><code>make</code><code>&amp;&amp;</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 &amp;&amp;</code><code>make</code><code>&amp;&amp;</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>&gt;</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 &amp;&amp;</code><code>make</code><code>&amp;&amp;</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>&amp;&amp;</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>&gt;</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>&gt;</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 &amp;&amp;</code><code>make</code><code>&amp;&amp;</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>&gt;</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>&amp;&amp;</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 &amp;&amp;</code><code>make</code><code>&amp;&amp;</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>&amp;&amp;</code><code>make</code><code>&amp;&amp;</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>&gt;</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>&lt;&lt;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了

轉自http://litaotao.blog.51cto.com/6224470/1299117

繼續閱讀