软件安装
目录
RPM管理:
管理命令:rpm
已安装的软件
未安装的软件:
安装:
yum安装
yum仓库:
yum管理命令:
第一种方法:搭建yun仓库
第二种方法:搭建yum仓库
配置网络yum
源码安装
安装步骤:
软件分类 RPM包 后缀名都是rpm命名
DEB 包 后缀名都是 .deb命名
源码包(可以理解为tar 包 tar命令去打包 压缩的一个文件)
附带安装程序的软件包
如何读取光盘中的软件 :
重新挂载光盘:
首先创建一个挂载目录mkdir /media/cdrom
然后取消原有的光盘挂载umount /dev/sr0
最后将光盘重新挂载到我们创建的目录上
mount /dev/sr0 /media/cdrom
首先创建挂载目录
然后取消原有的光盘挂载
最后将光盘重新挂载到我们创建的目录上
然后mount查看是否挂载成功
光盘的默认挂载路径 :
按照光盘默认路径进入光盘:
当然可以tab补齐
(cd /run/media/root/CentOS\ 7\ x86_64/)
随后 ll 查看 在进入到里面的Packages里面
依然 cd Packages/ 就进入到光盘中
进来之后ll查看可以看到这些软件
接下来按照修改后的路径进入光盘:
进入之后ll同样可以查看这些软件
软件包:
软件包名里包含 软件名,版本号,修正版本号,发行版本,硬件平台
(管理已安装的软件,命令之后跟软件名)
查看已安装的软件列表:rpm -qa
查看软件是否安装:rpm -q
查看详细版本信息:rpm -qi
查看安装后的文件列表:rpm -ql
查看安装后的帮助文档列表:rpm -qd
查看安装后的配置文件信息:rpm -qc
解释:
查看已安装的软件列表:rpm -qa
也可加管道符统计行数 wc -l
查看软件是否安装:rpm -q
(拿tree来做比喻如果未安装他就会提示你未安装软件包如果安装了就会显示软件包名)
未安装:
已安装:
查看版本详细信息:rpm -qi
查看安装后的文件列表:rpm -ql
(在linux下安装了软件它会生成对应的文件这些文件如何查看就用rpm -ql)
作用:能从它的列表里面大概可以了解到它的文件的分布
查看安装后的帮助文档列表:rpm -qd
(查看安装后的文件列表 rpm -ql 属于统计的一块的查看但是rpm -qd 和下面的 rpm -qc属于单独查看)
查看安装后的配置文件信息:rpm -qc
这些命令能够帮助我们对已经安装的软件所产生的文件是有一个清晰的结构的
有的软件是存在的但是没有安装如果想找到它可以用到 :ll | grep (软件名称)的命令
(管理未安装的软件,命令之后跟软件包名)
【但是一般情况下我们找不到软件包名或者用很麻烦的方法才能找到这个时候输入它的软件名然后 tab 补齐即可】
查看未安装的详细版本信息:rpm -qpi
查看安装后的文件列表:rpm -qpl
查看安装后的帮助文档:rpm -qpd
查看安装后的配置文件信息:rpm -qpc
查看未安装的详细版本信息:rpm -qpi
查看安装后的帮助信息:rpm -qpd
查看安装后的配置文件信息:rpm -qpc
命令:rpm -ivh
选项:
-i 安装
-v 详细信息
-h 以#显示安装进度
-e 卸载
Rpm -e 卸载 (卸载不会有提示)
安装失败 :
(案例)
先安装依赖 再安装源软件
以安装 samba-4.10.4-10.el7.x86_64.rpm为例
安装命令:rpm -ivh (软件包名)
【当安装时出现 “错误” “error”的提示单词时就证明你的操作有错误一定要去排除】
【存在的错误是依赖检测失败 这种存在依赖关系的软件需要先安装依赖软件包再安装源软件包这是一个过程 这个流程必须走】
(案例)安装依赖失败 无限依赖
system-config-kickstart-2.9.7-1.el7.noarch
解决方法:1
忽略依赖关系:命令:--nodeps
(如果忽略依赖关系这个软件也就是安装了但是后期能不能用或者会不会出问题不敢保证)
解决方法:2
yum安装
【yum安装需要在yum仓库写一个配置文件下面会有详细讲解】
(它可以自动解决依赖关系)
命令:yum -y install
(后面跟上出现问题的软件包名)
system-config-kickstart-2.9.7-1.el7.noarch
在安装的过程中它会提示你是否确认安装 -y 的选项意思就是确认直接在命令里面确认了
显示完毕就表示安装成功了
升级软件包:
选项: -F 升级软件包,若未安装则放弃本次操作
(在你没有安装软件包的情况下执行这个选项这个命令系统就会自动放弃这个命令)
-U 升级软件包,若未安装则安装软件包
(在你没有安装软件包的情况下执行这个命令它会把你执行的软件包给安装并升级)
rpm -Fvh ftp:
rpm -Uvh ftp:
强制安装:--force
(覆盖)
举例:删除tree里的/usr/share/doc/tree-1.6.0
rpm -ql tree 看一下 还是显示的 但是它已经不存在了
Cd进到 /usr/share/doc/tree-1.6.0里面试一下 发现进不去就证明它已经不存在了
随后我们执行强制安装在后面加上 --force 显示完成 再进到里面可以进去证明安装完成
更新一个RPM的数据库:--rebuilddb :--initdb
(我们所有的软件都是根据数据库来进行安装的但是数据库有时候也会出现问题 这个时候你需要重建一下你的数据库)但是要在挂载目录的上一级继续操作
操作:命令+选项 --rebuilddb :--initdb
(两个选项任何一个都可以)
rpm --rebuilddb 相当于重新加载一遍数据库
(这是在安装软件的时候报数据库错误的话就可以这样操作)
导入公钥信息至RPM数据库:--import
(如果公钥信息或者是密钥的问题就需要将公钥信息重新导进数据库)
ll查看内容找到RPM-GPG-KEY-CentOS-7这个公钥 用到的就是这个公钥
rpm --import RPM-GPG-KEY-CentOS-7 执行命令即可
反向查找命令是由哪个软件安装的:
命令:rpm -qf(完整的命令路径)
(不知道命令完整路径的话可以输入命令which +命令 先进行查找)
特点:能够自动查找并解决rpm包之间的依赖关系
(可以说它和rpm包一样只不过是管理软件包的一种机制)
配置本地yum源:
更改光盘的挂载路径为/media/cdrom(重新挂载光盘)
以下三个都是可以挂载命令:
yum仓库目录:/etc/yum.repos.d/
(yum仓库文件必须是以.repo结尾的文件)
[test] #仓库名称
name=CentOS7.8 #仓库的描述信息
baseurl=file:///media/cdrom #仓库路径
enabled=1 #该仓库是否启用YUM
gpgcheck=0 #是否对软件进行验证(验签)
(yum仓库可以自己去写一个 有两种方法)
(1:用系统的配置文件)
(2:可以自己去写一个配置文件)
第一种方法:先用系统给的配置文件
首先创建一个目录 叫什么名称都可以
然后把所有的 CentOS开头 repo结尾的目录全放到 linshi里面去 但是保留Media.repo
输入命令:mv CentOS-* linshi
然后把我们刚才要保留的放到当前目录
输入命令:mv linshi/CentOS-Media.repo .
最后ll查看 呈现出来保留目录和我们创建的目录就可以了
我们修改的就是保留目录里的Mwdia
用vim打开它
仓库名称:
仓库的信息描述:
(是一个变量 找的是它的版本号)
(File:// 是一个固定格式)
是否检测这个光盘:
(0 关闭 1开启 )
是否启用这个仓库:
公钥:
然后把0改成1 把1改成0
使用命令 yum list 去验证它 (可以安装的软件列表)
出现这些软件列表就说明yum仓库就搭建成功了
(但是很容易出现一个问题现在的环境搭建好了 经过操作之后 再去安装软件发现安装不了 如果安装不了 需要检查的错误有两个方面 )
2.检查文件有没有修改
安装:yum install
卸载:yum remove
列出软件列表:yum list
查看信息:yum info
查找软件:yum search
系统升级:yum update
清空缓存:yum clean all
建立缓存:yum makecacke
下载软件:vim /etc/yum.conf
修改保留缓存的配置项
进入到/var/cache/yum路径下找到对应的源软件包目录
系统给的配置文件 写完就可以安装
(把 :是否检测这个光盘改成0)
(把:是否启用这个仓库改成1)
完成以上两步就可以了
安装命令:yum -y install
(后面跟上出现问题的软件包名)
问题:循环依赖:system-config-kickstart-2.9.7-1.el7.noarch
【在安装的过程中它会提示你是否确认安装 -y 的选项意思就是确认直接在命令里面确认了】
显示完毕就表示安装成功了
卸载命令:yum remove (软件包名)
输入完命令在过程中会让选择是否继续( y ,n ) 选择y回车继续
然后就删除完毕
(yum仓库文件必须是以.repo结尾的文件)
(.repo结尾的文件是yum仓库文件 放在yum仓库目录下)
首先利用刚才创建的目录 linshi 把所有的目录放进去
命令:mv CentOS-Media.repo linshi ll查看只剩下我们自己创建的linshi目录
(只要这个目录下没有.repo结尾的目录 那么系统就找不到镜像读不到相关的信息)
然后我们自己写一个
仓库名称:【test7】
name= centos-7 (表示这是一个centos7的镜像)
baseurl=file:///mut (表示就放到/mnt下)
gpgcheck=0 (不检测)
enabled=1 (开启)
然后保存退出 ,五行内容写完就达到了初步的操作
我们此时光盘挂载的位置是/media/cdrom下但是我们在仓库里配置文件指定声明的是还需要重新把它挂载到/mntxia下 如果不挂载到/mnt下系统找不到这些软件
首先取消原有的挂载再重新挂载到/mnt下
然后列出软件列表查看一下:yun list 软件列表出来之后可以看到后尾列出的是 test7 就是刚才创建的仓库名称这就没问题了
现在我们就也可以安装软件了
查看信息:yum info
(查看某一个软件的具体信息 用法:后面直接输入软件名即可)
查找软件:yum search
(当记不清软件的确切名称时 就可以查找包含这个字符串的软件系统会全部列出来对应查找即可)
系统升级:yum update
(升级系统的所有软件 yum update 不用加任何名称可以直接使用)
清除缓存:yum clean all
建立缓存:yum makecache
(作用:当我们使用完 yun list的时候会生成很多缓存软件 如果我们有一些操作发生了改动 但是系统还会读的是我们原来的缓存 这个时候就要清空再重新构建一下我们的缓存)
下载软件:vim /etc/yum.conf
修改保留缓存的配置项
进入到/var/cache/yum路径下找到对应的源软件包目录
(怎么去实现:拿现在的这些软件来说都是基于本地来实现的因为它本身就有不需要去下载)
(当要去网上下载的时候我们想要的是把它保留下来 而不是连网安装 如果连网安装网上的软件就直接装到你本地了 但是本地不会有任何的信息)
(如果想将它保存下来就需要去更改一些配置 这个涉及到yum的配置文件 vim /etc/yum.conf文件)
[main]
缓存目录: 版本 ↓ 操作系统版本↓
cachedir=/var/cache/yum/$basearch/$releasever
保留缓存:改成1表示开启
keepcache=0
用哪个源下载的软件就会保存到哪个包里面去
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release
配置ip地址:
Ipv4调整为自动获取
网络模式调整为NAT
使用ifconfig,查看网卡参数 --- 查找inet字段
(首先要有自己的ip地址才能去连网 而且这个ip地址要能连网)
(如果后面有IP地址 并且不是像我们自己去设置的ip地址)
在达到以上的要求后 然后再去pin一下与外网的连通性
怎么去pin pin一下百度 www.baidu.com 如果可以pin通证明虚拟机可以连网
然后去访问网站去下载repo文件 这个网站指的就是镜像站
然后弹出光盘 :rject
(因为我们要测试我们网络yum搭好了没有)
随后执行升级的操作 yun update 看看能不能连网升级软件如果可以就证明我们使用的是网络yum 而不是本地里的东西
把目录里面的东西全部备份掉不要留任何东西
然后修改网卡信息改为nat字段点击确认
然后修改ens33端口 命令如下:
进来之后把
BOOTPROTO=none (如果是=none修改成=dhcp).
ONBOOT=no (=no 修改成 =yes)
在最后写入:
#IPADDR=127.0.0.1
#PREFIX=24
然后wq保存退出
完成上面步骤之后 ifdowm ens33断开端口
而后重启网卡
看一下33网卡 找到inet字段192.168.168.150现在就是我的ip地址
而且我们已经没有基于本地的所有的 erpo文件了 需要从网上下载一个 在浏览器中搜索阿里镜像网站
找到相应的网站
点击进去并找到和我们对应的镜像文件 有很多找到cetos并点击进入
找到相对的cetos7
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
复制到系统里 执行这个命令就可以了
ll点击查看 本地就有了一个镜像的repo文件
下面弹出光盘 输入:eject
随后输入:yum update 系统升级
在过程中会有一个选项让你选择(y,d,n)如果选择y这些软件将会被升级 选择n将不会被升级
(意思就是只是把要升级的软件给算出来统计出来没有直接升级)
只要到了这一步就能确定网络yum已经安装好了
然后再去安装一个 源:yum -y install epel-release 只有安装了这个源 才能安装一下趣味命令
安装完之后ll查看一下我们的目录里就多出了刚才安装的源
如果要安装这个趣味源 Base源 必须在
然后进到软件下载的编辑里把保留缓存开启然后保存退出
然后去安装一个趣味命令测试一下
安装完毕之后就可以用了 输入:sl 测试一下
下面去看一下我的软件有没有被下载保留下来 进入到yum的缓存里去看一下 cd /var/cache/yum/x86_64/7/ ll查看
然后cd到epel里看一下 发现多了很多东西
再cd到packages里看一下 ll查看一下 sl就在这里是一个 rpm包 通常不会被保存 只有将vim /etc/yum.conf里面的保留缓存开启才会被保留下来
(不同于RPM的一种安装机制)
优势:安装较新的软件或版本
灵活定制软件 (根据需求打包所需要的功能)
及时修复软件漏洞 (可以从网上找到各种各样的补丁去运用)
解包:tar
(将源代码释放到指定路径中)
配置:./configure
(根据用户需求选择相应的安装路径,功能,模块等)
可能会报错,需要解决底层环境依赖关系
Rpm -ivh pcre-devel
Rpm -ivh zlib-devel
Yum -y install gcc-c + +
编译:make
(根据配置的环境 借助编译器 将源代码转换为开源执行的二进制文件)
安装:make install
(将编译好的二进制文件 部署到系统中 并设置应用环境)
首先把事先准备好的安装包拖到虚拟机里 并查看大小防止文件丢失
然后把它拖到你的主文件夹里面这样你ll查看主文件夹就可以看到它
添加完软件包之后要进行第一步 解包 tar 软件包是.gz结尾可以调用 -xzf格式输入命令tar -xzf (软件包名)
随后ll查看 发现会生成一个目录
然后进到这个目录里面来完成第二步
:cd nginx-1.12.0
ll查看这个里面有一个特殊的文件是绿色的 它是可执行的文件 这个就是做配置的 (配置比如说:指定它的路径,指定它的连接数量等等可以叫做调优)但是我们现在只涉及它的安装
直接输入:./configure --prefix=/usr/local/nginx
:表示我要将cd拖进来的那个软件也可以叫做网站放到
/use/local下/nginx目录里面去 指定它的安装目录
选项是:--prefix=一个路径
/usr/local :第三方应用程序的安装目录
安装报错了 :然后我们去排除错误
跟C有关的东西 我们去安装c + +
:yum -y install gcc-c++
安装完 C + + 再安装刚才报错的软件
./configure --prefix=/usr/local/nginx
发现还是报错 找到跟 PCRE 相关的依赖关系 并输入
输入:yum -y install pcre- devel 安装好之后再去执行网站
执行之后发现还是报错 压缩的模块出错再去吧zlib安装上
安装好了之后再去执行
这次就不报错了 只要弹出来了证明我们执行的命令就没有错误了 问题解决了
以上叫做配置 :
(根据用户需求选择相应的安装路径、功能模块等 进行一些调优的操作)
命令:./configure
可能会报错,需要解决底层环境依赖关系
Rpm -ivh pcre-devel
Rpm -ivh zlib-devel
Yum -y install gcc-c + +
第三步编译
命令:make
(根据配置的环境 借助编译器 将源代码转换为开源执行的二进制文件)
(:将程序员写的代码转换成电脑可以读懂的二进制代码)
make直接敲 显示离开目录就表示安好了
安装
命令:make install
编译好之后然后再进行安装
同样的 make install 也是直接敲
显示离开目录就是安装好了
现在在系统里面就已经安装好了 但是现在只是安装了还需要我们去运行它进到它的目录下:
cd /usr/local/nginx 进去之后ll查看
它的应用程序一般都放在 bin 或者 sbin 进到sbin里面去
进来之后有一个可执行的文件 这个就是它的应用程序可以直接 ./执行nginx就可以
来看一下上一级目录的分布:
conf :跟配置文件相关的 配置目录
html :网站源 网站首页文件目录
格式:Vim index.html 是正确的启用页面
Logs : 跟日志相关的
Sbin : 跟启动相关的
下面我们来启动执行
查看启动netstat -anptl
下面查看端口的IP地址
左上角应用程序点击打开火狐浏览器 输入端口的IP地址
这就是首页文件的状态访问的就是它
到现在我们的编译安装就完成了也就是源码安装
当然也可以修改内容先返回上一级 然后进入html里面使用vim打开index.html
进来之后找到h1这一行就可以对我们的内容进行修改
以上就是软件安装的三种安装方式