linux系統rpm包管理及yum命令
阿新 • • 發佈:2020-07-12
mount : 掛載 # 1.將光碟(ISO)插入光碟機中 # 2.建立掛載目錄 [root@www ~]# mkdir /guangqu # 3.將光碟機掛載在/guangqu目錄 [root@www ~]# mount /dev/cdrom /guangqu mount: /dev/sr0 is write-protected, mounting read-only # 4.檢視掛載情況 [root@www ~]# df -h /dev/sr0 4.3G 4.3G 0 100% /guangqu # 5.檢視掛載的目錄中所有檔案 [root@www guangqu]# ll -a total 689 drwxrwxr-x. 8 root root 2048 Nov 26 2018 . dr-xr-xr-x. 18 root root 239 Apr 16 10:56 .. -rw-rw-r--. 1 root root 14 Nov 26 2018 CentOS_BuildTag -rw-r--r--. 1 root root 29 Nov 26 2018 .discinfo drwxr-xr-x. 3 root root 2048 Nov 26 2018 EFI -rw-rw-r--. 1 root root 227 Aug 30 2017 EULA -rw-rw-r--. 1 root root 18009 Dec 10 2015 GPL drwxr-xr-x. 3 root root 2048 Nov 26 2018 images drwxr-xr-x. 2 root root 2048 Nov 26 2018 isolinux drwxr-xr-x. 2 root root 2048 Nov 26 2018 LiveOS drwxrwxr-x. 2 root root 663552 Nov 26 2018 Packages drwxrwxr-x. 2 root root 4096 Nov 26 2018 repodata -rw-rw-r--. 1 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-7 -rw-rw-r--. 1 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-Testing-7 -r--r--r--. 1 root root 2883 Nov 26 2018 TRANS.TBL -rw-r--r--. 1 root root 354 Nov 26 2018 .treeinfo
RPM:RPM Packages Manager
tree-1.5.3-3.el6.x86_64.rpm
包名:tree
版本:1.5.3
釋出次數:3
系統:C6
架構:64位
字尾:rpm
yelp-tools-3.28.0-1.el7.noarch.rpm
包名:yelp-tools
版本號:3.28.0
釋出次數:1
系統:CentOS7
架構:noarch(32位和64位都相容)
分類 | 安裝 | 版本 |
---|---|---|
rpm包 | 預先編譯打包,安裝簡單 | 軟體版本偏低 |
原始碼包 | 手動編譯打包,安裝繁瑣 | 軟體版本隨意 |
二進位制包 | 解壓即可使用, 安裝簡單 | 不能修改原始碼 |
RPM包的獲取途徑
RPM管理命令
## rpm 安裝相關命令
-i: install 安裝
-v:顯示詳細過程
-h:顯示安裝進度
--test:安裝之前做測試
--force:強制安裝
--nodeps:忽略依賴包
## rpm 查詢相關命令 -q:查詢指定的包(必須接包名) -qa:all 列出當前系統安裝的所有rpm包,配合grep使用 -qc:conf 專門查詢安裝的服務的相關配置檔案 -ql:list 列出指定安裝包的相關目錄 -qf:查詢,該命令屬於哪個包或者任意檔案屬於哪個RPM包
Linux9期基礎-day23
課前回顧
xalan-j2-2.7.1-23.el7.noarch.rpm
包名:xalan-j2
版本號:2.7.1
釋出次數:23
系統:el7
架構:相容32位和64位
字尾:rpm
## 如何獲取rpm包
# 1.掛載光碟機,從映象中獲取
# 2.從rpm映象倉庫中
- 阿里映象站
- 華為源
- 清華源
。。。
# 3.需要安裝的軟體官網
## rpm命令
-i:安裝
-v:顯示安裝資訊
-h:顯示安裝進度
--test:安裝前測試
--force:強制安裝
--nodeps:忽略依賴關係
-q:檢視指定的軟體是否安裝
-qa:檢視系統中已安裝的rpm包
-ql:檢視指定軟體包所安裝的所有檔案 包括目錄
-qc:檢視指定軟體包的配置檔案
-qf:檢視一個檔案或者一個目錄屬於哪個RPM
-q --scripts:查詢rpm安裝前和安裝後執行的指令碼
-qi:檢視指定rpm軟體的詳細資訊
-qd:檢視指定軟體包的man幫助
-qip:檢視未安裝的rpm詳細資訊
[root@localhost Packages]# rpm -qip zip-3.0-11.el7.x86_64.rpm
-qlp:檢視未安裝的rpm會產生的目錄
[root@localhost Packages]# rpm -qlp zip-3.0-11.el7.x86_64.rpm
nginx-1.16.1
## rpm 升級命令
-U:如果老版本存在,就升級,如果不存在就安裝
-f:升級,但是老版本必須存在
[root@localhost zabbix]# rpm -Uvh zabbix-agent-3.4.9-1.el7.x86_64.rpm
warning: zabbix-agent-3.4.9-1.el7.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:zabbix-agent-3.4.9-1.el7 ################################# [ 50%]
Cleaning up / removing...
2:zabbix-agent-3.0.0-1.el7 ################################# [100%]
[root@localhost zabbix]# rpm -qa|grep zabbix
zabbix-agent-3.4.9-1.el7.x86_64
-e:解除安裝
curl -s https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/ |grep rpm |awk -F '"' '{print"wget https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/", $2}'|bash
YUM安裝
1.必須有網路,通過網路獲取軟體
2.管理RPM包
3.自動解決依賴
4.命令簡單 好記
5.生產最佳實踐
YUM實踐命令
# 只能列出在/etc/yum.repos.d/目錄下以repo結尾的檔案中enable=1的倉庫中所有可安裝的rpm包
yum list
# 檢視安裝包的詳細資訊,類似於rpm -qi
yum info
[root@localhost yum.repos.d]# yum info nginx
## yum 安裝命令
# 安裝任何源的rpm包:倉庫中的,指定url中,本地
yum install
[root@localhost ~]# yum install -y nginx
[root@localhost yum.repos.d]# yum install -y http://test.driverzeng.com/MySQL_plugins/Atlas-2.2.1.el6.x86_64.rpm
# 安裝在本地的rpm包,並且解決依賴
yum localinstall
## yum 誤刪除配置檔案,重灌服務
yum reinstall
install reinstall remove localinstall
-y:(yes)安裝
## 解除安裝軟體
yum remove
[root@zls ~]# yum erase samba -y
[root@zls ~]# yum remove samba -y
## yum更新
# 哪些軟體需要升級
yum check-update
# 更新指定軟體
yum update hostname -y
# 全部更新(十分危險)
yum update -y
## yum倉庫相關指令
#列出yum源可用的軟體倉庫
[root@zls ~]# yum repolist
#列出全部yum源可用和禁用的倉庫
[root@zls ~]# yum repolist all
[root@localhost yum.repos.d]# yum-config-manager --enable zls_zabbix
# 如果不知道命令輸入那個包,使用provides
[root@localhost ~]# yum provides */ifconfig
# 換源:先清除快取
yum clean all
# 換源:再更新快取(生成新的快取)
yum makecache
#列出已經安裝和所有可使用的軟體組
[root@zls ~]# yum groups list
#安裝一整個組的軟體
[root@zls ~]# yum groups install Development tools \
Compatibility libraries \
Base Debugging Tools
#yum刪除包組
[root@zls ~]# yum groups remove -y Base
## yum 歷史命令
[root@qls yum.repos.d]# yum history
Loaded plugins: fastestmirror
ID | Login user | Date and time | Action(s) | Altered
-------------------------------------------------------------------------------
9 | root <root> | 2020-04-14 20:48 | Install | 5 <
8 | root <root> | 2019-12-28 23:18 | Erase | 1 >E
7 | root <root> | 2019-11-26 22:36 | Install | 1
6 | root <root> | 2019-11-26 22:34 | Install | 1
5 | root <root> | 2019-11-26 22:33 | Install | 1
4 | root <root> | 2019-11-26 22:23 | I, U | 11
3 | root <root> | 2019-11-26 21:59 | Install | 62 <
2 | root <root> | 2019-11-26 21:49 | Install | 1 >E
1 | System <unset> | 2019-11-26 20:22 | Install | 308
[root@qls yum.repos.d]# yum history info 8
# 撤銷指定的安裝內容
[root@qls yum.repos.d]# yum history undo 8
製作nginx倉庫
目錄
下載nginx
[root@wzh yum.repos.d]# yum install -y nginx
編輯nginx配置檔案
[root@wzh yum.repos.d]# cd /etc/nginx/conf.d
進入conf.d目錄編輯yum.conf檔案
[root@wzh conf.d]# vim yum.conf
server {
listen 80;
server_name www.wzh.com;
location / {
root /wzh_repo;
autoindex on;
access_log off;
}
}
編輯完成儲存退出
刪除nginx預設配置檔案
[root@wzh conf.d]# rm -f /etc/nginx/conf.d/default.conf
啟動nginx
[root@wzh conf.d]# systemctl start nginx
檢視埠
[root@wzh conf.d]# ss -an |grep 21
nl UNCONN 0 0 9:5221 *
u_str LISTEN 0 128 /run/systemd/private 21058 * 0
u_dgr UNCONN 0 0 /run/systemd/shutdownd 21079 * 0
u_seq LISTEN 0 128 /run/udev/control 21117 * 0
u_dgr UNCONN 0 0 * 21338 * 8926
u_str ESTAB 0 0 * 21858 * 21859
u_dgr UNCONN 0 0 * 21866 * 8943
u_dgr UNCONN 0 0 * 21457 * 8943
u_str ESTAB 0 0 /run/systemd/journal/stdout 21859 * 21858
u_str ESTAB 0 0 * 32193 * 32194
u_dgr UNCONN 0 0 * 21953 * 21954
u_dgr UNCONN 0 0 * 21954 * 21953
u_str ESTAB 0 0 /run/systemd/journal/stdout 32194 * 32193
u_str ESTAB 0 0 * 36120 * 36121
u_str ESTAB 0 0 /run/systemd/journal/stdout 36121 * 36120
tcp LISTEN 0 32 :::21 :::*
建立倉庫
[root@wzh conf.d]# createrepo /wzh_repo/
Spawning worker 0 with 4310 pkgs
進入目錄檢視repodata
[root@wzh conf.d]# cd /wzh_repo/
[root@wzh wzh_repo]# ll
total 296
drwxr-xr-x 2 root root 221184 Apr 15 05:24 base
drwxr-xr-x 3 root root 22 Apr 16 05:29 centos
drwxr-xr-x 2 root root 6 Apr 15 05:21 nginx
drwxr-xr-x 2 root root 4096 Apr 16 09:19 repodata
drwxr-xr-x 2 root root 16384 Apr 15 05:28 zabbix
配置客戶端檔案
[root@web01 yum.repos.d]# vim wzh_aliyun.repo
[wzh_aliyun]
name=123
baseurl=http://10.0.0.200/wzh_repo/
gpgcheck=0
enabled=1
檢查yum倉庫
[root@web01 yum.repos.d]# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
repo id repo name status
wzh_repo 'zheshiwzhdecangku' 2,514
repolist: 2,514