一.Rpm包管理
1.使用lsblk(list block devices)或者df 查看块状设备的信息
这个rom类型就是光盘设备,名字叫做sr0,4.2G镜像文件大小,目前还未挂载到linux目录中
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sr0 11:0 1 4.4G 0 rom
2.mount挂载
3.查看镜像内文件
ls /mnt/Packages这个目录下能找到你需要的软件包名字,即可去安装它
4.利用本地光盘去装vim
卸载原有的vim
[root@localhost ~]# yum -y remove vim
拷贝到/opt目录下
[root@localhost opt]# cp /mnt/Packages/vim* /opt
[root@localhost opt]# ll /opt
total 8812
-rw-r--r-- 1 root root 6205496 Nov 12 19:44 vim-common-7.4.629-7.el7.x86_64.rpm
-rw-r--r-- 1 root root 1105904 Nov 12 19:44 vim-enhanced-7.4.629-7.el7.x86_64.rpm
-rw-r--r-- 1 root root 11144 Nov 12 19:44 vim-filesystem-7.4.629-7.el7.x86_64.rpm
-rw-r--r-- 1 root root 453600 Nov 12 19:44 vim-minimal-7.4.629-7.el7.x86_64.rpm
-rw-r--r-- 1 root root 1239584 Nov 12 19:44 vim-X11-7.4.629-7.el7.x86_64.rpm
安装
[root@localhost opt]# rpm -ivh vim-*
5.取消挂载
[root@localhost ~]# umount /mnt
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sr0 11:0 1 4.4G 0 rom
二.Rpm处理依赖关系
rpm安装,需要手动处理依赖,安装过程如下
第一个依赖报错
[root@localhost opt]# rpm -ivh vim-enhanced-7.4.629-7.el7.x86_64.rpm
error: Failed dependencies:
vim-common = 2:7.4.629-7.el7 is needed by vim-enhanced-2:7.4.629-7.el7.x86_64
依次解决依赖
[root@localhost opt]# rpm -ivh vim-common-7.4.629-7.el7.x86_64.rpm
Preparing... ################################# [100%]
package vim-common-2:7.4.629-8.el7_9.x86_64 (which is newer than vim-common-2:7.4.629-7.el7.x86_64) is already installed
[root@localhost opt]# rpm -ivh vim-filesystem-7.4.629-7.el7.x86_64.rpm
Preparing... ################################# [100%]
package vim-filesystem-2:7.4.629-8.el7_9.x86_64 (which is newer than vim-filesystem-2:7.4.629-7.el7.x86_64) is already installed
三.查询某个软件安装情况
语法:rpm -qa | grep 软件名称
选项:
-q:查询,query
-a:全部,all
-i :显示软件包的概要信息
-v :显示安装详细过程
-h:显示安装进度
--force :强制操作
--nodeps:忽略依赖关系(不好用,容易出错)
1.查询机器上是否安装了某个软件
[root@localhost ~]# rpm -qa |grep vim
vim-common-7.4.629-8.el7_9.x86_64
vim-minimal-7.4.629-7.el7.x86_64
vim-filesystem-7.4.629-8.el7_9.x86_64
vim-enhanced-7.4.629-8.el7_9.x86_64
[root@localhost ~]# rpm -qa lrzsz
lrzsz-0.12.20-36.el7.x86_64
2.显示软件包的概要信息
[root@localhost ~]# rpm -qi lrzsz
Name : lrzsz
Version : 0.12.20
Release : 36.el7
Architecture: x86_64
Install Date: Mon 13 Nov 2023 04:03:39 AM CST
Group : Applications/Communications
Size : 184846
License : GPLv2+
Signature : RSA/SHA256, Fri 04 Jul 2014 11:35:32 AM CST, Key ID 24c6a8a7f4a80eb5
Source RPM : lrzsz-0.12.20-36.el7.src.rpm
Build Date : Tue 10 Jun 2014 07:29:11 AM CST
Build Host : worker1.bsys.centos.org
Relocations : (not relocatable)
Packager : CentOS BuildSystem <http://bugs.centos.org>
Vendor : CentOS
URL : http://www.ohse.de/uwe/software/lrzsz.html
Summary : The lrz and lsz modem communications programs
Description :
Lrzsz (consisting of lrz and lsz) is a cosmetically modified
zmodem/ymodem/xmodem package built from the public-domain version of
the rzsz package. Lrzsz was created to provide a working GNU
copylefted Zmodem solution for Linux systems.
3.卸载某个软件
语法: rpm -e 软件的名称(建议写完整的名称,通过-qa 查询)
[root@localhost ~]# rpm -qa |grep vim
vim-common-7.4.629-8.el7_9.x86_64
vim-minimal-7.4.629-7.el7.x86_64
vim-filesystem-7.4.629-8.el7_9.x86_64
vim-enhanced-7.4.629-8.el7_9.x86_64
[root@localhost ~]# rpm -e vim-enhanced
4.根据文件名查询属于哪个软件包
rpm -qf 文件名
5.列出该软件包都生成了什么文件
rpm -ql 文件名
四.Rpm软件包升级
语法:rpm -Uvh 完整的安装包路径
选项:
-U:upgrade,升级
-v:表示显示进度条
-h:表示以#形式显示进度条
1.获取rpm http://rpm.pbone.net/ ,搜索 firefox
2.查看默认版本
[root@localhost ~]# rpm -qa firefox
firefox-52.7.0-1.el7.centos.x86_64
3.在linux中下载,如果linux下载太慢,可以windows下载好,上传到linux
wget http://ftp.pbone.net/mirror/ftp.scientificlinux.org/linux/scientific/7.2/x86_64/updates/security/firefox-52.7.3-1.el7_5.x86_64.rpm
4.升级firefox软件
[root@localhost ~]# rpm -Uvh firefox-52.7.3-1.el7_5.x86_64.rpm
warning: firefox-52.7.3-1.el7_5.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID 192a7d7d: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:firefox-52.7.3-1.el7_5 ################################# [ 50%]
Cleaning up / removing...
2:firefox-52.7.0-1.el7.centos ################################# [100%]
5.查询版本
[root@localhost ~]# rpm -qa firefox
firefox-52.7.3-1.el7_5.x86_64
五.源码编译淘宝nginx
1.源码包地址:The Tengine Web Server (taobao.org)
[root@localhost opt]# wget https://tengine.taobao.org/download/tengine-2.4.0.tar.gz
2.解压缩,并进入该目录
[root@localhost opt]# tar -zxvf tengine-2.4.0.tar.gz
[root@localhost opt]# ll
total 2896
drwxrwxr-x 13 root root 309 Feb 8 2023 tengine-2.4.0
-rw-r--r-- 1 root root 2962423 Nov 6 20:35 tengine-2.4.0.tar.gz
[root@localhost opt]# cd tengine-2.4.0
[root@localhost tengine-2.4.0]# ls
AUTHORS.te CHANGES CHANGES.te configure docs LICENSE modules README.markdown tests
auto CHANGES.cn conf contrib html man packages src THANKS.te
3.开始编译、安装,注意先进行编译参数的配置
nginx默认不支持https证书功能
需要linux系统支持https的模块,就是安装openssl模块
[root@localhost tengine-2.4.0]#yum -y install openssl openssl-devel pcre pcre-devel zlib zlib-devel
[root@localhost tengine-2.4.0]#./configure --prefix=/opt/my_nginx --with-http_stub_status_module
这步如果报错的话是因为缺少环境变量,解决方式如下:
yum -y install gcc
yum -y install gcc-c++
4.开始编译安装
[root@localhost tengine-2.4.0]# make && make install
###当你的make命令执行成功后,自动执行make install命令
5.检查你安装的nginx是否生成
编译安装的nginx全在这个目录下了
6.可以用该目录下的二进制nginx命令,启动淘宝nginx
[root@localhost my_nginx]# /opt/my_nginx/sbin/nginx
7.可以用浏览器发送http请求,访问淘宝nginx
8.验证该nginx的信息
如果要删除直接干掉这个目录即可
[root@localhost my_nginx]# curl -I 192.168.106.129
HTTP/1.1 200 OK
Server: Tengine/2.4.0
Date: Sun, 12 Nov 2023 23:04:03 GMT
Content-Type: text/html
Content-Length: 555
Last-Modified: Sun, 12 Nov 2023 22:50:58 GMT
Connection: keep-alive
ETag: "655156d2-22b"
Accept-Ranges: bytes