若天明 发表于 2015-1-14 20:17:54

带来一篇Centos7最小化装置 编译lamp情况

如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!centos7默许的php是5.5,mysql已变成mariadb,假如想要自界说的设置,必要本人手动来编译设置.以下步调做过操纵考证.
1、装置centos7选择基础装置,设置完收集后起首要先封闭firewall:
中断firewall
#systemctlstopfirewalld.service
克制firewall开机启动
#systemctldisablefirewalld.service
2、装置iptables防火墙
yum体例装置iptables
#yuminstalliptables-services
编纂防火墙设置文件
vi/etc/sysconfig/iptables
增加上面三句话到默许的22端口这条划定规矩的上面
-AINPUT-mstate--stateNEW-mtcp-ptcp--dport80-jACCEPT
-AINPUT-mstate--stateNEW-mtcp-ptcp--dport3306-jACCEPT
-AINPUT-mstate--stateNEW-mudp-pudp--dport161-jACCEPT
最初重启防火墙使设置失效
#systemctlrestartiptables.service
设置防火墙开机启动
#systemctlenableiptables.service

3,封闭SELINUX
编纂selinux的设置文件
vi/etc/selinux/config
正文失落上面两行
#SELINUX=enforcing
#SELINUXTYPE=targeted
增添一行
SELINUX=disabled
保留,封闭
ESC
:wq
重启体系
shutdown-rnow

4,centos7最小化装置没有wget工具,这个我们前面下源码会用到,以是先装置这个
yuminstall-ywget

5,增添第三方的yum源,有些坏境必要的软件,centos自带的源里,我们增添两个源,便利前面的yum装置坏境必要的组件,要纷歧个一个的往下源码编译太甚贫苦,我这里只增添了epel和rpmforge两个源
第一步,源文件假如抵触,必要有个优先级,以是先装置yum-priorities
yuminstallyum-priorities
第二步,设置CentOS默许yum源的优先级为最高
cd/etc/yum.repos.d/#进进yum源目次
viCentOS-Base.repo#在、、组上面增加priority=1,在、组上面增加priority=2
第三步,装置epel
#rpm-ivhhttp://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm--replacefiles
#rpm--import/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
#vi/etc/yum.repos.d/epel.repo
修正epelyum源优先级,priority=11
第四步调,装置rpmforgeyum源
#wgethttp://apt.sw.be/redhat/el7/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
#wgethttp://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
#rpm--importRPM-GPG-KEY.dag.txt
#rpm-ivhrpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
#vi/etc/yum.repos.d/rpmforge.repo
修正rpmforgeyum源优先级,priority=12


6,yumupdate

7,yum装置apache
#yuminstall-yhttpdhttpd-devel
启动apache
systemctlstarthttpd.service
设置为自启动
systemctlenablehttpd.service


8,yum装置mysql
#wgethttp://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
#rpm-ivhmysql-community-release-el7-5.noarch.rpm
#yuminstallmysql-community-server
乐成装置以后重启mysql办事
#systemctlstartmysqld.service
设置为自启动
#systemctlenablemysqld.service
设置mysql暗码
#mysql-uroot
mysql>SETPASSWORD=PASSWORD(123456);
启动mysql
systemctlstopmysqld.service
增添到自启动
systemctlstartmysqld.service
由于编译php必要用到mysql的一些库文件以是还必要装置mysql库
yuminstall-ymysql-devel

9,一次性yum装置编译php所需的组件,这些都是在一个毛病一个毛病的实验后,为懂得决毛病装置的,不要嫌多.
yuminstall-ygcccmakemakegcc-c++apr*automakeautoconflibxml2libxml2-developensslopenssl-develcurl*libjpeg*libpng*freetype*zlib-develzipunzipgzipncurses*pcre-develbzip2*gdgd-develkernelkeyutilspatchperlkernel-headerscompat*mpfrcppglibclibgomplibstdc++-develpplcloog-pplkeyutils-libs-devellibcom_err-devellibsepol-devellibselinux-develkrb5-develzlib-devellibXpm*php-commonphp-gdncurses*libtool*patchlibmcryptlibmcrypt-develmcryptmhash--skip-broken

10,下载装置php
我是在root用户下间接装置的,以是进进root家目次
#cd/root
下载最新的php-5.3.29
#wgethttp://cn2.php.net/get/php-5.3.29.tar.gz/from/this/mirror
解紧缩
#tar-zxvfmirror
进进php目次
#cdphp-5.3.29
入手下手编译
#./configure--prefix=/usr/local/php--with-config-file-path=/usr/local/php/etc--with-apxs2=/usr/bin/apxs--with-mysql=/usr/bin--with-mysqli=/usr/bin/mysql_config--with-iconv-dir=/usr/local--with-jpeg-dir--with-freetype-dir--with-jpeg-dir--with-png-dir--with-zlib--with-libxml-dir=/usr/bin--enable-xml--disable-rpath--enable-magic-quotes--enable-safe-mode--enable-bcmath--enable-shmop--enable-sysvsem--enable-inline-optimization--with-curl--with-curlwrappers--enable-mbregex--enable-ftp--enable-mbstring--with-mcrypt--with-gd--enable-gd-native-ttf--with-openssl--with-mhash--enable-pcntl--enable-sockets--with-xmlrpc--enable-zip--enable-soap--without-pear--with-gettext--with-zlib--enable-pdo--with-pdo-mysql

