yum( Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。
基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。
yum repository
- 文件服务
- ftp
- web
- file
- client
- 配置文件
- yum仓库
- 缓存元数据文件
- RedHat
- DVD
- rpm包
- 元数据文件
yum仓库中的元数据文件:
- primary.xml.gz
所有RPM包的列表
依赖关系
每个RPM安装生成的文件列表 - filelists.xml.gz
当前仓库中所有RPM包的所有文件列表 - other.xml.gz
额外信息,RPM包的修改日志 - repomd.xml
记录的是上面三个文件的时间戳和校验和 - comps*-.xml:RPM包分组信息
配置文件
ls /etc/yum.conf
cat /etc/yum.conf
[main]核心片段
cachedir=/var/cache/yum/$basearch/$releasever缓存路径
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发行版版本号
tolerant=1能够容错
[main] 表示下方变量只对main片段生效
如何为yum定义repo文件
[Repo_id]
name=Description
baseurl=repo仓库所在的具体路径
ftp://
http://
file:///
enabled={1|0}启用或禁用
gpgcheck={1|0}验证软件包来源的合法性和完整性
gpgkey=
yum安装选项:
yum [options] [command] [package…]
-y:自动回答为yes
–nogpgcheck
-
list:列表
支持glob
all
available可用而尚未安装的
installed已经安装的
updates:可用的升级 -
clean:清理缓存
[ packages|headers|metadata|dbcache|all ] -
repolist: 显示repo列表及其简要信息
[all|enabled|disabled]默认是enabled
yum repolist disabled -
install : 安装
yum install PACKAGE_NAME -
update:升级
update_to:升级到指定版本 -
remove|erase卸载
info:
provides | whatprovides:查看指定的文件或特性是由哪个包安装生成的
如何创建yum仓库:createrepo
RPM安装:
- 二进制格式:
源程序–>编译–》二进制格式
有些特性是编译选定的,如果编译未选定此特性,将无法使用
rpm包的版本会落后于源码包,甚至落后很多
定制:手动编译安装
编译环境,开发环境
开发库,开发工具
编译安装的三步骤:
前提:准备开发环境(编译环境)
安装"Development Tools"和"Development libiraries"
# tar
# cd
./configure
–help
–prefix=/path/to/aomewhere软件安装路径
-sysconfdir=/PATH/TO/CONFFILE_PATH配置文件所在路径
功能:1.让用户选定编译特性 2.检查编译环境
# make 在软件目录下
# make install
编译安装tengine:
Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验。它的最终目标是打造一个高效、稳定、安全、易用的Web平台。
wget http://tengine.taobao.org/download/tengine-2.2.3.tar.gz
tar xf tengine-2.2.3.tar.gz
./configure --prefix=/usr/local/tengine
make
make install
启动
/usr/local/tengine/sbin/nginx
启动配置可以参考
https://www.jianshu.com/p/44d7d6a5590f
1.修改PATH环境变量,以能够识别此程序的二进制文件路径
修改/etc/profile文件
在/etc/profile.d/目录建立一个以.sh为名称后缀的文件,在里面定义export PATH=$PATH:/path/to/somewhere
2.默认情况下,系统搜索库文件的路径/lib,/usr/lib;要增添额外搜寻路径。
在/etc/ld.so.conf.d/中创建以.conf为后缀名的文件,而后把要增添的路径直接写至此文件中
# ldconfig 通知系统重新搜索库文件
-v 显示重新搜寻库的过程
3.头文件:输出给系统
默认: /usr/include
增添头文件搜寻路径,使用链接进行:
/usr/local/tengine/include/ /usr/include/
两种方式:
ln -s /usr/local/tengine/include/* /usr/include/或
ln -s /usr/local/tengine/include /usr/include/tengine
4.man文件路径:安装在–prefix指定的目录下的man目录:/usr/share/man
1.man -M /PATH/TO/MAN_DIR COMMAND
2.在/etc/man.config中添加一条MANPATH
netstat命令
-r:显示路由表
-n:以数字方式显示
-t:建立的tcp连接
-u:显示udp连接
-l:显示监听状态的连接
-p:显示监听指定套接字的进程的进程号及进程名
netstat -tnlp查看端口的监听状态
kill -9 进程号:解除端口占用