1. Fedora/CentOS/RHEL
1.1 RPM包
RPM(原来指Ret Hat Package Manager),现在是(RPM Package Manager),Red Hat公司提出,被众多Linux发行版所采用。
rpm包也称二进制包,无需编译,可以直接使用,但无法设定个人设置、开关功能,不能调试。
示例:软件包名-版本号-enterprise linux发布版本-系统平台.rpm
-
mysql-community-common-5.7.12-1.el7.x86_64.rpm
-
zip-3.0-11.el7.x86_64.rpm
1.2 YUM包管理器
1.2.1 YUM
YUM,全称是Yellow Dog Updater, Modified,用于在Fedora、CentOS和RedHat中的Shell前端软件包管理器。
- 基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装;
- 可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无需繁琐地一次次下载、安装。
- YUM本地源
$ sudo sed -e 's|^mirrorlist=|#mirrorlist=|g' \
-e 's|^#baseurl=http://mirror.centos.org|baseurl=https://mirrors.tuna.tsinghua.edu.cn|g' \
-i.bak \
/etc/yum.repos.d/CentOS-*.repo
$ sudo yum clean all
$ sudo yum makecache
- 使用YUM管理RPM包
# 安装
# yum install 自动确认 包名
#
# 全新安装
$ yum -y install httpd vsftpd
# 重新安装,可能缺少文件时需要
$ yum -y reinstall httpd
$ systemctl start httpd
$ systemctl stop firewalld
$ systemctl disable firewalld
$ systemctl stop httpd
# 升级软件
$ yum -y update httpd
# 升级源和所有软件
$ yum update && yum upgrade
# 查询
# 不写包名会显示所有的可用包,写包名则只会列出已经安装的包
$ yum list [package-name]
# 卸载
$ yum -y remove httpd
$ yum autoremove
1.2.2 RPM
RPM,全称是RPM Packet Manager,安装的时候需要先找到包
# -i:install
# -v:verbose,安装过程
# -h:百分比
$ rpm -ivh wget-1.14-15.el7.x86_64.rpm
# -q:查询,可以用于安装后验证
$ rpm -q wget-1.14-15.el7.x86_64.rpm
# 删除
$ rpm -evh wget-1.14-15.el7.x86_64.rpm
相比于YUM,RPM无法自动处理包之间的依赖关系。
2. Ubuntu
2.1 apt
$ apt install pkg-name
$ apt remove pkg-name
$ apt update pkg-name
2.2 dpkg
3. 源码包管理
用户需要自己编译包。可以调试并设置、打开关闭功能,配置比较复杂,但是如果RPM包管理器没有的话只能自己编译。例如:nginx-1.8.1.tar.gz
、tengine-2.3.2.tar.gz
。tengine是nginx的变体,由淘宝技术团队做的。
- 准备环境
- 解压、配置、编译、安装
$ useradd www
$ tar -xvf tengine-2.3.2.tar.gz
$ cd tengine-2.3.2
$ ./configure --user=www --group=www --prefix=/user/local/nginx
$ make
$ make install
- 启动测试
# 启动之前确保80端口未被占用,前面有httpd,可能冲突,请关闭标签:httpd,安装,管理,rpm,yum,Linux,软件,RPM,YUM From: https://blog.51cto.com/u_12639411/6051010
$ /usr/local/nginx/sbin/nginx
$ systemctl stop firewalld
# 浏览器查看http://127.0.0.1