客家酸菜 發表於 2023-6-27 21:31:00

CentOS Linux系统 离线安装软件教程

<h2 id="一概述">一、概述</h2>
<p>实际运用过程中,有些其他类型或特殊用途的服务器是禁止联网的,这时就需要涉及服务器软件的离线安装,对于CentOS系统的服务器,离线安装软件有以下几种方法:</p>
<p>1)搭建本地CentOS软件仓库,即本地yum源,仅适用于一些基础软件的离线安装。</p>
<p>2)制作软件离线安装包,需要用到另外一台相同系统版本且能联网的服务器或虚拟机。</p>
<br>
<h2 id="二搭建本地centos仓库">二、搭建本地CentOS仓库</h2>
<h3 id="1-准备本地软件源">1. 准备本地软件源</h3>
<p>准备一张完整版的CentOS系统CD光盘(里面自带了很多软件包可作为软件源),将光盘放入光驱插入到服务器。注:光盘里的系统版本要和服务器安装的系统版本对应,否则光盘里的软件源不适配服务器本身系统。</p>
<br>
<h3 id="2-挂载cd光盘">2. 挂载CD光盘</h3>
<p>进入服务器系统,执行如下指令</p>
<pre><code>mkdir /mnt/cdrom

mount /dev/sr0 /mnt/cdrom
</code></pre>
<p>以上命令是将CD光盘挂载到/mnt/cdrom目录</p>
<br>
<h3 id="3-修改yum源">3. 修改yum源</h3>
<p>(1)进入服务器系统,切换root权限。</p>
<p>(2)执行 <code>cd /etc/yum.repos.d/</code> ,进入yum源所在目录。</p>
<p>(3)在当前yum源目录下,执行 <code>mkdir yum_repos_old</code>创建一个目录,然后执行“ <code>mv CentOS-*.repo yum_repos_old/</code> ”,将之前的yum源文件都放到该目录下。</p>
<p>(4)还是在当前yum源目录下,执行 vi CentOS-Local.repo , 并添加以下内容</p>
<pre><code>

name=CentOS-Local

baseurl=file:///mnt/cdrom# 设置资源库的地址

enables=1# 开启本地

gpgcheck=0# 1表示检查,0表示不检查
</code></pre>
<p>然后 :wq 保存并退出,添加本地yum源文件。</p>
<p>(5)执行 <code>yum clean all</code>   ,清除yum缓存。</p>
<p>(6)执行 <code>yum repolist</code>   ,确定生效的repo仓库为CentOS-Local。</p>
<p>(7)然后就正常使用yum install 命令安装软件就行,如果提示没有该软件就说明,该CD光盘软件源里面没有该软件,此时就需要使用第二种方法-制作软件离线安装包。</p>
<br>
<h2 id="三制作软件离线安装包">三、制作软件离线安装包</h2>
<h3 id="1-准备联网服务器下载软件包">1. 准备联网服务器下载软件包</h3>
<p>(1)另外准备一台具有相同系统版本的且能联网的服务器或虚拟机。</p>
<p>(2)进入该服务器,执行如下指令下载软件包:</p>
<pre><code>yum install--downloadonly--downloaddir=[下载路径][软件包名称]
</code></pre>
<blockquote>
<p>--downloadonly :表示 只下载不安装<br>
--downloaddir:用来指定要下载到的目录<br>
以上两个选项通常一起使用</p>
</blockquote>
<p>如果提示没有--downloadonly选项,则需要安装yum-plugin-downloadonly软件包</p>
<blockquote>
<p>yum install yum-plugin-downloadonly</p>
</blockquote>
<p>以podman软件为例,执行</p>
<pre><code>yum install --downloadonly --downloaddir=/opt/podmanpackage/ podman
</code></pre>
<p>就会把podman软件包及其依赖包(已安装过的依赖包除外)下载到 /opt/podmanpackage/ 这个目录下。</p>
<br>
<p><strong>注1:</strong> 如果当前机器已安装过podman这个软件包,那么就不能使用 install 下载该软件包,而要使用 reinstall 下载 :</p>
<pre><code>yum reinstall --downloadonly --downloaddir=/opt/podmanpackage/ podman
</code></pre>
<br>
<p><strong>注2:</strong> 其实yum-utils软件包中有一个 yumdownloader 命令和 yum install --downloadonly 效果一样,如下</p>
<pre><code>yum -y install yum-utils
yumdownloader --resolve --destdir=/opt/podmanpackage/ podman
</code></pre>
<blockquote>
<p>--resolve :表示下载软件及其依赖包(已安装过的依赖包除外)</p>
</blockquote>
<blockquote>
<p>--destdir:用来指定要下载到的目录</p>
</blockquote>
<br>
<p><strong>注3:</strong> 如果当前机器已安装过podman这个软件及其所有依赖包,那上面方法都不能下载该软件及其所有依赖包了。只能根据缺少什么软件包或依赖包,使用 yum reinstall --downloadonly 或 yumdownloader 一个一个去下载。</p>
<br>
<p>(3)下载软件包及其所有依赖包,还可以用另外一种方式(<strong>推荐</strong>):<br>
首先下载 yum-utils 软件包(含 yumdownloader 和 repotrack 等命令)</p>
<pre><code>yum -y install yum-utils
</code></pre>
<p>然后使用 repotrack 命令下载软件包及其所有依赖包</p>
<pre><code>repotrack --download_path=[下载路径][软件包名称]
</code></pre>
<p>以podman软件为例,如下</p>
<pre><code>repotrack --download_path=/opt/podmanpackage/podman
</code></pre>
<p>就会把podman软件包及其所有依赖包下载到 /opt/podmanpackage/ 这个目录下。</p>
<br>
<h3 id="2-打包所有rpm到离线机器中安装">2. 打包所有rpm到离线机器中安装</h3>
<p>(1)进入下载目录</p>
<pre><code>cd /opt/podmanpackage/
</code></pre>
<p>(2)打包所有rpm软件包</p>
<pre><code>tar -czvf podman_3.3.1_full_x86_64.tar.gz ./*
</code></pre>
<p>(3)通过U盘或专用电脑将压缩包放到离线服务器里</p>
<p>(4)离线机器中解压软件包到临时目录</p>
<pre><code>tar -zxvf podman_3.3.1_full_x86_64.tar.gz -C /tmp/
</code></pre>
<p>(5)进入解包的临时目录安装软件</p>
<pre><code>cd /tmp/

rpm -ivh 【主软件包名】.rpm
</code></pre>
<p>没有报错就说明安装成功。</p>
<br>
<p><strong>注:</strong>如果缺少什么依赖,在执行rpm -ivh后会有提示信息,根据此提示信息,回到1-(2)那一步,缺少什么就下载什么,然后再移进来,重新执行<code>rpm -ivh *.rpm</code> 命令。</p>


</div>
<div id="MySignature" role="contentinfo">
   
<b>文章作者:</b> jianmuzi
   <br/>
<b>文章出处:</b> https://www.cnblogs.com/jianmuzi/p/17509985.html
    <br/>
<b>版权声明:</b> 本博客为学习时整理的笔记,文章<b style="color: blue;"> [大部分为原创] </b>作品,转载请 <b style="color: green;"> [注明文章出处] </b>,您的支持是我创作的动力!
<br/>
转载文章,请遵守<b>《中华人民共和国著作权法》</b>相关规定或遵守<b>《署名CC BY-ND 4.0国际》</b>禁止演绎规范,携带原创出处转载。<br><br>
来源:https://www.cnblogs.com/jianmuzi/p/17509985.html
頁: [1]
查看完整版本: CentOS Linux系统 离线安装软件教程