centos 7上,如何升级python到最新的版本?
<div class="lake-content"><h1 id="v5mrs"><span class="ne-text">0、背景说明</span></h1>
<p id="u413ca28c" class="ne-p"> </p>
<p id="u56bdf84d" class="ne-p"><span class="ne-text">在centos 7上,默认安装出来的python是:2.7.5版本</span></p>
<div class="cnblogs_code">
<pre># python --<span style="color: rgba(0, 0, 0, 1)">version
Python </span><span style="color: rgba(128, 0, 128, 1)">2.7</span>.<span style="color: rgba(128, 0, 128, 1)">5</span></pre>
</div>
<p> </p>
<p id="u88c135eb" class="ne-p"> </p>
<p id="ucf5f8a4a" class="ne-p"><span class="ne-text">通过yum安装出来的,适合当前操作系统的,最新的python版本是:3.6.8</span></p>
<div class="cnblogs_code">
<pre># python3 --<span style="color: rgba(0, 0, 0, 1)">version
Python </span><span style="color: rgba(128, 0, 128, 1)">3.6</span>.<span style="color: rgba(128, 0, 128, 1)">8</span>
</pre>
</div>
<p> </p>
<p id="u6757fcbd" class="ne-p"><span class="ne-text">这个时候,想要把python升级到最新的版本,该怎么操作?</span></p>
<p id="u8743e224" class="ne-p"> </p>
<p id="u4d1e3d27" class="ne-p"><span class="ne-text">本文介绍通过源码的方式,升级python3到最新的版本。</span></p>
<p id="u55cd1dcf" class="ne-p"> </p>
<h1 id="D7G7o"><span class="ne-text">1、安装openssl</span></h1>
<p id="ubce167a7" class="ne-p"> </p>
<p id="ua07e1ca2" class="ne-p"><span class="ne-text">python3.11的源码编译,需要openssl 1.1版本以上</span></p>
<p id="u802958d8" class="ne-p"> </p>
<p id="u437f53d4" class="ne-p"><strong>通过以下的步骤进行安装</strong></p>
<p id="u7a2b35f2" class="ne-p"> </p>
<ul class="ne-ul">
<li id="ub30768c2" data-lake-index-type="0"><span class="ne-text">查看当前主机的openssl版本</span></li>
</ul>
<div class="cnblogs_code">
<pre># openssl version
OpenSSL </span><span style="color: rgba(128, 0, 128, 1)">1.0</span>.2k-fips<span style="color: rgba(128, 0, 128, 1)">26</span> Jan <span style="color: rgba(128, 0, 128, 1)">2017</span></pre>
</div>
<p> </p>
<p id="u81546181" class="ne-p"><span class="ne-text">是1.0.2的版本,需要进行升级到1.1.1版本</span></p>
<p id="uf6ac87c7" class="ne-p"> </p>
<ul class="ne-ul">
<li id="u30a72d12" data-lake-index-type="0"><span class="ne-text">移除本机的openssl</span></li>
</ul>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">yum</span> remove -y openssl openssl-devel</pre>
</div>
<p> </p>
<ul class="ne-ul">
<li id="u264264a1" data-lake-index-type="0"><span class="ne-text">移除之后,就没有openssl的命令了</span></li>
</ul>
<div class="cnblogs_code">
<pre># openssl version
</span>-<span style="color: rgba(0, 0, 0, 1)">bash: openssl: command not found
# </pre>
</div>
<p> </p>
<p id="uc461b83a" class="ne-p"> </p>
<ul class="ne-ul">
<li id="ud836ac61" data-lake-index-type="0"><span class="ne-text">下载openssl包</span></li>
</ul>
<p id="ue4858e9e" class="ne-p"> </p>
<p id="u2be60ad4" class="ne-p"><span class="ne-text">登录到openssl的官方网站,下载1.1.1最新版本的包</span></p>
<p id="u6be18acf" class="ne-p"><span class="ne-text">https://www.openssl.org/source/</span></p>
<p id="ue8a95905" class="ne-p"> </p>
<p id="ua78819c0" class="ne-p"><img src="https://cdn.nlark.com/yuque/0/2023/png/12894334/1693188347044-26234124-4673-4197-8020-216318a10a87.png" width="702" height="520" id="u91365f5e" class="ne-image"></p>
<p id="ud3f0126f" class="ne-p"> </p>
<p id="ub311aeca" class="ne-p"> </p>
<p id="ucf37e8eb" class="ne-p"><span class="ne-text">通过以下的地址下载openssl包</span></p>
<p id="u8c13b818" class="ne-p"><span class="ne-text">https://www.openssl.org/source/openssl-1.1.1v.tar.gz</span></p>
<p id="u1149a490" class="ne-p"> </p>
<ul class="ne-ul">
<li id="u1de0ca7d" data-lake-index-type="0"><span class="ne-text">上传到服务器并解压</span></li>
</ul>
<div class="cnblogs_code">
<pre># <span style="color: rgba(0, 0, 255, 1)">ls</span> -<span style="color: rgba(0, 0, 0, 1)">ltr
total </span><span style="color: rgba(128, 0, 128, 1)">9664</span>
-rw-r--r-- <span style="color: rgba(128, 0, 128, 1)">1</span> root root <span style="color: rgba(128, 0, 128, 1)">9893443</span> Aug <span style="color: rgba(128, 0, 128, 1)">24</span> <span style="color: rgba(128, 0, 128, 1)">02</span>:<span style="color: rgba(128, 0, 128, 1)">06</span> openssl-<span style="color: rgba(128, 0, 128, 1)">1.1</span>.1v.<span style="color: rgba(0, 0, 255, 1)">tar</span><span style="color: rgba(0, 0, 0, 1)">.gz
# <span style="color: rgba(0, 0, 255, 1)">tar</span> -zxf openssl-<span style="color: rgba(128, 0, 128, 1)">1.1</span>.1v.<span style="color: rgba(0, 0, 255, 1)">tar</span><span style="color: rgba(0, 0, 0, 1)">.gz
# <span style="color: rgba(0, 0, 255, 1)">ls</span> -<span style="color: rgba(0, 0, 0, 1)">l
total </span><span style="color: rgba(128, 0, 128, 1)">9668</span><span style="color: rgba(0, 0, 0, 1)">
drwxrwxr</span>-x <span style="color: rgba(128, 0, 128, 1)">19</span> root root <span style="color: rgba(128, 0, 128, 1)">4096</span> Aug<span style="color: rgba(128, 0, 128, 1)">1</span> <span style="color: rgba(128, 0, 128, 1)">09</span>:<span style="color: rgba(128, 0, 128, 1)">51</span> openssl-<span style="color: rgba(128, 0, 128, 1)">1.1</span><span style="color: rgba(0, 0, 0, 1)">.1v
</span>-rw-r--r--<span style="color: rgba(128, 0, 128, 1)">1</span> root root <span style="color: rgba(128, 0, 128, 1)">9893443</span> Aug <span style="color: rgba(128, 0, 128, 1)">24</span> <span style="color: rgba(128, 0, 128, 1)">02</span>:<span style="color: rgba(128, 0, 128, 1)">06</span> openssl-<span style="color: rgba(128, 0, 128, 1)">1.1</span>.1v.<span style="color: rgba(0, 0, 255, 1)">tar</span><span style="color: rgba(0, 0, 0, 1)">.gz
# </pre>
</div>
<p> </p>
<p id="u66e53d72" class="ne-p"> </p>
<ul class="ne-ul">
<li id="u1fb8ee6b" data-lake-index-type="0"><span class="ne-text">查看openssl.conf文件的目录</span></li>
</ul>
<div class="cnblogs_code">
<pre># <span style="color: rgba(0, 0, 255, 1)">find</span> /etc/ -name openssl.cnf -printf <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">%h\n</span><span style="color: rgba(128, 0, 0, 1)">"</span>
/etc/pki/tls</pre>
</div>
<p> </p>
<p id="ub007cd30" class="ne-p"> </p>
<ul class="ne-ul">
<li id="u87bbb495" data-lake-index-type="0"><span class="ne-text">编译、安装</span></li>
</ul>
<div class="cnblogs_code">
<pre>cd openssl-<span style="color: rgba(128, 0, 128, 1)">1.1</span><span style="color: rgba(0, 0, 0, 1)">.1v
.</span>/<span style="color: rgba(0, 0, 0, 1)">config \
</span>--prefix=/usr/local/<span style="color: rgba(0, 0, 0, 1)">openssl \
</span>--libdir=<span style="color: rgba(0, 0, 0, 1)">lib \
</span>--openssldir=/etc/pki/<span style="color: rgba(0, 0, 0, 1)">tls# 修改为上面查到的openssl.conf所在的目录
</span><span style="color: rgba(0, 0, 255, 1)">make</span> -<span style="color: rgba(0, 0, 0, 1)">j1 depend
</span><span style="color: rgba(0, 0, 255, 1)">make</span> -<span style="color: rgba(0, 0, 0, 1)">j8
</span><span style="color: rgba(0, 0, 255, 1)">make</span> install_sw</pre>
</div>
<p> </p>
<ul class="ne-ul">
<li id="udc6cf055" data-lake-index-type="0"><span class="ne-text">更新共享库缓存</span></li>
</ul>
<div class="cnblogs_code">
<pre>ldconfig</pre>
</div>
<p> </p>
<p id="u3b7d9291" class="ne-p"> </p>
<ul class="ne-ul">
<li id="u012e4f02" data-lake-index-type="0"><span class="ne-text">更新ssl配置,设置环境变量</span></li>
</ul>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">tee</span> /etc/profile.d/openssl.<span style="color: rgba(0, 0, 255, 1)">sh</span><<<span style="color: rgba(0, 0, 0, 1)">EOF
export PATH</span>=/usr/local/openssl/<span style="color: rgba(0, 0, 0, 1)">bin:\$PATH
export LD_LIBRARY_PATH</span>=/usr/local/openssl/<span style="color: rgba(0, 0, 0, 1)">lib:\$LD_LIBRARY_PATH
EOF
source </span>/etc/profile.d/openssl.<span style="color: rgba(0, 0, 255, 1)">sh</span></pre>
</div>
<p> </p>
<ul class="ne-ul">
<li id="u278936f0" data-lake-index-type="0"><span class="ne-text">查看openssl的版本</span></li>
</ul>
<p id="ua082432f" class="ne-p"> </p>
<div class="cnblogs_code">
<pre># openssl version
OpenSSL </span><span style="color: rgba(128, 0, 128, 1)">1.1</span>.1v<span style="color: rgba(128, 0, 128, 1)">1</span> Aug <span style="color: rgba(128, 0, 128, 1)">2023</span><span style="color: rgba(0, 0, 0, 1)">
# </pre>
</div>
<p> </p>
<p id="ube367cfd" class="ne-p"> </p>
<p id="u9abf7deb" class="ne-p"><span class="ne-text">出现版本信息,说明安装成功。</span></p>
<h1 id="xyZyZ"><span class="ne-text">2、安装依赖包</span></h1>
<p id="uaf52ef98" class="ne-p"> </p>
<p id="u8f1f7483" class="ne-p"><span class="ne-text">这些依赖包,在编译python源码的时候,会用到</span></p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">yum</span> <span style="color: rgba(0, 0, 255, 1)">install</span> -y <span style="color: rgba(0, 0, 255, 1)">make</span> cmake <span style="color: rgba(0, 0, 255, 1)">gcc</span> <span style="color: rgba(0, 0, 255, 1)">bzip2</span>-devel libffi-devel zlib-devel tk-devel readline-<span style="color: rgba(0, 0, 0, 1)">devel \
gdbm</span>-devel sqlite-devel tkinter</pre>
</div>
<p> </p>
<h1 id="a7rh8"><span class="ne-text">3、下载python最新的源码包</span></h1>
<p id="u01a76b31" class="ne-p"> </p>
<p id="u1f02c4d4" class="ne-p"><span class="ne-text">登录下面的地址:</span></p>
<p id="uf07c251a" class="ne-p"><span class="ne-text">https://www.python.org/downloads/source/</span></p>
<p id="ua2881d3a" class="ne-p"> </p>
<p id="u0834d023" class="ne-p"><span class="ne-text">下载到最新的源码包,这里的版本是3.11.4</span></p>
<p id="u0e9fafd3" class="ne-p"><span class="ne-text">下载地址:<span class="ne-text">https://www.python.org/ftp/python/3.11.4/Python-3.11.4.tgz</span></span></p>
<p id="uacac40a3" class="ne-p"><img src="https://cdn.nlark.com/yuque/0/2023/png/12894334/1692843328504-849eb1f8-a7ae-4b75-8cda-9266c304bac1.png" width="880" height="547" id="pcVp6" class="ne-image"></p>
<p id="u1017a6dc" class="ne-p"> </p>
<h1 id="eKCqb"><span class="ne-text">4、上传到服务器、解压</span></h1>
<p id="u81e3177f" class="ne-p"> </p>
<div class="cnblogs_code">
<pre># <span style="color: rgba(0, 0, 255, 1)">ls</span> -<span style="color: rgba(0, 0, 0, 1)">ltr
total </span><span style="color: rgba(128, 0, 128, 1)">25908</span>
-rw-r--r-- <span style="color: rgba(128, 0, 128, 1)">1</span> root root <span style="color: rgba(128, 0, 128, 1)">26526163</span> Aug <span style="color: rgba(128, 0, 128, 1)">23</span> <span style="color: rgba(128, 0, 128, 1)">22</span>:<span style="color: rgba(128, 0, 128, 1)">13</span> Python-<span style="color: rgba(128, 0, 128, 1)">3.11</span>.<span style="color: rgba(128, 0, 128, 1)">4</span><span style="color: rgba(0, 0, 0, 1)">.tgz
# <span style="color: rgba(0, 0, 255, 1)">tar</span> -zxf Python-<span style="color: rgba(128, 0, 128, 1)">3.11</span>.<span style="color: rgba(128, 0, 128, 1)">4</span><span style="color: rgba(0, 0, 0, 1)">.tgz
# <span style="color: rgba(0, 0, 255, 1)">ls</span> -<span style="color: rgba(0, 0, 0, 1)">ltr
total </span><span style="color: rgba(128, 0, 128, 1)">25912</span><span style="color: rgba(0, 0, 0, 1)">
drwxr</span>-xr-x <span style="color: rgba(128, 0, 128, 1)">16</span> <span style="color: rgba(128, 0, 128, 1)">1000</span> <span style="color: rgba(128, 0, 128, 1)">1000</span> <span style="color: rgba(128, 0, 128, 1)">4096</span> Jun<span style="color: rgba(128, 0, 128, 1)">6</span> <span style="color: rgba(128, 0, 128, 1)">18</span>:<span style="color: rgba(128, 0, 128, 1)">16</span> Python-<span style="color: rgba(128, 0, 128, 1)">3.11</span>.<span style="color: rgba(128, 0, 128, 1)">4</span>
-rw-r--r--<span style="color: rgba(128, 0, 128, 1)">1</span> root root <span style="color: rgba(128, 0, 128, 1)">26526163</span> Aug <span style="color: rgba(128, 0, 128, 1)">23</span> <span style="color: rgba(128, 0, 128, 1)">22</span>:<span style="color: rgba(128, 0, 128, 1)">13</span> Python-<span style="color: rgba(128, 0, 128, 1)">3.11</span>.<span style="color: rgba(128, 0, 128, 1)">4</span><span style="color: rgba(0, 0, 0, 1)">.tgz
# </pre>
</div>
<p> </p>
<p id="u9d3ea9a8" class="ne-p"> </p>
<h1 id="OBm0o"><span class="ne-text">5、编译、安装</span></h1>
<ul class="ne-ul">
<li id="ue4c6364a" data-lake-index-type="0"><span class="ne-text">设置环境变量</span></li>
</ul>
<div class="cnblogs_code">
<pre>export CFLAGS=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">-I/usr/local/openssl/include</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">
export LDFLAGS</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">-L/usr/local/openssl/lib -lssl -lcrypto</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">
export CPPFLAGS</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">-I /usr/local/openssl/include</span><span style="color: rgba(128, 0, 0, 1)">"</span></pre>
</div>
<p> </p>
<p id="ub7168582" class="ne-p"><span class="ne-text">其中,/usr/local/openssl是openssl的安装路径。</span></p>
<p id="u93fc8f0a" class="ne-p"> </p>
<p id="u040b1f22" class="ne-p"><span class="ne-text">注意:这两个变量非常的关键,如果不设置,会影响到后面的编译过程。</span></p>
<p id="u6387054b" class="ne-p"> </p>
<ul class="ne-ul">
<li id="u632a60d5" data-lake-index-type="0"><span class="ne-text">进行编译、安装</span></li>
</ul>
<div class="cnblogs_code">
<pre>cd Python-<span style="color: rgba(128, 0, 128, 1)">3.11</span>.<span style="color: rgba(128, 0, 128, 1)">4</span><span style="color: rgba(0, 0, 0, 1)">
.</span>/<span style="color: rgba(0, 0, 0, 1)">configure \
</span>--with-openssl=/usr/local/<span style="color: rgba(0, 0, 0, 1)">openssl \
</span>--with-openssl-rpath=<span style="color: rgba(0, 0, 0, 1)">auto \
</span>--prefix=/usr/local/python-<span style="color: rgba(128, 0, 128, 1)">3.11</span>.<span style="color: rgba(128, 0, 128, 1)">4</span><span style="color: rgba(0, 0, 0, 1)"> \
</span>--enable-<span style="color: rgba(0, 0, 0, 1)">optimizations
</span><span style="color: rgba(0, 0, 255, 1)">make</span><span style="color: rgba(0, 0, 0, 1)"># 如果make失败,再执行几次就好了。
</span><span style="color: rgba(0, 0, 255, 1)">make</span> altinstall</pre>
</div>
<p> </p>
<p id="uad69f0e7" class="ne-p"> </p>
<ul class="ne-ul">
<li id="u044f6b0e" data-lake-index-type="0"><span class="ne-text">安装之后,通过以下的命令查询python的安装</span></li>
</ul>
<div class="cnblogs_code">
<pre>cd /usr/local/python-<span style="color: rgba(128, 0, 128, 1)">3.11</span>.<span style="color: rgba(128, 0, 128, 1)">4</span>/<span style="color: rgba(0, 0, 0, 1)">bin
.</span>/python3.<span style="color: rgba(128, 0, 128, 1)">11</span> --version</pre>
</div>
<p> </p>
<p id="uff196d7e" class="ne-p"><img src="https://cdn.nlark.com/yuque/0/2023/png/12894334/1693190470763-1b823c65-3ffe-462b-aeaf-cd1b9241e2c7.png" width="555" id="udf417bf1" class="ne-image"></p>
<p id="u93c3c71a" class="ne-p"> </p>
<ul class="ne-ul">
<li id="u748a84ed" data-lake-index-type="0"><span class="ne-text">使用pip3安装软件包</span></li>
</ul>
<div class="cnblogs_code">
<pre>cd /usr/local/python-<span style="color: rgba(128, 0, 128, 1)">3.11</span>.<span style="color: rgba(128, 0, 128, 1)">4</span>/<span style="color: rgba(0, 0, 0, 1)">bin
.</span>/pip3.<span style="color: rgba(128, 0, 128, 1)">11</span> <span style="color: rgba(0, 0, 255, 1)">install</span> -i https:<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">mirrors.aliyun.com/pypi/simple/ ansible</span></pre>
</div>
<p> </p>
<p id="uf00eb618" class="ne-p"><span class="ne-text">当出现下面的,可以通过pip3命令安装软件包时,说明pip可以正常的使用ssl模块。</span></p>
<p id="ufcead6a4" class="ne-p"><img src="https://cdn.nlark.com/yuque/0/2023/png/12894334/1693190573686-ac370cf5-7c73-4eea-9cfc-c26dda06c849.png" width="1975" id="u38f13479" class="ne-image"></p>
<p id="u62ae12d9" class="ne-p"> </p>
<p id="u9d01eefd" class="ne-p"> </p>
<h1 id="gJ9TJ"><span class="ne-text">6、修改软链接</span></h1>
<p id="u0a5be96c" class="ne-p"> </p>
<p id="u0ddbb46e" class="ne-p"><span class="ne-text">默认的环境中,python3命令,还是指向python3.6</span></p>
<div class="cnblogs_code">
<pre># <span style="color: rgba(0, 0, 255, 1)">which</span><span style="color: rgba(0, 0, 0, 1)"> python3
</span>/usr/bin/<span style="color: rgba(0, 0, 0, 1)">python3
# </span><span style="color: rgba(0, 0, 255, 1)">ls</span> -l /usr/bin/<span style="color: rgba(0, 0, 0, 1)">python3
lrwxrwxrwx </span><span style="color: rgba(128, 0, 128, 1)">1</span> root root <span style="color: rgba(128, 0, 128, 1)">9</span> Dec<span style="color: rgba(128, 0, 128, 1)">8</span><span style="color: rgba(128, 0, 128, 1)">2022</span> /usr/bin/python3 -> python3.<span style="color: rgba(128, 0, 128, 1)">6</span><span style="color: rgba(0, 0, 0, 1)">
#
# </span><span style="color: rgba(0, 0, 255, 1)">which</span><span style="color: rgba(0, 0, 0, 1)"> pip3
</span>/usr/bin/<span style="color: rgba(0, 0, 0, 1)">pip3
# </span></pre>
</div>
<p> </p>
<p id="ufc44374f" class="ne-p"> </p>
<p id="u086e33a4" class="ne-p"><span class="ne-text">通过以下的命令,创建python3命令、pip3命令的软链接</span></p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">rm</span> -f /usr/bin/<span style="color: rgba(0, 0, 0, 1)">python3
</span><span style="color: rgba(0, 0, 255, 1)">rm</span> -f /usr/bin/<span style="color: rgba(0, 0, 0, 1)">pip3
</span><span style="color: rgba(0, 0, 255, 1)">ln</span> -s /usr/local/python-<span style="color: rgba(128, 0, 128, 1)">3.11</span>.<span style="color: rgba(128, 0, 128, 1)">4</span>/bin/python3.<span style="color: rgba(128, 0, 128, 1)">11</span> /usr/bin/<span style="color: rgba(0, 0, 0, 1)">python3
</span><span style="color: rgba(0, 0, 255, 1)">ln</span> -s /usr/local/python-<span style="color: rgba(128, 0, 128, 1)">3.11</span>.<span style="color: rgba(128, 0, 128, 1)">4</span>/bin/pip3.<span style="color: rgba(128, 0, 128, 1)">11</span> /usr/bin/pip3</pre>
</div>
<p> </p>
<p id="u403b74c2" class="ne-p"> </p>
<p id="ubf450530" class="ne-p"><span class="ne-text">执行之后,查看python的命令</span></p>
<div class="cnblogs_code">
<pre># python3 --<span style="color: rgba(0, 0, 0, 1)">version
Python </span><span style="color: rgba(128, 0, 128, 1)">3.11</span>.<span style="color: rgba(128, 0, 128, 1)">4</span><span style="color: rgba(0, 0, 0, 1)">
#
# pip3 --<span style="color: rgba(0, 0, 0, 1)">version
pip </span><span style="color: rgba(128, 0, 128, 1)">23.1</span>.<span style="color: rgba(128, 0, 128, 1)">2</span> from /usr/local/python-<span style="color: rgba(128, 0, 128, 1)">3.11</span>.<span style="color: rgba(128, 0, 128, 1)">4</span>/lib/python3.<span style="color: rgba(128, 0, 128, 1)">11</span>/site-packages/pip (python <span style="color: rgba(128, 0, 128, 1)">3.11</span><span style="color: rgba(0, 0, 0, 1)">)
# </pre>
</div>
<p> </p>
<p id="u5ed55756" class="ne-p"><span class="ne-text">python3命令已经升级到最新的版本3.11.4了。</span></p>
<p id="u1122a595" class="ne-p"> </p>
<p id="u9d984719" class="ne-p"><span class="ne-text">升级成功。</span></p>
</div><br><br>
来源:https://www.cnblogs.com/chuanzhang053/p/17653635.html
頁:
[1]