Linux中安装软件的三种方式
与windows类似,在Linux系统上也可以安装各种应用程序,或称之为软件包
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| 1.rpm安装 rpm安装预先编译打包,安装简单,下载下来之后直接安装。 优点:已经制作好的安装程序 缺点:不能自己解决依赖 2.yum安装 yum安装基于rpm安装 优点:增加了自动解决依赖的功能。 3.源代码编译安装 源代码安装通过编译源代码,得到软件包。 优点:可以自定制软件包。 缺点:比较复杂
|
镜像文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| mount /dev/sr0 /opt/ 或 mount /dev/cdrom /munt/
umount /dev/sr0 或 umount /opt
umount -l [挂载源或挂载点]
df
[root@localhost dev] mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ~] 文件系统 1K-块 已用 可用 已用% 挂载点 /dev/sr0 4480476 4480476 0 100% /opt
[root@localhost dev] CentOS_BuildTag EULA images LiveOS repodata RPM-GPG-KEY-CentOS-Testing-7 EFI GPL isolinux Packages RPM-GPG-KEY-CentOS-7 TRANS.TBL
[root@localhost dev] ...... zlib-1.2.7-18.el7.x86_64.rpm zlib-devel-1.2.7-18.el7.x86_64.rpm zsh-5.0.2-31.el7.x86_64.rpm zziplib-0.13.62-9.el7.x86_64.rpm
[root@localhost ~] x86_64
[root@localhost ~] 3.10.0-1160.49.1.el7.x86_64
|
1、RPM安装
- rpm包来源
- 1、来源网络下载
- 2、来源本地:自己的镜像自带的rpm包
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
| -v -i -h
1、下载安装包 2、安装 [root@localhost ~] 或 [root@localhost ~] Preparing... Updating / installing... 1:zsh-5.0.2-34.el7_8.2 3、卸载 [root@localhost ~] 4、更新 [root@localhost ~] Preparing... Updating / installing... 1:zsh-5.0.2-34.el7_8.2
5、软件包名称 zsh-5.0.2-34.el7_8.2.x86_64.rpm zsh 5.0.2 34 el7_8(CentOS 7) x86_64 rpm
6、查看已安装软件包的使用配置文件 [root@localhost ~] 7、查看已安装包的描述信息 [root@localhost ~]
8、查看是否安装某软件 [root@localhost ~]
9、查看当前系统安装了哪些rpm软件 [root@localhost ~] 10、查看软件的安装路径,查看安装了哪些东西 [root@localhost ~]
上传与下载:yum install lrzsz -y 扩展: 1、查看未安装包的软件信息 [root@localhost ~]
|
2、yum安装
- yum是CentOS的软件包管理工具,自动为我们解决软件依赖问题。yum包管理工具必须使用yum源指定软件下载地址去下载需要安装的软件包。
- 要成功的使用 YUM 工具安装更新软件或系统,就需要有一个包含各种 rpm 软件包的repository(软件仓库),这个软件仓库我们习惯称为 yum 源。(可以是本地源、网络源)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
| 基于rpm安装,自动解决依赖。
[root@localhost ~]
[root@localhost ~] [root@localhost ~] [root@localhost ~] [root@localhost ~]
yum install [软件包的名称] 参数: -y : 免交互安装 --nogpgcheck : 忽略公钥认证
yum remove [软件包名称] 参数: -y : 免交互移除
yum update [软件包名称] 参数: -y : 免交互更新 ps:如果跟具体的软件包名称,就会更新指定软件包;如果没有指定,则更新系统所有的需要更新的软件包。 yum check-update yum reinstall [软件包名称] yum search [软件包名称] yum安装的生命周期: 1、执行yum install zsh -y 2、去 /etc/yum.repos.d/ 找以 .repo 结尾的文件 3、通过 .repo 文件中的链接,找到对应的软件仓库 4、在对应的软件仓库中下载指定的软件包 5、缓存至 /var/cache/yum/ 6、根据缓存,安装软件包 7、删除软件包(keepcache 是否保存缓存,0 代表不保存 , 1 代表保存)
|
知识储备:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| 如果系统中没有wget,执行如下命令:yum install wget -y wget url 参数: -O
curl :读取文件 参数: -o -k curl命令是⼀个利⽤URL规则在命令⾏下⼯作的⽂件传输⼯具。它⽀持⽂件的上传和下载,所以是综合传输⼯具, 但按传统,习惯称curl为下载⼯具。作为⼀款强⼒⼯具,curl⽀持包括HTTP、HTTPS、[ftp]等众多协议,还⽀ 持POST、cookies、认证、从指定偏移处下载部分⽂件、⽤户代理字符串、限速、⽂件⼤⼩、进度条等特征。做⽹ ⻚处理流程和数据检索⾃动化,curl可以祝⼀臂之⼒。
[root@localhost ~] curl -k -o 123.png https://www.xxx.com/img/hello.png
ps: yum install lrzsz -y
sz : 下载文件(从linux系统下载文件到windows) 系统默认没有该命令,需要下载:yum install lrzsz -y 将服务器上选定的⽂件下载/发送到本机,
rz [文件路径] [root@localhost opt] [root@localhost opt] rz 回车即可选择上传文件 也可以进入都某个路径下将文件直接拖入~ (人性化)
|
本地&远程仓库搭建
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
| 本地仓库: yum install yum-utils createrepo -y mkdir -p /opt/repos
mkdir -p /opt/repos/Packages 把对应的软件包复制到 Packages 目录中 createrepo /opt/repos cd /etc/yum.repos.d/ mkdir backup mv *.repo backup/ [root@localhost ~]
[root@localhost /etc/yum.repos.d]
[opt_repos] name=added from: file:///opt/repos baseurl=file:///opt/repos enabled=1
yum clean all yum makecache yum install zsh 远程仓库 参考本地版前7步 [root@localhost ~] [root@localhost ~] [root@localhost ~]
https://nginx.org/en/docs/http/ngx_http_autoindex_module.html [root@localhost ~] root /opt/repos; autoindex on; [root@localhost ~] [root@localhost ~] [root@localhost ~] [root@localhost ~] [root@localhost yum.repos.d]
[root@localhost yum.repos.d] [root@localhost yum.repos.d]
[root@localhost yum.repos.d]
[root@localhost yum.repos.d] [root@localhost yum.repos.d]
[root@localhost ~]
|
3、源码包安装(编译安装)

