linux系统软件安装 ftp gcc编译器安装 源码编译方式安装软件LAMP 安装后的细节处理
linux系统软件安装
1.二进制码软件安装
其软件安装与windows软件安装原理一致,把从网络下载的“二进制码”软件从安装包复制到系统指定目录的过程。
二进制码软件文件----(复制)----》系统指定目录
(windows系统软件默认被复制到C://Program Files目录)
1.1 rpm方式
优点:软件安装非常方便、快速
缺点:软件的各个组成部分非常固定,不灵活。需要手动解决依赖关系。
1.2 yum智能方式
该方式类似360软件管家里边的“一键安装”,较智能
该方式条件:① 可以上网。② 通过配置把(二进制码)软件放到指定位置
好处:方便,一键安装,无需考虑软件依赖。
> yum install php
2. 源码编译方式安装软件
该软件安装本质:从网络下载下来的软件,内部文件内容都是源码内容。
源码文件—(编译工具)—>二进制码文件—(复制)–>系统指定目录
软件安装的时候:
① 把“源码内容”文件 编译为“二进制代码”文件。
② 再把编译后的二进制代码文件复制到系统指定目录。
优点:
该方式安装的软件整体运行速度、效率要非常高
软件内部各个组成部分可以灵活做配置(例如php里边有gd/xml/jpeg/png等各个部分组成,都可以灵活选取)
缺点:安装稍麻烦
六. ftp
ftp: file transfer protocol(文件传输协议)
利用该ftp软件可以使得linux和本机进行文件传输。
找到光盘内部对应的ftp软件:
搜索软件数量 ls | wc
查找到ftp软件 find ./ -name *ftp*
1.安装ftp软件
rpm方式安装(vsftpd)软件:
> rpm -ivh 软件包全名 //安装软件
> rpm -q 软件包名(完整) //query查看软件是否有安装
> rpm -e 软件包名 (完整) //卸载软件
> rpm -qa //query all 查看系统里边全部rpm方式安装的软件
> rpm -qa | grep ftpd(部分名字) //模糊查找指定软件ftpd是否有安装
软件包全名 = 软件包名+软件版本+支持的系统+支持cpu型号+文件后缀
ftp软件安装成功:
查看软件是否有安装:
卸载软件:
通过部分名称 模糊查找一个rpm软件是否有安装:
2. 使用ftp软件
ftp与apache一致,是一个服务软件,走ftp协议,占用21号端口。
启动ftp服务:
> service vsftpd start/stop/restart //控制器ftp服务
> ps –A | grep ftp //查看ftp相关服务进程
开启ftp服务:
查看对应的服务进程:
2.1 关闭防火墙
linux系统默认情况有开启防火墙,这样就会阻止外部用户访问ftp服务器。
关闭linux系统防火墙(执行指令 >setup )。
防火墙后边综括号的“*号”通过敲空格去除,表示关闭防火墙
3.winscp连接ftp服务
通过winscp软件连接ftp服务并使用(类似通过浏览器软件访问apache服务)
winscp连接ftp服务配置:
4. 首次使用ftp失败
解决:关闭SELinux(secure enhanced linux安全增强型linux)。
> vi /etc/selinux/config 完成编辑并reboot重启系统,并启动ftp服务
selinux: secure enhanced linux 安全增强型linux,对系统起着安全保护作用。对软件安装使用会有干扰作用。对使用ftp服务也有干扰作用。
编辑/etc/selinux/config,把enforcing改为disabled:
表示ftp服务没有启动,禁止使用:
普通用户通过winscp使用ftp服务
root用户使用ftp服务,修改(两个)配置文件后 重启服务
(/etc/vsftpd/ftpusers /etc/vsftpd/user_list) 两个配置文件中的root信息前边设置#号
5.上传需要软件到linux系统
给linux的/home/jinnan/tar目录上传文件出错:
解决:给对应的tar目录设置对应的(其他组的)w写权限即可
给tar的其他组用户设置w写权限
七. gcc编译器安装
该gcc (GNU Compiler Collection GNU编译工具集合) 可以实现C语言、C++语言、Java语言由源码向二进制码编译的过程,其是一个工具。
在光盘里边获得需要安装的gcc编译工具:
二进制码软件安装和源码编译方式安装的取舍:
① 软件安装后使用的用户非常少(公司内部人使用ftp、root管理员使用gcc),就采取二进制码方式安装。
② 软件安装完毕使用者非常多、非常巨大(php、apache、mysql等),就采取源码编译方式安装。
1.软件安装依赖
上图的两个功能模块会通过安装下图的ppl解决:
安装gcc 需要的第一个包 cloog-ppl装好了,但是还需要第二个包 cpp-4.4.7-11.el6
上面问题通过安装 mpfr-2.4.1-6.el6解决
最后成功安装 gcc
安装gcc-c++4.4.7
gcc和gcc-c++软件安装的依赖关系:
作者开发一个A软件,需要一个函数库,这个函数库已经在作者当时机器的B软件里边存在,这样A软件就不用重复开发,直接调用B软件对应的函数库即可。如果其他人购买了A软件,那么其在安装的时候就会提示需要先安装B软件(此时购买者的机器还没有B软件),B软件安装后才可以安装该A软件。
安装A软件必须先安装B软件的过程,就称为A对B形成依赖。
以后A软件在任何机器上安装对B软件都会形成依赖。
【A依赖B依赖C依赖D】
① A软件安装前需要先安装BCD等依赖软件:
A------>B------->C-------->D (D->C->B->A是安装顺序)
② 卸载C软件也需要先卸载AB等软件:
C------->B-------->A (A->B->C是卸载顺序)
2.C语言测试gcc工具
八. 源码编译方式安装软件
上面已经显示将需要的软件放到了 tar文件夹中
1.zlib软件安装(第一步先安装)
该zlib可以对许多其他软件的编译代码起着优化、压缩的作用
解压两种压缩包方法:
.tar.gz------------> tar zxvf 压缩包.tar.gz
.tar.bz2-----------> tar jxvf 压缩包.tar.bz2
1.1 源码编译方式安装软件
源码状态------------>二进制码状态----------------->复制到系统指定目录
① ./configure //在解压软件目录内部执行
相关参数配置:软件安装位置(–prefix),依赖软件设置,软件依赖检查等
例如–prefix是设置软件的安装位置
>./configure --help //查看当前软件可以设置的各种参数
② make //编译,根据configure的配置信息生成“二进制文件”
③ make install //把生成的二进制文件复制到系统指定目录(本质与rpm安装软件一致)
下图为举例改变软件安装位置
如果有修改,按照如下方式执行一下
第二步 编译
原先.c的C语言文件会生成.o的二进制文件
1.安装apache软件
./configure配置参数的具体说明:(其中开启全部功能模块并不是所有功能模块都是必须的,像wamp中的apache那样,可以在模块前面加上#进行关闭)
以上\的意思是打回车会另起一行而不是马上操作
make和make install合并执行
2.1 启动apache服务
> /usr/local/http2/bin/apachectl start/stop/restart
上图中 domain name和ServerName 可以到配置中修改一下
去除ServerName前边的#
通过本机浏览器访问apache服务:
3. 软件安装错误、需要重新安装
3.1 已经执行configure操作
》根据正确的参数重新configure即可
3.2 已经执行configure、make操作
》删除解压后的文件目录,重新解压、configure、make
3.3 已经执行configure、make、make install
①删除安装后的文件(有指定安装目录情况/usr/local/http2)
②删除解压后的目录
③重新解压、重新configure、重新make、重新make install
九.安装php
首先安装php依赖软件:xml、gd、jpeg、png、freetype
其次再安装php软件:php
在 apache的配置文件 /usr/local/http2/conf 中打开httpd.conf文件可看到下图
这时候需要重启apache
设置一个php程序文件,查看apache是否可以调用php模块解释代码:
上图说明apache还不知道用什么模块看php程序文件
再访问一次
时区有问题,设置如下
十.安装mysql
1.安装mysql
在解压完mysql并进入后发现没有configure文件,有cmake文件
1.安装cmake(更先进的configure)
到光盘里边获得cmake并安装 ls | grep cmake
rpm -ivh cmake*****
给mysql做cmake配置的时候,检测出有软件依赖没有解决:
mysql具体依赖ncurses-devel的一个软件
处理:① 删除CmakeCache.txt
② 安装ncurses-devel软件(在光盘里边寻找安装)
③ 重新执行cmake指令
下图为设置安装时出现错误
找到并安装依赖软件:
重新执行cmake
2. 安装后的配置
给mysql复制一个medium.cnf配置文件到指定目录:
上图中(数据库用户信息不小心删除光了)指的是在 mysql 下文件夹bin下使用 ./mysql命令时,进入数据库mysql,里面的user表上的用户都被删除了
上图中最后一个指令末尾&符号表示在后台运行,不显示在终端窗口
下图中把主人改成root,也就是不让人随便执行上图中的初始化mysql数据库操作,因为–user已经变成root了
启动mysql服务并查看进程:
上图与windows cmd模式下操作mysql数据库方式一样
use mysql数据库操作user数据表,给mysql数据库设置用户名和密码:
上图中Password=password(密码)是mysql的函数,类似php中的md5(密码)
十一.LAMP安装后的细节处理
1.apache配置虚拟主机的目录的细节
虚拟主机对应的目录,每个目录都需要开启”其他组的x权限”否则提示forbidden,禁止访问
在本机的hosts文件里边做域名解析工作:
linux的ip地址 web.ecshop2.com
2.开机自动启动服务,不然还要手动开,有可能会漏掉
服务器每次启动起来后会打开文件(/etc/rc.d/rc.local)并依次执行内部的每条指令
就可以把需要开启服务的指令放到该文件中,就会有“开启自动启动服务”效果
服务器重启、关机指令:
>reboot 重启
>poweroff 关机