注:假如呈现Cannotfindlibmysqlclient的毛病,就find下libmysqlclient*,找到libmysqlclient.so文件,做一个软毗连放到/usr/lib下就行了
#find/-namelibmysqlclient*
你找的目次大概和我的分歧,以你的为准创建链接
#ln-s/usr/lib64/mysql/libmysqlclient.so.18.1.0/usr/lib/libmysqlclient.so

#make
#makeinstall

10,编纂设置
#vi/etc/httpd/conf/httpd.conf
一,增添AddTypeapplication/x-httpd-php.php.php3.php5.phtml
二,网站跟目次设置修正AllowOverrideAll
三,修正撑持文件范例
<IfModuledir_module>
DirectoryIndexindex.htmlindex.htmdefault.htmldefault.htmindex.phpdefault.phpu.php
</IfModule>

拷贝php设置文件到设置目次
#cpphp.ini-production/usr/local/php/etc/php.ini
修正php.ini
#vi/usr/local/php/etc/php.ini
增添时区设置
date.timezone=Asia/Shanghai
其他优化设置,能够自行配制
保留加入后重启动体系

别的,必要申明的,在编译过程当中,总结碰到的成绩,经常都是以下缘故原由
1,装置了步伐,可是没有装置库,如装置了mysql,可是没有装置mysql-devel,装置了gd,可是没有装置ge-devel等等,这些在编译过程当中经常后必要挪用一些库文件时分呈现毛病,假如你的电脑里没有毛病标明的以lib开首的*.so文件,那末年夜局部都是这个缘故原由
2,良多文件装置在了/usr/lib64下而不是/usr/lib下,编译历程经常主动搜刮/usr/lib,假如这里没有响应文件就会报错,假如经由查找你装置了响应文件,那末你只必要租个毗连到/usr/lib下就能够
3,php编译选项不合错误,最多见的如--with-apxs2=/usr/bin/apxs--with-mysql=/usr/bin,这两个选项各个情况大概有所分歧,你必要依据本人的情况来设置地位,而不克不及一味的随着网上的文章走.

再另:经常使用的一些linux下的下令必定要学会,这对你定位毛病,办理成绩起决意感化
查找源yum源
#yunsearchname
显现yum已装置软件的信息
#yuminfoname
显现软件的装置路径,yum装置的也能够如许检察
#whereisname,
大概#rpm-qalname
查找文件
#find/-namephp*
检察文件属于哪一个软件包
#rpm-qfname
检察软件包都装置到了那些目次下
#rpm-qlaname
检察文件所属于的软件包把包内一切文件都装置在了那些目次下
#rpm-qlfname
     装置一个包
rpm-ivhname/url
晋级一个包
rpm-Uvh
移走一个包
#rpm-e
--replacefiles用于掩盖装置
#rpm-ivhhttp://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm--replacefiles
显现目次或文件
#ls-lp|less
l:显现具体
p:在每一个文件名后附上一个字符以申明该文件的范例,“*”暗示可实行的一般文件;“/”暗示目次;“@”暗示标记链接;“|”暗示FIFOs;“=”暗示套
接字(sockets)。
less:分屏
显现某一文件或目次
#ls-ldpname*
删除文件
#rm-ffilename
wget断点续传
#wget-curl
编纂文件
#viname
翻开文件时分是指令行形式
a进进编纂形式
o进进编纂形式并增添空行
ESC切换编纂形式到指令行形式
指令行形式下
dd删除整行
yy复制整行
     /name+回车搜刮制订词
    :setnu增添行号
    wq和:x是存盘加入
    :q!强迫加入不保留
欢迎大家来到仓酷云论坛!

莫相离 发表于 2015-1-15 18:58:33

带来一篇Centos7最小化装置 编译lamp情况

前排顶,很好!

透明 发表于 2015-1-18 21:52:38

对我们学习操作系统有很大的帮助,加深我们对OS的理解。?

爱飞 发表于 2015-1-27 22:18:10

尽量不要提问纯属是扯蛋.学习Linux特别是自己一个人初学入手的时候没人教很困难.当然如果可以的话平时多去买些Linux书...对学习Linux很有帮助.

再现理想 发表于 2015-2-5 16:10:42

在学习linux的工程中,linux学习方法有很多种,这里是小编的学习心得,给大家拿出来分享一下。

第二个灵魂 发表于 2015-2-12 23:25:11

任何一个叫做操作系统的东西都是这样子构成的:内核+用户界面+一般应用程序。

若天明 发表于 2015-3-3 12:05:41

眼看这个学期的Linux课程已经告一段落了,我觉得有必要写一遍心得体会来总结一下这学期对着门课程的学习。

若相依 发表于 2015-3-11 11:58:55

对我们学习操作系统有很大的帮助,加深我们对OS的理解。?

灵魂腐蚀 发表于 2015-3-18 18:12:25

熟悉系统的基本操作,Linux的图形界面直观,操作简便,多加上机练习就可熟悉操作,在Linux下学习办公软件等常用软件。

只想知道 发表于 2015-3-26 16:43:16

任何人都可以根据自己的喜好来定制适合自己的操作系统,Linux?是抢占式多任务多用户操作系统.
页: [1]
查看完整版本: 带来一篇Centos7最小化装置 编译lamp情况