注意: 此方法不是百分百通用于所有源码包,建议拿到源码包解压后,进入到目录找相关的README帮助文档
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
| 编译安装
[root@localhost ~]
[root@localhost ~]
[root@localhost ~] [root@localhost ~]
[root@localhost nginx-1.20.2]
[root@localhost nginx-1.20.2]
[root@localhost nginx-1.20.2]
[root@localhost ~]
[root@localhost ~]
知识储备: tar -xf [压缩包名称]
知识拓展: 自定制安装,修改源代码包名以 nginx 为例 [root@localhost ~] [root@localhost ~] [root@localhost ~] [root@localhost ~] [root@localhost nginx-1.20.2] [root@localhost nginx-1.20.2] ./src/core/nginx.h: [root@localhost nginx-1.20.2]
''' /* * Copyright (C) Igor Sysoev * Copyright (C) Nginx, Inc. */
#ifndef _NGINX_H_INCLUDED_ #define _NGINX_H_INCLUDED_
#define nginx_version 1020002 #define NGINX_VERSION "1.0" # 修改版本 #define NGINX_VER "GengFeng/" NGINX_VERSION #修改名称
#ifdef NGX_BUILD ''' [root@localhost nginx-1.20.2]
[root@localhost nginx-1.20.2]
[root@localhost nginx-1.20.2]
[root@localhost ~] 404 Not Found GengFeng/1.0
|
压缩打包
1、 什么是打包压缩
打包指的是将多个⽂件和⽬录合并为⼀个特殊⽂件,然后将该特殊⽂件进⾏压缩,最终得到⼀个压缩包
2、为什么使⽤压缩包
3、Windows的压缩和Linux的有什么不同
- windows: zip rar(linux不⽀持rar)
- linux: zip tar.gz tar.bz2 .gz
如果希望windows的软件能被linux解压,或者linux的软件包被windows能识别,选择zip.
PS: 压缩包的后缀不重要,但⼀定要携带.
4、Linux下常⻅的压缩包类型
格式 |
压缩工具 |
.zip |
zip 压缩工具 |
.gz |
gzip 压缩工具,只能压缩文件,会删除源文件(通常配合tar使用) |
.bz2 |
bzip2 压缩工具,只能压缩文件,会删除源文件(通常配合tar使用) |
.tar.gz |
先使用tar 命令归档打包,然后使用 gzip 压缩 |
.tar.bz2 |
先使用tar 命令归档打包,然后使用 bzip 压缩 |
Linux常见的压缩包有哪些?
gzip打包与压缩
1 2 3 4 5 6 7 8 9 10
|
[root@localhost ~] [root@localhost ~] [root@localhost ~]
[root@localhost ~] [root@localhost ~]
|
bzip2打包与压缩
1 2 3 4 5 6
|
[root@localhost ~] [root@localhost ~] [root@localhost ~]
|
tar打包与压缩
- tar是linux下最常用的压缩与解压缩, 支持文件和目录的压缩归档
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| tar : 打包的命令 参数: -f -c -v -x -t -z -j -J -C -P -X -h --hard-dereference --exclude
czf cjf cJf
zxf jxf xf tf 注意: 1、压缩时是什么路径,解压缩时就是什么路径,所以为了安全不要使用绝对路径压缩。 2、-f参数后面永远跟压缩包名称
[root@localhost ~] [root@localhost ~] [root@localhost ~]
[root@localhost ~] [root@localhost ~]
[root@localhost ~] [root@localhost mysql] [root@localhost mysql] [root@localhost mysql]
|