Linux軟體包安裝和解除安裝
一、rpm工具
rpm,全稱是red hat package manager, 是Red Hat公司提出了軟體安裝管理程式。rpm 包是預先在linux系統上編譯打包的檔案,就在我們之前的安裝centos7 的CD光牒鏡像裡。
1.1 加載CD光牒

将光驅挂載到 /mnt 目錄
[[email protected] ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 寫保護,将以隻讀方式挂載
[[email protected] ~]# df -h
檔案系統 容量 已用 可用 已用% 挂載點
/dev/sda3 27G 1.7G 25G 7% /
devtmpfs 907M 0 907M 0% /dev
tmpfs 916M 0 916M 0% /dev/shm
tmpfs 916M 8.6M 908M 1% /run
tmpfs 916M 0 916M 0% /sys/fs/cgroup
/dev/sda1 197M 113M 84M 58% /boot
tmpfs 184M 0 184M 0% /run/user/0
/dev/sr0 4.3G 4.3G 0 100% /mnt
檢視rpm包
[[email protected] ~]# cd /mnt/
[[email protected] mnt]# ls
CentOS_BuildTag EULA images LiveOS repodata RPM-GPG-KEY-CentOS-Testing-7
EFI GPL isolinux Packages RPM-GPG-KEY-CentOS-7 TRANS.TBL
[[email protected] mnt]# cd Packages/
[[email protected] Packages]# ls
此時我們看到字尾名為 “.rpm”的包,顔色都為紅色;
1.2 rpm命名格式
rpm包有主包和支包(主包的子包)之分,支包作為主包的功能性補充。
1.2.1. 其中rpm主包的命名格式為:name-VERSION-release.arch.rpm。各個部分解釋如下:
- name:程式名
- VERSION:版本 VERSION由三部分組成:
- major:程式的主版本号;
- minor:程式的次版本号 ;
- release:程式的修訂号;
- release[.os].arch:代表rpm包的發行号
- release[.os]:rpm版本+作業系統
- arch:archetecture,支援的硬體架構。
1.2.2. 對于支包來說,其命名格式為:
- name-function-VERSION-release.arch.rpm
- 常見的function有:devel, utils(工具程式), libs, ...
1.3 rpm包工具用法
常見參數 | 用法 |
---|---|
-i | 安裝 |
-v | 可視化 |
-h | 顯示安裝進度 |
-U | 更新rpm包 |
-e | 解除安裝一個包 |
-q | 查詢一個包是否已經安裝 |
-qi | 查詢指定包資訊 |
-ql | 查詢指定包資訊 |
-qf | 查詢檔案絕對路徑 |
–force | 特殊用法,強制安裝,即使覆寫其他包也會安裝 |
–nodeps | 即使依賴包沒有安裝,也要強制安裝 |
安裝rpm封包件 -ivh
- 安裝檢測:--test 用來檢查依賴關系,并不是真正的安裝;
[[email protected] Packages]# rpm -ivh --test zlib-devel-1.2.7-17.el7.x86_64.rpm
準備中... ################################# [100%]
- 安裝:rpm -ivh [rpm包名稱]
[[email protected] Packages]# rpm -ivh zlib-devel-1.2.7-17.el7.x86_64.rpm
準備中... ################################# [100%]
正在更新/安裝...
1:zlib-devel-1.2.7-17.el7 ################################# [100%]
- 為軟體包指定安裝目錄: rpm -ivh --relocate [rpm包名稱]
[[email protected] Packages]# rpm -ivh --relocate /=/root/NBA/zlib-devel/ zlib-devel-1.2.7-17.el7.x86_64.rpm
準備中... ################################# [100%]
軟體包 zlib-devel-1.2.7-17.el7.x86_64 已經安裝
path / in package zlib-devel-1.2.7-17.el7.x86_64 is not relocatable //不可重新定位
注:通常情況下,centos執行檔案都放在 /bin 或者 /sbin目錄下,指定目錄可能會導緻找不到指令,解決方法:在 /bin 或者 /sbin 目錄下建立一個軟連結檔案,然後設定軟連結:ln -s [源檔案] [目标檔案]
- 更新RPM包 : rpm -Uvh [rpm包名稱]
[[email protected] Packages]# rpm -Uvh zlib-devel-1.2.7-17.el7.x86_64.rpm
準備中... ################################# [100%]
軟體包 zlib-devel-1.2.7-17.el7.x86_64 已經安裝
- 由新版本降級為舊版本: rpm -Uvh --oldpackage [rpm包名稱]
[[email protected] Packages]# rpm -Uvh --oldpackage zlib-devel-1.2.7-17.el7.x86_64.rpm
準備中... ################################# [100%]
軟體包 zlib-devel-1.2.7-17.el7.x86_64 已經安裝
- rpm 包解除安裝:rpm -e [軟體包名];** 注意**:這裡的 軟體包名是不包括平台資訊和字尾名的;隻是包的name;
[[email protected] Packages]# rpm -e zlib-devel
rpm 包的查詢: rpm [參數] [rpm包名]
分以下幾種用法:
- 查詢系統已安裝的軟體: rpm -q [軟體名]
[[email protected] Packages]# rpm -q zlib-devel
zlib-devel-1.2.7-17.el7.x86_64
- 檢視系統中所有已經安裝的包:rpm -qa [軟體名]
[[email protected] Packages]# rpm -qa
- 查詢已安裝的檔案屬于哪個軟體包:rpm -qf [檔案名]
[[email protected] Packages]# rpm -qf /usr/bin/zip //注:此處的檔案需要使用絕對路徑
zip-3.0-11.el7.x86_64
此處如果不用絕對路徑,那麼就要用:rpm -qf which [程式名] 注意:這裡不是引号,而是`,就是鍵盤左上角的那個鍵。
[[email protected] ~]# rpm -qf `which zip`
zip-3.0-11.el7.x86_64
- 查詢已安裝軟體包資訊:rpm -qi [軟體名]
[[email protected] Packages]# rpm -qi zip
Name : zip
Version : 3.0
Release : 11.el7
Architecture: x86_64
Install Date: 2018年05月26日 星期六 15時35分55秒
Group : Applications/Archiving
Size : 815173
License : BSD
Signature : RSA/SHA256, 2016年11月21日 星期一 05時04分58秒, Key ID 24c6a8a7f4a80eb5
Source RPM : zip-3.0-11.el7.src.rpm
Build Date : 2016年11月06日 星期日 00時49分55秒
Build Host : worker1.bsys.centos.org
Relocations : (not relocatable)
Packager : CentOS BuildSystem <http://bugs.centos.org>
Vendor : CentOS
URL : http://www.info-zip.org/Zip.html
Summary : A file compression and packaging utility compatible with PKZIP
Description :
The zip program is a compression and file packaging utility. Zip is
analogous to a combination of the UNIX tar and compress commands and
is compatible with PKZIP (a compression and file packaging utility for
MS-DOS systems).
Install the zip package if you need to compress files using the zip
program.
- 查詢已安裝軟體位置:rpm -ql [軟體名]
[[email protected] Packages]# rpm -ql zip
/usr/bin/zip
/usr/bin/zipcloak
/usr/bin/zipnote
/usr/bin/zipsplit
/usr/share/doc/zip-3.0
/usr/share/doc/zip-3.0/CHANGES
/usr/share/doc/zip-3.0/LICENSE
/usr/share/doc/zip-3.0/README
/usr/share/doc/zip-3.0/README.CR
/usr/share/doc/zip-3.0/TODO
/usr/share/doc/zip-3.0/WHATSNEW
/usr/share/doc/zip-3.0/WHERE
/usr/share/doc/zip-3.0/algorith.txt
/usr/share/man/man1/zip.1.gz
/usr/share/man/man1/zipcloak.1.gz
/usr/share/man/man1/zipnote.1.gz
/usr/share/man/man1/zipsplit.1.gz
- 檢視已安裝軟體所依賴的軟體包: rpm -qR [軟體名] 或者rpm -qpR [rpm包]
[[email protected] Packages]# rpm -qR zlib-devel
/usr/bin/pkg-config
libz.so.1()(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
zlib = 1.2.7-17.el7
rpmlib(PayloadIsXz) <= 5.2-1
二、yum工具
yum( Yellow dog Updater, Modified)是一個在Fedora和RedHat以及SUSE中的Shell前端軟體包管理器。 基於RPM包管理,能夠從指定的伺服器自動下載下傳RPM包并且安裝,可以自動處理依賴性關系,并且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載下傳、安裝。 yum提供了查找、安裝、删除某一個、一組甚至全部軟體包的指令,而且指令簡潔而又好記。
- 列出可用rpm包:yum list
[[email protected] Packages]# yum list |head -10 ; yum list |tail -3
已加載插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.cn99.com
* extras: ftp.sjtu.edu.cn
* updates: mirrors.cn99.com
已安裝的軟體包
GeoIP.x86_64 1.5.0-11.el7 @anaconda
NetworkManager.x86_64 1:1.8.0-9.el7 @anaconda
NetworkManager-libnm.x86_64 1:1.8.0-9.el7 @anaconda
NetworkManager-team.x86_64 1:1.8.0-9.el7 @anaconda
由于管道被破壞而退出
zziplib-devel.i686 0.13.62-5.el7 base
zziplib-devel.x86_64 0.13.62-5.el7 base
zziplib-utils.x86_64 0.13.62-5.el7 base
上述資訊中,mirrors.cn99.com,ftp.sjtu.edu.cn是擷取包資源的下載下傳路徑;清單有3列,第一列是RPM包名,中間是版本資訊,最右側是安裝資訊(倉庫名)。@anaconda 是已安裝的包; base 是未安裝的包;
- 找到這些存放rpm包的倉庫資訊:ls /etc/yum.repos.d/
[[email protected] Packages]# ls /etc/yum.repos.d/
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo
[[email protected] Packages]# ls /etc/yum.repos.d/CentOS-Base.repo
/etc/yum.repos.d/CentOS-Base.repo
[[email protected] Packages]# cat /etc/yum.repos.d/CentOS-Base.repo
以下為執行結果節選;
[base] //倉庫名
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#released updates
[updates] //倉庫名
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#additional packages that may be useful
[extras] //倉庫名
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
- 搜尋RPM包:yum search vim
[[email protected] Packages]# yum search vim
- 用grep過濾,找到相應的RPM包,|是管道符,傳遞結果給下一個指令.
[[email protected] Packages]# yum list |grep 'vim'
vim-common.x86_64 2:7.4.160-4.el7 @base
vim-enhanced.x86_64 2:7.4.160-4.el7 @base
vim-filesystem.x86_64 2:7.4.160-4.el7 @base
vim-minimal.x86_64 2:7.4.160-2.el7 @anaconda
protobuf-vim.x86_64 2.5.0-8.el7 base
vim-X11.x86_64 2:7.4.160-4.el7 base
vim-minimal.x86_64 2:7.4.160-4.el7 base
- 有些指令不知道安裝包在哪,通過以下指令:yum provides “/*/vim” 不指定具體路徑(通配)來查找,然後安裝
[[email protected] Packages]# yum provides “/*/vim”
- 安裝:yum install -y [rpm 名]
[[email protected] Packages]# yum install -y vim-X11.x86_64
- 更新 rpm 包:yum update [-y] [rpm 名]
[[email protected] Packages]# yum update -y vim-X11.x86_64
- 解除安裝:yum remove [rpm 名]
[[email protected] Packages]# yum remove vim-X11.x86_64
注:解除安裝跟安裝類似,解除安裝也可以加上-y參數,省略互動環節;不過穩妥起見,還是不加-y比較好。
安裝軟體也可以一組一組安裝,yum還支援一堆一堆的安裝,就是按照功能把軟體分組,一次安裝一組軟體。
- 先查詢組:yum grouplist
[[email protected] Packages]# yum grouplist
已加載插件:fastestmirror
沒有安裝組資訊檔案
Maybe run: yum groups mark convert (see man yum)
Loading mirror speeds from cached hostfile
* base: mirrors.cn99.com
* extras: ftp.sjtu.edu.cn
* updates: mirrors.cn99.com
可用的環境分組:
最小安裝 //安置系統的時候,我們就隻選了這個組
基礎設施伺服器
計算節點
檔案及列印伺服器
基本網頁伺服器
虛拟化主機
帶 GUI 的伺服器
GNOME 桌面
KDE Plasma Workspaces
開發及生成工作站
可用組:
傳統 UNIX 相容性
相容性程式庫
圖形管理工具
安全性工具
開發工具 //Development Tools 注意:下面我要安裝
控制台網際網路工具
智能卡支援
科學記數法支援
系統管理
系統管理工具
完成
- yum groupinstall [組名] 安裝,注意此處的組名要用單引号括起來,由于我們是中文版的,寫組名的時候,要寫英文;
[[email protected] Packages]# yum groupinstall 'Development Tools' //安裝"開發工具"組
2.2 yum搭建本地倉庫
相較于rpm,使用yum安裝要友善很多,但是當系統無法聯網,就不能使用yum安裝軟體了。這裡的變通的方法,是搭建本地倉庫。
- 首先,挂在光驅鏡像 //前面已做過
[[email protected] ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 寫保護,将以隻讀方式挂載
[[email protected] ~]# df -h
檔案系統 容量 已用 可用 已用% 挂載點
/dev/sda3 27G 1.7G 25G 7% /
devtmpfs 907M 0 907M 0% /dev
tmpfs 916M 0 916M 0% /dev/shm
tmpfs 916M 8.6M 908M 1% /run
tmpfs 916M 0 916M 0% /sys/fs/cgroup
/dev/sda1 197M 113M 84M 58% /boot
tmpfs 184M 0 184M 0% /run/user/0
/dev/sr0 4.3G 4.3G 0 100% /mnt
- 接着,備份一個檔案 友善恢複
[[email protected] ~]# cp -r /etc/yum.repos.d/ /etc/yum.repos.d.bak
- 然後:删除 /etc/yum.repos.d 目錄下所有repos檔案
[[email protected] ~]# cd /etc/yum.repos.d/
[[email protected] yum.repos.d]# ls
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo
[[email protected] yum.repos.d]# rm -rf ./*
- 再,建立dvd.repo
[[email protected] yum.repos.d]# vim /etc/yum.repos.d/dvd.repo
[dvd]
name=install dvd
baseurl=file:///mnt
enabled=1
gpgcheck=0
- 重新整理repos生成緩存
- yum clean all //先清楚之前到緩存
- yum makecache //生成緩存
- yum list //保險起見,可以檢視一下,清單中最後一列辨別為dvd的都是本地repos
2.3 yum更換國内源
- 删除自己建立的DVD本地yum庫,恢複之前的備份;
[[email protected] ~]# cd /etc/yum.repos.d
[[email protected] yum.repos.d]# ls
dvd.repo
[[email protected] yum.repos.d]# rm -f dvd.repo
[[email protected] yum.repos.d]# cp /etc/yum.repos.d.bak/* /etc/yum.repos.d //cp拷貝的檔案下所有的配置檔案,到本目錄下。
- 更換yum源,把源碼包删除掉
[[email protected] yum.repos.d]# ls
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo
[[email protected] yum.repos.d]# rm -f CentOS-Base.repo
- 下載下傳一個國内源碼包
[[email protected] yum.repos.d]# wget http://mirrors.163.com/.help/CentOS7-Base-163.repo //由于源碼包被删除,wget用不了
-bash: wget: 未找到指令
[[email protected] yum.repos.d]# curl -O http://mirrors.163.com/.help/CentOS7-Base-163.repo //利用 curl -O 指令
[email protected] yum.repos.d]# ls
CentOS7-Base-163.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo
[[email protected] yum.repos.d]# yum install -y vim-minimal.x86_64
- 最後還需要 清除緩存
[[email protected] yum.repos.d]# yum clean all
這一步是必須要執行的,這樣可以生成緩存,友善下次使用
[[email protected] yum.repos.d]# yum list
2.3 安裝擴充源
隻安裝一個CentOS7-Base-163.repo基礎源是不夠用的,有時候安裝RPM包的時候沒有一些擴充的東西。
- 安裝擴充源epel
[[email protected] yum.repos.d]# yum install -y epel-release
- 重新整理
[[email protected] yum.repos.d]# yum list
- 檢視到的檔案太多,可以用grep過濾
[[email protected] yum.repos.d]# yum list |grep epel
- 安裝一個rpm包:yum install -y [包名]
[[email protected] yum.repos.d]# yum install -y zsh --downloadonly
- 檢視rpm預設下載下傳路徑:ls /var/cache/yum/x86_64/7/updates/
[[email protected] yum.repos.d]# ls /var/cache/yum/x86_64/7/updates/
cachecookie mirrorlist.txt
d94a7500ce5b2da5a87ec4a88472b7d4668293b0aea3704dbbe23ef9819dbef0-primary.sqlite.bz2 packages
gen repomd.xml
- 如果指定下載下傳的rpm路徑
[[email protected] yum.repos.d]# yum install -y znc --downloadonly --downloaddir=/tmp/
已加載插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.zju.edu.cn
* epel: mirror01.idc.hinet.net
* extras: mirrors.zju.edu.cn
* updates: mirrors.aliyun.com
正在解決依賴關系
--> 正在檢查事務
---> 軟體包 znc.x86_64.0.1.6.6-1.el7 将被 安裝
- 打開/tmp/目錄,發現znc-1.6.6-1.el7.x86_64.rpm 已經被安裝到此目錄下;
[[email protected] yum.repos.d]# ls /tmp/
newdisk
passwd
systemd-private-b921614b1c7747c08af71e52c079206b-chronyd.service-HTv3N4
systemd-private-b921614b1c7747c08af71e52c079206b-vgauthd.service-BuqRTr
systemd-private-b921614b1c7747c08af71e52c079206b-vmtoolsd.service-RKxskg
yum_save_tx.2018-05-30.10-10.RuvKi7.yumtx
yum_save_tx.2018-05-30.10-28.pmEM9D.yumtx
znc-1.6.6-1.el7.x86_64.rpm
[[email protected] yum.repos.d]#
三、源碼包安裝
安裝源碼包通常需要以下3個步驟:
- ./configyre。這一步可以定制功能,加上相應的選項即可; 具體有什麼選項可以通過指令 ./configure --help檢視。 這一步會自動檢測你的Linux系統于相關的套件是否有編譯該源碼包時所需要的庫, 因為一但缺少某個庫,就能完成編譯。
- make。使用這個指令,會進行預設參數編譯。
- make install,用于安裝,用于建立相關軟體的存放目錄和配置檔案
注意:采用源碼包安裝的方式,需要用編譯器進行。linux下的c語言編譯器是gcc,centos下運作 yum install -y gcc 進行安裝。
[[email protected] httpd-2.4.33]# yum install -y gcc
- 統一的源碼包位址 /usr/local/src ;定義到其目錄下;
[[email protected] yum.repos.d]# cd
[[email protected] ~]# cd /usr/local/src
- 先下載下傳一個apache的包;
[[email protected] src]# wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.33.tar.gz
--2018-05-29 10:53:55-- http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.33.tar.gz
正在解析主機 mirrors.cnnic.cn (mirrors.cnnic.cn)... 101.6.8.193, 2402:f000:1:408:8100::1
正在連接配接 mirrors.cnnic.cn (mirrors.cnnic.cn)|101.6.8.193|:80... 已連接配接。
已發出 HTTP 請求,正在等待回應... 200 OK
長度:9076901 (8.7M) [application/octet-stream]
正在儲存至: “httpd-2.4.33.tar.gz”
100%[===========================================================>] 9,076,901 638KB/s 用時 14s
2018-05-29 10:54:09 (656 KB/s) - 已儲存 “httpd-2.4.33.tar.gz” [9076901/9076901])
- 解壓這個包: tar-zxvf httpd-2.4.33.tar.gz
[[email protected] src]# ls
httpd-2.4.33.tar.gz mysql-5.5.55.tar.gz
[[email protected] src]# tar -zxvf httpd-2.4.33.tar.gz
- 用ls指令檢視解壓後的檔案;
[[email protected] src]# ls
httpd-2.4.33 httpd-2.4.33.tar.gz
[[email protected] src]# ls httpd-2.4.33
ABOUT_APACHE BuildBin.dsp emacs-style LAYOUT NOTICE srclib
acinclude.m4 buildconf httpd.dep libhttpd.dep NWGNUmakefile support
Apache-apr2.dsw CHANGES httpd.dsp libhttpd.dsp os test
Apache.dsw CMakeLists.txt httpd.mak libhttpd.mak README VERSIONING
apache_probes.d config.layout httpd.spec LICENSE README.cmake
ap.d configure include Makefile.in README.platforms
build configure.in INSTALL Makefile.win ROADMAP
BuildAll.dsp docs InstallBin.dsp modules server
./configuer --prefix=/usr/local/apache2,prefix指定安裝路徑,apache2表示版本
[[email protected] src]# cd httpd-2.4.33
[[email protected] httpd-2.4.33]# ./configure --prefix=/usr/local/apache2
checking for chosen layout... Apache
checking for working mkdir -p... yes
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking target system type... x86_64-pc-linux-gnu
configure:
configure: Configuring Apache Portable Runtime library...
configure:
checking for APR... no
configure: error: APR not found. Please read the documentation. //有問題
- 用指令檢測 echo $? 如果生成為非0,那麼久是有問題;
[[email protected] httpd-2.4.33]# echo $?
1
幫助指令:./configure --help
[[email protected] httpd-2.4.33]# ./configure --help
`configure' configures this package to adapt to many kinds of systems.
Usage: ./configure [OPTION]... [VAR=VALUE]...
To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE. See below for descriptions of some of the useful variables.
Defaults for the options are specified in brackets.
Configuration:
-h, --help display this help and exit
--help=short display options specific to this package
--help=recursive display the short help of all the included packages
-V, --version display version information and exit
-q, --quiet, --silent do not print `checking ...' messages
--cache-file=FILE cache test results in FILE [disabled]
-C, --config-cache alias for `--cache-file=config.cache'
-n, --no-create do not create output files
--srcdir=DIR find the sources in DIR [configure dir or `..']
//篇幅原因,下面省略
- 再用echo $? 檢測上條指令;
[[email protected] httpd-2.4.33]# echo $?
0
由于源碼包網址有問題,試驗先暫停,查詢下資料,再續上;
版權聲明:本文為CSDN部落客「weixin_34101784」的原創文章,遵循CC 4.0 BY-SA版權協定,轉載請附上原文出處連結及本聲明。
原文連結:https://blog.csdn.net/weixin_34101784/article/details/92416458