香港服务器yum命令用法及源码的编译
何为yum?
yum是rpm的前端程序,可解决软件包相关依赖性,可在多个库之间定位软件包,是up2date 的替代工具。
1.命令格式:
yum [options] [command] [package …]
2.yum客户端配置文件:
公共配置文件:/etc/yum.conf 为所有仓库提供公共配置
指定仓库配置文件,格式如下:/etc/yum.repos.d/*.repo
3.command的分类及具体用法:
1)显示仓库列表(所有all、已激活enabled、未激活disabled)和程序包(已安装installed、可安装available、可更新updates)
显示仓库列表:
yum repolist [all|enabled|disabled]
显示程序包:
yum list(默认为all)
yum list [all | glob_exp1] [glob_exp2] […]
yum list {available|installed|updates} [glob_exp1]
2)安装程序包
install 包名 1 包名2………….
reinstall 包名 1 包名2 ……….
localinstall 包名 1 包名2………. 本地安装,指定rpm包,其所依赖的包用yum的repo来装
>>>用法:
安装程序包时常常搭配下列几个选项使用
–nogpgcheck 当次安装时不检测gpgkey
-y 自动回答”yes” (常用于脚本中屏蔽交互)
-q 静默模式,什么也不显示
注意:同时使用-y -q时,不能使用-yq 或-qy,正确格式为 -y -q或 -q -y
3)升级程序包
update 包1 包2……………..
localupdate rpmfile1 rpmfile2…….. 升级本地程序包(一般用update替代)
downgrade package1 [package2] […] (降级)
check-update 检查可用升级
4)卸载程序包
remove|erase 包名
5)查看程序包信息
info […..]
6)查看某文件由哪个程序包所提供(能够显示相关文件详细信息,包括所属包,仓库,简介)
provides|whatprovides filename/command (”文件名” 支持通配符)
7)本地缓存
yum clean [ packages | metadata | expire-cache | rpmdb | plugins | all ] 清除缓存
makecache 构建缓存
常见用法:创建仓库后,要先清理本地缓存,再显示仓库列表
8)搜索(常在排错中使用)
search string1 string2………
deplist 包名 查看指定包所依赖的功能
9)查看yum事务历史及日志
history [info|list|packages-list|packages-info| summary|addon-info|redo(翻反撤销)|undo(撤销)| rollback(回滚)|new|sync|stats]
yum history info [number] 查看指定编号具体信息
yum history undo [number] 撤销操作
日志:/var/log/yum.log(同时配合多窗口和tial -f 可实现日志监控)
10)包组管理
grouplist 查看所有包组
groupinfo group1 group2……….
groupinstall group1 group2……….
groupremove group1 group2………. 只删除包组中的包,不删除依赖包,可以用yum history undo 操作数字来删除包含依赖包。
groupupdate group1 group2………. 更新包组中的包
–disablerepo=repoidglob
–enablerepo=repoidglob
createrepo /app/magedudvd 在/app/magedudvd/下创建 repodata 从而将指定目录创建为repo仓库。
4.options:
–nogpgcheck:禁止进行gpg check
-y: 自动回答为“yes”
-q:静默模式
–disablerepo=repoidglob:临时禁用此处指定的repo
–enablerepo=repoidglob:临时启用此处指定的repo
–noplugins:禁用所有插件
二:源码编译(httpd)
步骤一、下载httpd最新版本的源码包并解包
步骤二、安装包组Development tools(第一次编译会缺少gcc等必要的包,可以用此包组来安装这些必要的包)
步骤三、第一次编译源码,难免会对编译步骤有些生疏,这时可以通过查看源码包下的INSTALL(可以显示快速安装步骤,如图1)、README(功能介绍等)来熟悉安装步骤和相关信息:
图1
步骤四、 ./configure
通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的指定以及makefile.in文件生成makefile
注意:第一次编译可能会出现错误,解决方法为:
按照错误提示,用yum search string来查找所需包的名字并安装直到./configure能够正常安装,万事开头难,要学会耐心排错偶O(∩_∩)O~~
如图2,我们刚开始就遇见了缺少apr包这个问题,需要安装apr-devel
图2
技术要点:./configureh 通过 ./configure -h 可获取帮助信息,包括httpd生成文件默认目录的设置或其他设置所需选项,以下为./configure 几个常用选项:
–prefix=DIR 设置安装路径(程序家目录,配置文件、二进制文件等常见文件都在此目录下)(系统默认为/usr/local/apache2)
–sysconfdir=DIR 设置配置文件安装路径(系统默认为/usr/local/apache2/etc)
–bindir=DIR 设置程序二进制文件安装路径(系统默认路径为/usr/local/apache2/bin)
步骤五:根据makefile文件,构建应用程序并复制文件到相应路径
步骤六、启动服务
注:第一次安装并开启httpd服务后一般会出现以下两种错误>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
错误一:如图3错误,要求将ServerName设为全局变量,这时我们需要进入配置文件将这行取消注释,如图4
图3
图4
错误二:如图五,80端口被占用,说明下同原有httpd服务已开,占用此端口,这时需要先关闭系统的httpd服务,再打开新安装的httpd服务
图五
此步骤完成后,我们可以可以在浏览器输入本机ip地址来测试是否能够显示主页信息,如出现网页一直加载的情况,就有可能是防火墙在捣鬼啦
步骤七:关闭防火墙
CentOS7:
systemctl is-active firewalld.service 查看当前是否开启
systemctl stop firewalld.service 当前关闭
systemctl is-enabled firewalld.service 查看系统启动时是否开启
systemctl disable firewalld.service 关闭系统启动时开启
CentOS6
service iptables stop
查看防火墙
iptables -vnL
查看网络监听情况(看80端口是否开启)
netstat -ntl
步骤八、最后测试
打开浏览器—>输入本机ip号—>测试成功
一诺网络香港免备案专区,提供「香港增强VPS」和「香港特惠VPS」两种类型的高可用弹性计算服务,搭载新一代英特尔®至强®铂金处理器,接入CN2低延时高速回国带宽线路,网络访问顺滑、流畅。机房网络架构采用了BGP协议的解决方案可提供多线路互联融合网络,使得不同网络运营商线路的用户都能通过最佳路由实现快速访问。香港云VPS低至29元/月,购买链接:https://www.enuoidc.com/vps.html?typeid=2