目錄
第四章 安裝和管理軟件
4.1. 檢查和升級(jí)軟件包
4.1.1. 軟件包升級(jí)檢查
4.1.2. 升級(jí)軟件包
4.1.3. 利用系統(tǒng)光盤與 dnf 離線升級(jí)系統(tǒng)
4.2. 管理軟件包
4.2.1. 檢索軟件包
4.2.2. 安裝包列表
4.2.3. 顯示軟件包信息
4.2.4. 安裝軟件包
4.2.5. 下載軟件包
4.2.6. 刪除軟件包
4.3. 管理軟件包組
4.3.1. 軟件包組列表
4.3.2. 安裝軟件包組
4.3.3. 刪除軟件包組
4.4. 軟件包操作記錄管理
4.4.1. 查看操作
4.4.2. 審查操作
?4.4.3. 恢復(fù)與重復(fù)操作
第四章 安裝和管理軟件
????????dnf 是新一代的軟件包管理器,首先出現(xiàn)在 Fedora 18 這個(gè)發(fā)行版中。而在 Fedora 22 中,它取代了 yum,正式成為了 Fedora 22 的包管理器。
????????dnf 包管理器克服了 yum 包管理器的一些瓶頸,提升了包括用戶體驗(yàn)、內(nèi)存占用、依賴分析和運(yùn)行速度等多方面的內(nèi)容。dnf 使用 rpm、libsolv 和 hawkey 庫(kù)進(jìn)行包管理操作,可以同 yum 同時(shí)使用。
4.1. 檢查和升級(jí)軟件包
4.1.1. 軟件包升級(jí)檢查
查看系統(tǒng)里已經(jīng)安裝的軟件包有哪些可以升級(jí)可以執(zhí)行以下命令,以 X86
平臺(tái)示例如下:
示例說(shuō)明:
????????? PackageKit——軟件包名稱;
????????? x86_64——該軟件包支持的 CPU 架構(gòu);
????????? 33.19-31.p12.ky10——可升級(jí)的軟件包版本;
????????? ks10-adv-os——可升級(jí)的軟件包所存儲(chǔ)倉(cāng)庫(kù)。
4.1.2. 升級(jí)軟件包
????????dnf 支持一次升級(jí)單個(gè)/批量軟件包,并同時(shí)安裝/更新相應(yīng)的依賴包。
1. 升級(jí)單一軟件包命令:
#dnf update {package_name}
升級(jí) kernel 軟件包命令為例:
?上述輸出的說(shuō)明如下:
????????a) Package:用戶需要下載升級(jí)的軟件包和依賴軟件包。
????????b) Architecture:該軟件包所屬的架構(gòu)。
????????c) Version:軟件包升級(jí)后的版本。
????????d) Repository:可升級(jí)軟件包所屬倉(cāng)庫(kù)。
????????e) Size:軟件包大小。
????????f) dnf 默認(rèn)會(huì)顯示升級(jí)軟件包的基本信息,并提示是否確認(rèn)安裝,用戶可以在使用 dnf 命令時(shí)添加參數(shù)–y,效果等同于出現(xiàn) Is this ok [y/N]:時(shí)輸入 yes。
????????g) 安裝過(guò)程中如果出現(xiàn)錯(cuò)誤導(dǎo)致安裝過(guò)程終止,可以使用 dnf history 命令 查看詳細(xì)描述。
如果需要安裝一組軟件包,可以以 root 用戶執(zhí)行命令:
#dnf groupupdate group_name
2. 批量升級(jí)軟件包及其依賴
如果需要升級(jí)系統(tǒng)所有軟件包,可以使用以下命令:
#dnf update
4.1.3. 利用系統(tǒng)光盤與 dnf 離線升級(jí)系統(tǒng)
????????dnf 可與 yum 使用相同的配置文件,即配置 dnf 源可直接/etc/yum.repos.d/ 中的.repo 文件進(jìn)行編輯。當(dāng)系統(tǒng)處于離線狀態(tài)或者無(wú)法訪問(wèn)官方更新源時(shí),可以利用更新的系統(tǒng)光盤創(chuàng)建本地源并進(jìn)行升級(jí)。步驟如下:
1. 創(chuàng)建系統(tǒng)光盤掛載目錄,以 root 用戶執(zhí)行:
#mkdir {mount_dir}
2. 將系統(tǒng)安裝光盤掛載至該目錄,以 root 用戶執(zhí)行
#mount -o loop {iso_name} {mount_dir}
3. 將系統(tǒng)光盤中的 media.repo 文件從掛載目錄拷貝至/etc/yum.repos.d/目錄下:
#cp mount_dir/media.repo /etc/yum.repos.d/new.repo
4. 編輯/etc/yum.repos.d/new.repo 配置文件以添加光盤路徑:
#baseurl=file://mount_dir
5. 更新 dnf 源并進(jìn)行升級(jí),以 root 用戶執(zhí)行:
#dnf update
6. 升級(jí)成功后,卸載系統(tǒng)光盤掛載目錄:
#umount mount_dir 或者 rmdir mount_dir
如果不再使用這個(gè) dnf 源進(jìn)行安裝和升級(jí),可以以 root 用戶刪除文件:
#rm /etc/yum.repos.d/new.repo
4.2. 管理軟件包
????????dnf 提供了完整操作系統(tǒng)軟件包管理功能,包括檢索、查看信息、安裝和刪除。
4.2.1. 檢索軟件包
????????執(zhí)行 dnf search 命令可以檢索軟件包,例如檢索包含“mesh”字段的軟件包,以 X86 平臺(tái)示例如下:
#dnf search mesh
????????如果 dnf 檢測(cè)的結(jié)果繁多,可以通過(guò) shell 本身的 grep 或者正則表達(dá)式進(jìn)行過(guò)濾。
4.2.2. 安裝包列表
????????顯示已安裝和可安裝的軟件包列表可以執(zhí)行以下命令:
#dnf list all
????????顯示包括某些字符的已安裝和可安裝軟件包列表可以執(zhí)行以下命令:
#dnf list glob_expression…
????????顯示 abrt 相關(guān)軟件包列表的命令如下:
#dnf list abrt-addon\* abrt-plugin\*
????????顯示包括某些字符的已安裝軟件包列表可以執(zhí)行以下命令:
#dnf list installed glob_expression…
????????顯示包括 krb 的所有已安裝軟件包示例如下:
#dnf list installed "krb?-*"
????????顯示包括某些字符的可安裝軟件包列表可以執(zhí)行以下命令:
#dnf list available glob_expression…
????????顯示所有可用的 gstreamer plug-ins 軟件包列表:
#dnf list available gstreamer\*plugin\*
????????查看軟件倉(cāng)庫(kù)
????????成功注冊(cè)后,可使用 dnf 來(lái)管理軟件包。
????????查看可用的軟件倉(cāng)庫(kù)可以使用以下命令:
#dnf repolist
????????如果想顯示更多信息可以加上-v 選項(xiàng),或者用 dnf repoinfo 命令輸出信息。
#dnf repolist -v
#dnf repoinfo
????????如果需要顯示所有可用和不可用的軟件倉(cāng)庫(kù),可以使用以下命令:
#dnf repolist all
4.2.3. 顯示軟件包信息
????????顯示一個(gè)或多個(gè)軟件包可以使用以下命令:
#dnf info package_name…
????????顯示軟件包 abrt 詳細(xì)信息的命令:
#dnf info abrt
????????顯示軟件包 yum 詳細(xì)信息的命令:
#dnf info yum
4.2.4. 安裝軟件包
????????用戶可以以 root 用戶使用以下命令安裝軟件包
#dnf install package_name
????????安裝 sqlite 的 i686 架構(gòu)的軟件包示例:
#dnf install sqlite.i686
????????除了安裝軟件包,還可以安裝具體的二進(jìn)制文件,您可以輸入文件地址,以root 用戶執(zhí)行安裝:
#dnf install /usr/sbin/named
????????安裝命令如下:
#dnf install httpd
????????如果要安裝本地軟件包,可以執(zhí)行:
#dnf localinstall path
4.2.5. 下載軟件包
????????在執(zhí)行安裝流程中,顯示以下選項(xiàng)是:
. . .
Total size: 1. 2 M
Is this ok [y/N]:
. . .
????????輸入 y,可以執(zhí)行軟件包下載。
4.2.6. 刪除軟件包
????????刪除軟件包可以執(zhí)行以下命令:
dnf remove package_name…
????????刪除 totem 軟件包示例:
dnf remove totem
4.3. 管理軟件包組
????????軟件包組可以搜集一系列特定功能軟件包,比如系統(tǒng)工具和視頻軟件包組。 安裝軟件包組可以一起安裝其依賴。
4.3.1. 軟件包組列表
????????Summary 選項(xiàng)可以顯示軟件包可用組的數(shù)量:
dnf groups summary
????????以下為輸出示例:
#dnf groups summary
????????可用組: 8
????????顯示某個(gè)軟件包組的全部信息可以用以下命令:
#dnf groups info glob_expression…
????????以下為 Server 組輸出示例:
#dnf groups info Server
4.3.2. 安裝軟件包組
????????每個(gè)軟件包組都有自己的組 ID,要顯示包組 id 可以使用以下命令:
#dnf group list ids
????????查找開發(fā)軟件包組列表的示例:
#dnf groups list ids deve\*
????????軟件包組的安裝可以通過(guò)軟件包組名稱安裝,也可通過(guò)包組 id 安裝。
#dnf group install "group name"
#dnf group install groupid
????????也可用通過(guò)以下兩種命令安裝:
#dnf install @group
#dnf install @^group
????????下面是 4 種安裝開發(fā)工具軟件分組的示例:
#dnf group install "Development Tools"
#dnf group install development
#dnf install @"Development Tools"
#dnf install @development
4.3.3. 刪除軟件包組
可以通過(guò)軟件包組名或者軟件包組 id 刪除軟件包。以 root 權(quán)限執(zhí)行:
#dnf group remove group_name
#dnf group remove groupid
如果軟件分組有@標(biāo)簽,也可用以下命令刪除。以 root 身份執(zhí)行:
#dnf remove @group
#dnf remove @^group
刪除 KDE 桌面軟件分組示例:
#dnf group remove "Development Tools"
#dnf group remove development
#dnf remove @"Development Tools"
#dnf remove @development
4.4. 軟件包操作記錄管理
????????dnf 可以使用 dnf history 命令進(jìn)行管理操作。
4.4.1. 查看操作
????????顯示以往 20 條 dnf 操作記錄,可以使用以下命令。以 root 權(quán)限執(zhí)行:
#dnf history list 1..20
?如果想顯示某一部分 dnf 操作記錄,可以使用以下命令。以 root 權(quán)限執(zhí)行:
????????#dnf history list start_id. . end_id
顯示過(guò)去 5 條 dnf 信息示例如下:
????????#dnf history list 1..5
?????????以上 dnf history list 輸出顯示內(nèi)容說(shuō)明如下:
????????ID——識(shí)別特定記錄的標(biāo)示數(shù);
????????Command line——簡(jiǎn)要描述操作內(nèi)容;
????????Date and time——該條記錄的日期和時(shí)間;
????????Action(s)——描述操作類型;
????????Altered——記錄操作影響的條目數(shù)。
下表是 Action 的不同說(shuō)明:
4.4.2. 審查操作
????????需要顯示某條操作記錄的具體綜述信息,可以執(zhí)行以下命令:
#dnf history {id}
????????其中 id 是操作的 id。
????????如果需要顯示某條操作記錄的詳細(xì)信息,可以使用以下命令:
#dnf history info {id}
????????如果需要顯示某一階段操作記錄的詳細(xì)信息,可以使用以下命令:
#dnf history info start_id. . end_id
????????示例如下:
#dnf history info 4 . . 5
?4.4.3. 恢復(fù)與重復(fù)操作
????????如果想要撤銷某個(gè) dnf 操作,可以以 root 權(quán)限執(zhí)行以下操作:
#dnf history undo {id}
????????如果需要重復(fù)某個(gè) dnf 操作,可以以 root 權(quán)限執(zhí)行以下操作: 文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-778046.html
#dnf history redo {id}文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-778046.html
到了這里,關(guān)于銀河麒麟高級(jí)服務(wù)器操作系統(tǒng)V10-系統(tǒng)管理員手冊(cè):04 安裝和管理軟件的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!